Merge branch 'main' of http://gitea.dd3skj.com/c-hongqw1/zhgh_hhu
This commit is contained in:
@@ -1,164 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>io.v</groupId>
|
||||
<artifactId>mini</artifactId>
|
||||
<version>5.3.0</version>
|
||||
<description>java web development framework, base on budwk and nutz</description>
|
||||
<url>https://budwk.com</url>
|
||||
<developers>
|
||||
<developer>
|
||||
<id>wizzercn</id>
|
||||
<name>Wizzer</name>
|
||||
<email>wizzer@qq.com</email>
|
||||
<url>https://wizzer.cn</url>
|
||||
</developer>
|
||||
</developers>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.7.0</version>
|
||||
<configuration>
|
||||
<source>15</source>
|
||||
<target>15</target>
|
||||
<compilerArgs>--enable-preview</compilerArgs>
|
||||
<useIncrementalCompilation>false</useIncrementalCompilation>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
<version>3.0.1</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-javadocs</id>
|
||||
<goals>
|
||||
<goal>jar</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
<configuration>
|
||||
<encoding>UTF-8</encoding>
|
||||
<charset>UTF-8</charset>
|
||||
<docencoding>UTF-8</docencoding>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
<version>3.0.1</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>compile</phase>
|
||||
<goals>
|
||||
<goal>jar</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
<configuration>
|
||||
<attach>true</attach>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<version>2.22.0</version>
|
||||
<configuration>
|
||||
<skip>true</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.nutz.boot</groupId>
|
||||
<artifactId>nutzboot-maven-plugin</artifactId>
|
||||
<version>${nutzboot.version}</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<configuration>
|
||||
<source>15</source>
|
||||
<target>15</target>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>nutz</id>
|
||||
<url>https://jfrog.nutz.cn/artifactory/libs-release</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<releases>
|
||||
<enabled>false</enabled>
|
||||
</releases>
|
||||
<snapshots>
|
||||
<updatePolicy>always</updatePolicy>
|
||||
</snapshots>
|
||||
<id>nutz-snapshots</id>
|
||||
<url>https://jfrog.nutz.cn/artifactory/snapshots</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
<pluginRepositories>
|
||||
<pluginRepository>
|
||||
<releases>
|
||||
<enabled>false</enabled>
|
||||
</releases>
|
||||
<snapshots>
|
||||
<updatePolicy>always</updatePolicy>
|
||||
</snapshots>
|
||||
<id>nutz-snapshots</id>
|
||||
<url>https://jfrog.nutz.cn/artifactory/snapshots</url>
|
||||
</pluginRepository>
|
||||
</pluginRepositories>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.nutz</groupId>
|
||||
<artifactId>nutzboot-starter-test-junit4</artifactId>
|
||||
<version>2.4.2-SNAPSHOT</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>4.13.1</version>
|
||||
<scope>test</scope>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<artifactId>hamcrest-core</artifactId>
|
||||
<groupId>org.hamcrest</groupId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<dependencyManagement>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.nutz</groupId>
|
||||
<artifactId>nutzboot-parent</artifactId>
|
||||
<version>${nutzboot.version}</version>
|
||||
<type>pom</type>
|
||||
<scope>import</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.xml.bind</groupId>
|
||||
<artifactId>jaxb-api</artifactId>
|
||||
<version>${jaxb-api.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</dependencyManagement>
|
||||
<properties>
|
||||
<jsoup.veision>1.11.2</jsoup.veision>
|
||||
<mysql-connector-java.version>8.0.16</mysql-connector-java.version>
|
||||
<easy-captcha.version>1.6.2</easy-captcha.version>
|
||||
<emoji-java.veision>4.0.0</emoji-java.veision>
|
||||
<jaxb-api.version>2.3.1</jaxb-api.version>
|
||||
<lombok.version>1.18.12</lombok.version>
|
||||
<slf4j.version>1.7.30</slf4j.version>
|
||||
<poi.version>4.1.2</poi.version>
|
||||
<v.version>1.0.1</v.version>
|
||||
<commons-lang3.version>3.8.1</commons-lang3.version>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<pinyin4j.veision>2.5.1</pinyin4j.veision>
|
||||
<nutzboot.version>2.4.2-SNAPSHOT</nutzboot.version>
|
||||
<logback.version>1.2.3</logback.version>
|
||||
<nutz.version>1.r.68-SNAPSHOT</nutz.version>
|
||||
<tencentcloud-sdk-java.version>4.0.11</tencentcloud-sdk-java.version>
|
||||
</properties>
|
||||
</project>
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="Spring" name="Spring">
|
||||
<configuration />
|
||||
</facet>
|
||||
</component>
|
||||
</module>
|
||||
@@ -0,0 +1,107 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
<project version="4" relativePaths="false">
|
||||
<component name="ProjectRootManager" version="2" assert-keyword="true" project-jdk-name="15." jdk-15="true" languageLevel="JDK_1_8"/>
|
||||
<component name="CodeStyleManager">
|
||||
<option name="USE_DEFAULT_CODE_STYLE_SCHEME" value="true"/>
|
||||
<option name="CODE_STYLE_SCHEME" value=""/>
|
||||
</component>
|
||||
<component name="libraryTable"/>
|
||||
<component name="CompilerConfiguration">
|
||||
<option name="DEFAULT_COMPILER" value="Javac"/>
|
||||
<option name="CLEAR_OUTPUT_DIRECTORY" value="false"/>
|
||||
<!--
|
||||
<wildcardResourcePatterns>
|
||||
<entry name="${wildcardResourcePattern}"/>
|
||||
</wildcardResourcePatterns>
|
||||
-->
|
||||
<wildcardResourcePatterns>
|
||||
<entry name="!?*.java"/>
|
||||
</wildcardResourcePatterns>
|
||||
</component>
|
||||
<component name="JavacSettings">
|
||||
<option name="DEBUGGING_INFO" value="true"/>
|
||||
<option name="GENERATE_NO_WARNINGS" value="false"/>
|
||||
<option name="DEPRECATION" value="true"/>
|
||||
<option name="ADDITIONAL_OPTIONS_STRING" value=""/>
|
||||
<option name="MAXIMUM_HEAP_SIZE" value="128"/>
|
||||
<option name="USE_GENERICS_COMPILER" value="false"/>
|
||||
</component>
|
||||
<component name="JikesSettings">
|
||||
<option name="DEBUGGING_INFO" value="true"/>
|
||||
<option name="DEPRECATION" value="true"/>
|
||||
<option name="GENERATE_NO_WARNINGS" value="false"/>
|
||||
<option name="GENERATE_MAKE_FILE_DEPENDENCIES" value="false"/>
|
||||
<option name="DO_FULL_DEPENDENCE_CHECK" value="false"/>
|
||||
<option name="IS_INCREMENTAL_MODE" value="false"/>
|
||||
<option name="IS_EMACS_ERRORS_MODE" value="true"/>
|
||||
<option name="ADDITIONAL_OPTIONS_STRING" value=""/>
|
||||
<option name="MAXIMUM_HEAP_SIZE" value="128"/>
|
||||
</component>
|
||||
<component name="AntConfiguration">
|
||||
<option name="IS_AUTOSCROLL_TO_SOURCE" value="false"/>
|
||||
<option name="FILTER_TARGETS" value="false"/>
|
||||
</component>
|
||||
<component name="JavadocGenerationManager">
|
||||
<option name="OUTPUT_DIRECTORY"/>
|
||||
<option name="OPTION_SCOPE" value="protected"/>
|
||||
<option name="OPTION_HIERARCHY" value="false"/>
|
||||
<option name="OPTION_NAVIGATOR" value="false"/>
|
||||
<option name="OPTION_INDEX" value="false"/>
|
||||
<option name="OPTION_SEPARATE_INDEX" value="false"/>
|
||||
<option name="OPTION_USE_1_1" value="false"/>
|
||||
<option name="OPTION_DOCUMENT_TAG_USE" value="false"/>
|
||||
<option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false"/>
|
||||
<option name="OPTION_DOCUMENT_TAG_VERSION" value="false"/>
|
||||
<option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="false"/>
|
||||
<option name="OPTION_DEPRECATED_LIST" value="false"/>
|
||||
<option name="OTHER_OPTIONS"/>
|
||||
<option name="HEAP_SIZE"/>
|
||||
<option name="OPEN_IN_BROWSER" value="false"/>
|
||||
</component>
|
||||
<component name="JUnitProjectSettings">
|
||||
<option name="TEST_RUNNER" value="UI"/>
|
||||
</component>
|
||||
<component name="EntryPointsManager">
|
||||
<entry_points/>
|
||||
</component>
|
||||
<component name="DataSourceManager"/>
|
||||
<component name="ExportToHTMLSettings">
|
||||
<option name="PRINT_LINE_NUMBERS" value="false"/>
|
||||
<option name="OPEN_IN_BROWSER" value="false"/>
|
||||
<option name="OUTPUT_DIRECTORY"/>
|
||||
</component>
|
||||
<component name="ImportConfiguration">
|
||||
<option name="VENDOR"/>
|
||||
<option name="RELEASE_TAG"/>
|
||||
<option name="LOG_MESSAGE"/>
|
||||
<option name="CHECKOUT_AFTER_IMPORT" value="true"/>
|
||||
</component>
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<!-- module filepath="$$PROJECT_DIR$$/${pom.artifactId}.iml"/ -->
|
||||
<module filepath="$PROJECT_DIR$/mini.iml"/>
|
||||
</modules>
|
||||
</component>
|
||||
<UsedPathMacros>
|
||||
<!--<macro name="cargo"></macro>-->
|
||||
</UsedPathMacros>
|
||||
</project>
|
||||
@@ -0,0 +1,418 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
<project version="4" relativePaths="false">
|
||||
<component name="LvcsProjectConfiguration">
|
||||
<option name="ADD_LABEL_ON_PROJECT_OPEN" value="true"/>
|
||||
<option name="ADD_LABEL_ON_PROJECT_COMPILATION" value="true"/>
|
||||
<option name="ADD_LABEL_ON_FILE_PACKAGE_COMPILATION" value="true"/>
|
||||
<option name="ADD_LABEL_ON_PROJECT_MAKE" value="true"/>
|
||||
<option name="ADD_LABEL_ON_RUNNING" value="true"/>
|
||||
<option name="ADD_LABEL_ON_DEBUGGING" value="true"/>
|
||||
<option name="ADD_LABEL_ON_UNIT_TEST_PASSED" value="true"/>
|
||||
<option name="ADD_LABEL_ON_UNIT_TEST_FAILED" value="true"/>
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="MemberChooser.copyJavadoc" value="false"/>
|
||||
<property name="GoToClass.includeLibraries" value="false"/>
|
||||
<property name="MemberChooser.showClasses" value="true"/>
|
||||
<property name="MemberChooser.sorted" value="false"/>
|
||||
<property name="GoToFile.includeJavaFiles" value="false"/>
|
||||
<property name="GoToClass.toSaveIncludeLibraries" value="false"/>
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="-4" y="-4" width="1032" height="746" extended-state="6"/>
|
||||
<editor active="false"/>
|
||||
<layout>
|
||||
<window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="-1"/>
|
||||
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="7"/>
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="0"/>
|
||||
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="1"/>
|
||||
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1"/>
|
||||
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="-1"/>
|
||||
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.4" order="6"/>
|
||||
<window_info id="Aspects" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="-1"/>
|
||||
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1"/>
|
||||
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="2"/>
|
||||
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2"/>
|
||||
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.4" order="4"/>
|
||||
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="sliding" type="sliding" visible="false" weight="0.4" order="0"/>
|
||||
<window_info id="Web" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2"/>
|
||||
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="0"/>
|
||||
<window_info id="EJB" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="3"/>
|
||||
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="5"/>
|
||||
</layout>
|
||||
</component>
|
||||
<component name="ErrorTreeViewConfiguration">
|
||||
<option name="IS_AUTOSCROLL_TO_SOURCE" value="false"/>
|
||||
<option name="HIDE_WARNINGS" value="false"/>
|
||||
</component>
|
||||
<component name="StructureViewFactory">
|
||||
<option name="SORT_MODE" value="0"/>
|
||||
<option name="GROUP_INHERITED" value="true"/>
|
||||
<option name="AUTOSCROLL_MODE" value="true"/>
|
||||
<option name="SHOW_FIELDS" value="true"/>
|
||||
<option name="AUTOSCROLL_FROM_SOURCE" value="false"/>
|
||||
<option name="GROUP_GETTERS_AND_SETTERS" value="true"/>
|
||||
<option name="SHOW_INHERITED" value="false"/>
|
||||
<option name="HIDE_NOT_PUBLIC" value="false"/>
|
||||
</component>
|
||||
<component name="ProjectViewSettings">
|
||||
<navigator currentView="ProjectPane" flattenPackages="false" showMembers="false" showStructure="false" autoscrollToSource="false" splitterProportion="0.5"/>
|
||||
<view id="ProjectPane">
|
||||
<expanded_node type="directory" url="file://$PROJECT_DIR$"/>
|
||||
</view>
|
||||
<view id="SourcepathPane"/>
|
||||
<view id="ClasspathPane"/>
|
||||
</component>
|
||||
<component name="Commander">
|
||||
<leftPanel view="Project"/>
|
||||
<rightPanel view="Project"/>
|
||||
<splitter proportion="0.5"/>
|
||||
</component>
|
||||
<component name="AspectsView"/>
|
||||
<component name="SelectInManager"/>
|
||||
<component name="HierarchyBrowserManager">
|
||||
<option name="SHOW_PACKAGES" value="false"/>
|
||||
<option name="IS_AUTOSCROLL_TO_SOURCE" value="false"/>
|
||||
<option name="SORT_ALPHABETICALLY" value="false"/>
|
||||
</component>
|
||||
<component name="TodoView" selected-index="0">
|
||||
<todo-panel id="selected-file">
|
||||
<are-packages-shown value="false"/>
|
||||
<flatten-packages value="false"/>
|
||||
<is-autoscroll-to-source value="true"/>
|
||||
</todo-panel>
|
||||
<todo-panel id="all">
|
||||
<are-packages-shown value="true"/>
|
||||
<flatten-packages value="false"/>
|
||||
<is-autoscroll-to-source value="true"/>
|
||||
</todo-panel>
|
||||
</component>
|
||||
<component name="editorManager"/>
|
||||
<component name="editorHistoryManager"/>
|
||||
<component name="DaemonCodeAnalyzer">
|
||||
<disable_hints/>
|
||||
</component>
|
||||
<component name="InspectionManager">
|
||||
<option name="AUTOSCROLL_TO_SOURCE" value="false"/>
|
||||
<option name="SPLITTER_PROPORTION" value="0.5"/>
|
||||
<profile name="Default"/>
|
||||
</component>
|
||||
<component name="BookmarkManager"/>
|
||||
<component name="DebuggerManager">
|
||||
<line_breakpoints/>
|
||||
<exception_breakpoints>
|
||||
<breakpoint_any>
|
||||
<option name="NOTIFY_CAUGHT" value="true"/>
|
||||
<option name="NOTIFY_UNCAUGHT" value="true"/>
|
||||
<option name="ENABLED" value="false"/>
|
||||
<option name="SUSPEND_VM" value="true"/>
|
||||
<option name="COUNT_FILTER_ENABLED" value="false"/>
|
||||
<option name="COUNT_FILTER" value="0"/>
|
||||
<option name="CONDITION_ENABLED" value="false"/>
|
||||
<option name="CONDITION"/>
|
||||
<option name="LOG_ENABLED" value="false"/>
|
||||
<option name="LOG_EXPRESSION_ENABLED" value="false"/>
|
||||
<option name="LOG_MESSAGE"/>
|
||||
<option name="CLASS_FILTERS_ENABLED" value="false"/>
|
||||
<option name="INVERSE_CLASS_FILLTERS" value="false"/>
|
||||
<option name="SUSPEND_POLICY" value="SuspendAll"/>
|
||||
</breakpoint_any>
|
||||
</exception_breakpoints>
|
||||
<field_breakpoints/>
|
||||
<method_breakpoints/>
|
||||
</component>
|
||||
<component name="DebuggerSettings">
|
||||
<option name="TRACING_FILTERS_ENABLED" value="true"/>
|
||||
<option name="TOSTRING_CLASSES_ENABLED" value="false"/>
|
||||
<option name="VALUE_LOOKUP_DELAY" value="700"/>
|
||||
<option name="DEBUGGER_TRANSPORT" value="0"/>
|
||||
<option name="FORCE_CLASSIC_VM" value="true"/>
|
||||
<option name="HIDE_DEBUGGER_ON_PROCESS_TERMINATION" value="false"/>
|
||||
<option name="SKIP_SYNTHETIC_METHODS" value="true"/>
|
||||
<option name="SKIP_CONSTRUCTORS" value="false"/>
|
||||
<option name="STEP_THREAD_SUSPEND_POLICY" value="SuspendThread"/>
|
||||
<default_breakpoint_settings>
|
||||
<option name="NOTIFY_CAUGHT" value="true"/>
|
||||
<option name="NOTIFY_UNCAUGHT" value="true"/>
|
||||
<option name="WATCH_MODIFICATION" value="true"/>
|
||||
<option name="WATCH_ACCESS" value="true"/>
|
||||
<option name="WATCH_ENTRY" value="true"/>
|
||||
<option name="WATCH_EXIT" value="true"/>
|
||||
<option name="ENABLED" value="true"/>
|
||||
<option name="SUSPEND_VM" value="true"/>
|
||||
<option name="COUNT_FILTER_ENABLED" value="false"/>
|
||||
<option name="COUNT_FILTER" value="0"/>
|
||||
<option name="CONDITION_ENABLED" value="false"/>
|
||||
<option name="CONDITION"/>
|
||||
<option name="LOG_ENABLED" value="false"/>
|
||||
<option name="LOG_EXPRESSION_ENABLED" value="false"/>
|
||||
<option name="LOG_MESSAGE"/>
|
||||
<option name="CLASS_FILTERS_ENABLED" value="false"/>
|
||||
<option name="INVERSE_CLASS_FILLTERS" value="false"/>
|
||||
<option name="SUSPEND_POLICY" value="SuspendAll"/>
|
||||
</default_breakpoint_settings>
|
||||
<filter>
|
||||
<option name="PATTERN" value="com.sun.*"/>
|
||||
<option name="ENABLED" value="true"/>
|
||||
</filter>
|
||||
<filter>
|
||||
<option name="PATTERN" value="java.*"/>
|
||||
<option name="ENABLED" value="true"/>
|
||||
</filter>
|
||||
<filter>
|
||||
<option name="PATTERN" value="javax.*"/>
|
||||
<option name="ENABLED" value="true"/>
|
||||
</filter>
|
||||
<filter>
|
||||
<option name="PATTERN" value="org.omg.*"/>
|
||||
<option name="ENABLED" value="true"/>
|
||||
</filter>
|
||||
<filter>
|
||||
<option name="PATTERN" value="sun.*"/>
|
||||
<option name="ENABLED" value="true"/>
|
||||
</filter>
|
||||
<filter>
|
||||
<option name="PATTERN" value="junit.*"/>
|
||||
<option name="ENABLED" value="true"/>
|
||||
</filter>
|
||||
</component>
|
||||
<component name="CompilerWorkspaceConfiguration">
|
||||
<option name="COMPILE_IN_BACKGROUND" value="false"/>
|
||||
<option name="AUTO_SHOW_ERRORS_IN_EDITOR" value="true"/>
|
||||
</component>
|
||||
<component name="RunManager">
|
||||
<activeType name="Application"/>
|
||||
<configuration selected="false" default="true" type="Applet" factoryName="Applet">
|
||||
<module name=""/>
|
||||
<option name="MAIN_CLASS_NAME"/>
|
||||
<option name="HTML_FILE_NAME"/>
|
||||
<option name="HTML_USED" value="false"/>
|
||||
<option name="WIDTH" value="400"/>
|
||||
<option name="HEIGHT" value="300"/>
|
||||
<option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy"/>
|
||||
<option name="VM_PARAMETERS"/>
|
||||
</configuration>
|
||||
<configuration selected="false" default="true" type="Remote" factoryName="Remote">
|
||||
<option name="USE_SOCKET_TRANSPORT" value="true"/>
|
||||
<option name="SERVER_MODE" value="false"/>
|
||||
<option name="SHMEM_ADDRESS" value="javadebug"/>
|
||||
<option name="HOST" value="localhost"/>
|
||||
<option name="PORT" value="5005"/>
|
||||
</configuration>
|
||||
<configuration selected="false" default="true" type="Application" factoryName="Application">
|
||||
<option name="MAIN_CLASS_NAME"/>
|
||||
<option name="VM_PARAMETERS"/>
|
||||
<option name="PROGRAM_PARAMETERS"/>
|
||||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$"/>
|
||||
<module name=""/>
|
||||
</configuration>
|
||||
<configuration selected="false" default="true" type="JUnit" factoryName="JUnit">
|
||||
<module name=""/>
|
||||
<option name="PACKAGE_NAME"/>
|
||||
<option name="MAIN_CLASS_NAME"/>
|
||||
<option name="METHOD_NAME"/>
|
||||
<option name="TEST_OBJECT" value="class"/>
|
||||
<option name="VM_PARAMETERS"/>
|
||||
<option name="PARAMETERS"/>
|
||||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$"/>
|
||||
<option name="ADDITIONAL_CLASS_PATH"/>
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="wholeProject"/>
|
||||
</option>
|
||||
</configuration>
|
||||
</component>
|
||||
<component name="VcsManagerConfiguration">
|
||||
<option name="ACTIVE_VCS_NAME" value=""/>
|
||||
<option name="STATE" value="0"/>
|
||||
</component>
|
||||
<component name="VssConfiguration">
|
||||
<CheckoutOptions>
|
||||
<option name="COMMENT" value=""/>
|
||||
<option name="DO_NOT_GET_LATEST_VERSION" value="false"/>
|
||||
<option name="REPLACE_WRITABLE" value="false"/>
|
||||
<option name="RECURSIVE" value="false"/>
|
||||
</CheckoutOptions>
|
||||
<CheckinOptions>
|
||||
<option name="COMMENT" value=""/>
|
||||
<option name="KEEP_CHECKED_OUT" value="false"/>
|
||||
<option name="RECURSIVE" value="false"/>
|
||||
</CheckinOptions>
|
||||
<AddOptions>
|
||||
<option name="COMMENT" value=""/>
|
||||
<option name="STORE_ONLY_LATEST_VERSION" value="false"/>
|
||||
<option name="CHECK_OUT_IMMEDIATELY" value="false"/>
|
||||
<option name="FILE_TYPE" value="0"/>
|
||||
</AddOptions>
|
||||
<UndocheckoutOptions>
|
||||
<option name="MAKE_WRITABLE" value="false"/>
|
||||
<option name="REPLACE_LOCAL_COPY" value="0"/>
|
||||
<option name="RECURSIVE" value="false"/>
|
||||
</UndocheckoutOptions>
|
||||
<DiffOptions>
|
||||
<option name="IGNORE_WHITE_SPACE" value="false"/>
|
||||
<option name="IGNORE_CASE" value="false"/>
|
||||
</DiffOptions>
|
||||
<GetOptions>
|
||||
<option name="REPLACE_WRITABLE" value="0"/>
|
||||
<option name="MAKE_WRITABLE" value="false"/>
|
||||
<option name="RECURSIVE" value="false"/>
|
||||
</GetOptions>
|
||||
<option name="CLIENT_PATH" value=""/>
|
||||
<option name="SRCSAFEINI_PATH" value=""/>
|
||||
<option name="USER_NAME" value=""/>
|
||||
<option name="PWD" value=""/>
|
||||
<option name="SHOW_CHECKOUT_OPTIONS" value="true"/>
|
||||
<option name="SHOW_ADD_OPTIONS" value="true"/>
|
||||
<option name="SHOW_UNDOCHECKOUT_OPTIONS" value="true"/>
|
||||
<option name="SHOW_DIFF_OPTIONS" value="true"/>
|
||||
<option name="SHOW_GET_OPTIONS" value="true"/>
|
||||
<option name="USE_EXTERNAL_DIFF" value="false"/>
|
||||
<option name="EXTERNAL_DIFF_PATH" value=""/>
|
||||
<option name="REUSE_LAST_COMMENT" value="false"/>
|
||||
<option name="PUT_FOCUS_INTO_COMMENT" value="false"/>
|
||||
<option name="SHOW_CHECKIN_OPTIONS" value="true"/>
|
||||
<option name="LAST_COMMIT_MESSAGE" value=""/>
|
||||
<option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8"/>
|
||||
</component>
|
||||
<component name="CheckinPanelState"/>
|
||||
<component name="WebViewSettings">
|
||||
<webview flattenPackages="false" showMembers="false" autoscrollToSource="false"/>
|
||||
</component>
|
||||
<component name="EjbViewSettings">
|
||||
<EjbView showMembers="false" autoscrollToSource="false"/>
|
||||
</component>
|
||||
<component name="AppServerRunManager"/>
|
||||
<component name="StarteamConfiguration">
|
||||
<option name="SERVER" value=""/>
|
||||
<option name="PORT" value="49201"/>
|
||||
<option name="USER" value=""/>
|
||||
<option name="PASSWORD" value=""/>
|
||||
<option name="PROJECT" value=""/>
|
||||
<option name="VIEW" value=""/>
|
||||
<option name="ALTERNATIVE_WORKING_PATH" value=""/>
|
||||
<option name="PUT_FOCUS_INTO_COMMENT" value="false"/>
|
||||
<option name="SHOW_CHECKIN_OPTIONS" value="true"/>
|
||||
<option name="LAST_COMMIT_MESSAGE" value=""/>
|
||||
<option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8"/>
|
||||
</component>
|
||||
<component name="Cvs2Configuration">
|
||||
<option name="ON_FILE_ADDING" value="0"/>
|
||||
<option name="ON_FILE_REMOVING" value="0"/>
|
||||
<option name="PRUNE_EMPTY_DIRECTORIES" value="true"/>
|
||||
<option name="SHOW_UPDATE_OPTIONS" value="true"/>
|
||||
<option name="SHOW_ADD_OPTIONS" value="true"/>
|
||||
<option name="SHOW_REMOVE_OPTIONS" value="true"/>
|
||||
<option name="MERGING_MODE" value="0"/>
|
||||
<option name="MERGE_WITH_BRANCH1_NAME" value="HEAD"/>
|
||||
<option name="MERGE_WITH_BRANCH2_NAME" value="HEAD"/>
|
||||
<option name="RESET_STICKY" value="false"/>
|
||||
<option name="CREATE_NEW_DIRECTORIES" value="true"/>
|
||||
<option name="DEFAULT_TEXT_FILE_SUBSTITUTION" value="kv"/>
|
||||
<option name="PROCESS_UNKNOWN_FILES" value="false"/>
|
||||
<option name="PROCESS_DELETED_FILES" value="false"/>
|
||||
<option name="SHOW_EDIT_DIALOG" value="true"/>
|
||||
<option name="RESERVED_EDIT" value="false"/>
|
||||
<option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6"/>
|
||||
<option name="SHOW_CHECKOUT_OPTIONS" value="true"/>
|
||||
<option name="CHECKOUT_DATE_OR_REVISION_SETTINGS">
|
||||
<value>
|
||||
<option name="BRANCH" value=""/>
|
||||
<option name="DATE" value=""/>
|
||||
<option name="USE_BRANCH" value="false"/>
|
||||
<option name="USE_DATE" value="false"/>
|
||||
</value>
|
||||
</option>
|
||||
<option name="UPDATE_DATE_OR_REVISION_SETTINGS">
|
||||
<value>
|
||||
<option name="BRANCH" value=""/>
|
||||
<option name="DATE" value=""/>
|
||||
<option name="USE_BRANCH" value="false"/>
|
||||
<option name="USE_DATE" value="false"/>
|
||||
</value>
|
||||
</option>
|
||||
<option name="SHOW_CHANGES_REVISION_SETTINGS">
|
||||
<value>
|
||||
<option name="BRANCH" value=""/>
|
||||
<option name="DATE" value=""/>
|
||||
<option name="USE_BRANCH" value="false"/>
|
||||
<option name="USE_DATE" value="false"/>
|
||||
</value>
|
||||
</option>
|
||||
<option name="SHOW_OUTPUT" value="false"/>
|
||||
<option name="SHOW_FILE_HISTORY_AS_TREE" value="false"/>
|
||||
<option name="UPDATE_GROUP_BY_PACKAGES" value="false"/>
|
||||
<option name="ADD_WATCH_INDEX" value="0"/>
|
||||
<option name="REMOVE_WATCH_INDEX" value="0"/>
|
||||
<option name="UPDATE_KEYWORD_SUBSTITUTION"/>
|
||||
<option name="MAKE_NEW_FILES_READONLY" value="false"/>
|
||||
<option name="SHOW_CORRUPTED_PROJECT_FILES" value="0"/>
|
||||
<option name="TAG_AFTER_FILE_COMMIT" value="false"/>
|
||||
<option name="TAG_AFTER_FILE_COMMIT_NAME" value=""/>
|
||||
<option name="TAG_AFTER_PROJECT_COMMIT" value="false"/>
|
||||
<option name="TAG_AFTER_PROJECT_COMMIT_NAME" value=""/>
|
||||
<option name="PUT_FOCUS_INTO_COMMENT" value="false"/>
|
||||
<option name="SHOW_CHECKIN_OPTIONS" value="true"/>
|
||||
<option name="FORCE_NON_EMPTY_COMMENT" value="false"/>
|
||||
<option name="LAST_COMMIT_MESSAGE" value=""/>
|
||||
<option name="SAVE_LAST_COMMIT_MESSAGE" value="true"/>
|
||||
<option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8"/>
|
||||
<option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false"/>
|
||||
<option name="OPTIMIZE_IMPORTS_BEFORE_FILE_COMMIT" value="false"/>
|
||||
<option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false"/>
|
||||
<option name="REFORMAT_BEFORE_FILE_COMMIT" value="false"/>
|
||||
<option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8"/>
|
||||
<option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5"/>
|
||||
</component>
|
||||
<component name="CvsTabbedWindow"/>
|
||||
<component name="SvnConfiguration">
|
||||
<option name="USER" value=""/>
|
||||
<option name="PASSWORD" value=""/>
|
||||
<option name="AUTO_ADD_FILES" value="0"/>
|
||||
<option name="AUTO_DEL_FILES" value="0"/>
|
||||
</component>
|
||||
<component name="PerforceConfiguration">
|
||||
<option name="PORT" value="magic:1666"/>
|
||||
<option name="USER" value=""/>
|
||||
<option name="PASSWORD" value=""/>
|
||||
<option name="CLIENT" value=""/>
|
||||
<option name="TRACE" value="false"/>
|
||||
<option name="PERFORCE_STATUS" value="true"/>
|
||||
<option name="CHANGELIST_OPTION" value="false"/>
|
||||
<option name="SYSTEMROOT" value=""/>
|
||||
<option name="P4_EXECUTABLE" value="p4"/>
|
||||
<option name="SHOW_BRANCH_HISTORY" value="false"/>
|
||||
<option name="GENERATE_COMMENT" value="false"/>
|
||||
<option name="SYNC_OPTION" value="Sync"/>
|
||||
<option name="PUT_FOCUS_INTO_COMMENT" value="false"/>
|
||||
<option name="SHOW_CHECKIN_OPTIONS" value="true"/>
|
||||
<option name="FORCE_NON_EMPTY_COMMENT" value="true"/>
|
||||
<option name="LAST_COMMIT_MESSAGE" value=""/>
|
||||
<option name="SAVE_LAST_COMMIT_MESSAGE" value="true"/>
|
||||
<option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8"/>
|
||||
<option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false"/>
|
||||
<option name="OPTIMIZE_IMPORTS_BEFORE_FILE_COMMIT" value="false"/>
|
||||
<option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false"/>
|
||||
<option name="REFORMAT_BEFORE_FILE_COMMIT" value="false"/>
|
||||
<option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8"/>
|
||||
<option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5"/>
|
||||
</component>
|
||||
</project>
|
||||
@@ -1,6 +1,5 @@
|
||||
package io.v.nutz.base.utils;
|
||||
|
||||
import okhttp3.*;
|
||||
import org.nutz.http.Header;
|
||||
import org.nutz.http.Http;
|
||||
import org.nutz.ioc.loader.annotation.Inject;
|
||||
@@ -31,10 +30,10 @@ public class WxHttpUtil {
|
||||
@Inject
|
||||
private WxTokenUtil wxTokenUtil;
|
||||
|
||||
private final OkHttpClient okHttpClient = new OkHttpClient();
|
||||
private final MediaType JSON = MediaType.parse("application/json; charset=utf-8");
|
||||
private final MediaType formData = MediaType.parse("multipart/form-data");
|
||||
private final NutMap jsonHeader = NutMap.NEW().setv("Content-Type", "application/json");
|
||||
// private final OkHttpClient okHttpClient = new OkHttpClient();
|
||||
// private final MediaType JSON = MediaType.parse("application/json; charset=utf-8");
|
||||
// private final MediaType formData = MediaType.parse("multipart/form-data");
|
||||
// private final NutMap jsonHeader = NutMap.NEW().setv("Content-Type", "application/json");
|
||||
|
||||
|
||||
public String env = "unionpal-0ge58oan8d6fa30e";
|
||||
@@ -63,22 +62,24 @@ public class WxHttpUtil {
|
||||
Map<String, String> reqBody = new HashMap<>();
|
||||
reqBody.put("env", this.env);
|
||||
reqBody.put("query", query);
|
||||
Header header = Header.create(jsonHeader);
|
||||
org.nutz.http.Response response = Http.post3(queryUrl, Json.toJson(reqBody), header, 200000);
|
||||
return Json.fromJson(NutMap.class, new InputStreamReader(response.getStream()));
|
||||
// Header header = Header.create(jsonHeader);
|
||||
// org.nutz.http.Response response = Http.post3(queryUrl, Json.toJson(reqBody), header, 200000);
|
||||
// return Json.fromJson(NutMap.class, new InputStreamReader(response.getStream()));
|
||||
return null;
|
||||
}
|
||||
|
||||
public NutMap getCloudResult(String queryUrl, String name, Map<String, Object> reqBody) throws IOException {
|
||||
String url = queryUrl.replace("ACCESS_TOKEN", wxTokenUtil.getWeAppAccesstoken())
|
||||
.replace("ENV", this.env).replace("FUNCTION_NAME", name);
|
||||
RequestBody b = RequestBody.create(Json.toJson(reqBody), JSON);
|
||||
Request request = new Request.Builder()
|
||||
.url(url)
|
||||
.post(b)
|
||||
.build();
|
||||
Call call = okHttpClient.newCall(request);
|
||||
Response response = call.execute();
|
||||
return Json.fromJson(NutMap.class, Objects.requireNonNull(response.body()).string());
|
||||
// String url = queryUrl.replace("ACCESS_TOKEN", wxTokenUtil.getWeAppAccesstoken())
|
||||
// .replace("ENV", this.env).replace("FUNCTION_NAME", name);
|
||||
// RequestBody b = RequestBody.create(Json.toJson(reqBody), JSON);
|
||||
// Request request = new Request.Builder()
|
||||
// .url(url)
|
||||
// .post(b)
|
||||
// .build();
|
||||
// Call call = okHttpClient.newCall(request);
|
||||
// Response response = call.execute();
|
||||
// return Json.fromJson(NutMap.class, Objects.requireNonNull(response.body()).string());
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -89,25 +90,26 @@ public class WxHttpUtil {
|
||||
* @throws IOException
|
||||
*/
|
||||
public String getWxFileUrl(String fileid) throws IOException {
|
||||
String url = this.downloadUrl.replace("ACCESS_TOKEN", wxTokenUtil.getWeAppAccesstoken());
|
||||
Map mf = new HashMap<String, String>();
|
||||
mf.put("fileid", fileid);
|
||||
mf.put("max_age", 7200);
|
||||
ArrayList<Map> fm = new ArrayList<>();
|
||||
fm.add(mf);
|
||||
Map reqbody = new HashMap<String, String>();
|
||||
reqbody.put("env", this.env);
|
||||
reqbody.put("file_list", fm);
|
||||
Header header = Header.create(jsonHeader);
|
||||
org.nutz.http.Response response = Http.post3(url, Json.toJson(reqbody), header, 200000);
|
||||
NutMap map = Json.fromJson(NutMap.class, new InputStreamReader(response.getStream()));
|
||||
if (map.getInt("errcode") == 0 && map.getString("errmsg").equals("ok")) {
|
||||
NutMap res = map.getAsList("file_list", NutMap.class).get(0);
|
||||
return res.getString("download_url");
|
||||
} else {
|
||||
log.error(map.getString("errmsg"));
|
||||
return null;
|
||||
}
|
||||
// String url = this.downloadUrl.replace("ACCESS_TOKEN", wxTokenUtil.getWeAppAccesstoken());
|
||||
// Map mf = new HashMap<String, String>();
|
||||
// mf.put("fileid", fileid);
|
||||
// mf.put("max_age", 7200);
|
||||
// ArrayList<Map> fm = new ArrayList<>();
|
||||
// fm.add(mf);
|
||||
// Map reqbody = new HashMap<String, String>();
|
||||
// reqbody.put("env", this.env);
|
||||
// reqbody.put("file_list", fm);
|
||||
// Header header = Header.create(jsonHeader);
|
||||
// org.nutz.http.Response response = Http.post3(url, Json.toJson(reqbody), header, 200000);
|
||||
// NutMap map = Json.fromJson(NutMap.class, new InputStreamReader(response.getStream()));
|
||||
// if (map.getInt("errcode") == 0 && map.getString("errmsg").equals("ok")) {
|
||||
// NutMap res = map.getAsList("file_list", NutMap.class).get(0);
|
||||
// return res.getString("download_url");
|
||||
// } else {
|
||||
// log.error(map.getString("errmsg"));
|
||||
// return null;
|
||||
// }
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -122,14 +124,15 @@ public class WxHttpUtil {
|
||||
* @return
|
||||
*/
|
||||
public NutMap getUploadFile(String wxfilePath) throws Exception {
|
||||
String Url = this.uploadUrl.replace("ACCESS_TOKEN", wxTokenUtil.getWeAppAccesstoken());
|
||||
Map reqbody = new HashMap<String, String>();
|
||||
reqbody.put("env", this.env);
|
||||
reqbody.put("path", wxfilePath);
|
||||
Header header = Header.create(jsonHeader);
|
||||
org.nutz.http.Response response = Http.post3(Url, Json.toJson(reqbody), header, 200000);
|
||||
NutMap map = Json.fromJson(NutMap.class, new InputStreamReader(response.getStream()));
|
||||
return map;
|
||||
// String Url = this.uploadUrl.replace("ACCESS_TOKEN", wxTokenUtil.getWeAppAccesstoken());
|
||||
// Map reqbody = new HashMap<String, String>();
|
||||
// reqbody.put("env", this.env);
|
||||
// reqbody.put("path", wxfilePath);
|
||||
// Header header = Header.create(jsonHeader);
|
||||
// org.nutz.http.Response response = Http.post3(Url, Json.toJson(reqbody), header, 200000);
|
||||
// NutMap map = Json.fromJson(NutMap.class, new InputStreamReader(response.getStream()));
|
||||
// return map;
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@@ -141,28 +144,29 @@ public class WxHttpUtil {
|
||||
* @throws Exception
|
||||
*/
|
||||
public String uploadFile(NutMap map, TempFile file, String wxfilePath) throws Exception {
|
||||
String url = map.getString("url");
|
||||
String token = map.getString("token");
|
||||
String authorization = map.getString("authorization");
|
||||
String file_id = map.getString("file_id");
|
||||
String cos_file_id = map.getString("cos_file_id");
|
||||
RequestBody fb = RequestBody.create(file.getFile(), formData);
|
||||
RequestBody b = new MultipartBody.Builder()
|
||||
.setType(MultipartBody.FORM)
|
||||
.addFormDataPart("key", wxfilePath)
|
||||
.addFormDataPart("Signature", authorization)
|
||||
.addFormDataPart("x-cos-security-token", token)
|
||||
.addFormDataPart("x-cos-meta-fileid", cos_file_id)
|
||||
.addFormDataPart("file", "filename", fb)
|
||||
.build();
|
||||
|
||||
Request request = new Request.Builder()
|
||||
.url(url)
|
||||
.post(b)
|
||||
.build();
|
||||
Call call = okHttpClient.newCall(request);
|
||||
Response response = call.execute();
|
||||
//没有返回的内容 。。。怎么判断是否成功 难道去查?
|
||||
return file_id;
|
||||
// String url = map.getString("url");
|
||||
// String token = map.getString("token");
|
||||
// String authorization = map.getString("authorization");
|
||||
// String file_id = map.getString("file_id");
|
||||
// String cos_file_id = map.getString("cos_file_id");
|
||||
// RequestBody fb = RequestBody.create(file.getFile(), formData);
|
||||
// RequestBody b = new MultipartBody.Builder()
|
||||
// .setType(MultipartBody.FORM)
|
||||
// .addFormDataPart("key", wxfilePath)
|
||||
// .addFormDataPart("Signature", authorization)
|
||||
// .addFormDataPart("x-cos-security-token", token)
|
||||
// .addFormDataPart("x-cos-meta-fileid", cos_file_id)
|
||||
// .addFormDataPart("file", "filename", fb)
|
||||
// .build();
|
||||
//
|
||||
// Request request = new Request.Builder()
|
||||
// .url(url)
|
||||
// .post(b)
|
||||
// .build();
|
||||
// Call call = okHttpClient.newCall(request);
|
||||
// Response response = call.execute();
|
||||
// //没有返回的内容 。。。怎么判断是否成功 难道去查?
|
||||
// return file_id;
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -184,6 +184,7 @@ public class SickHelpListController {
|
||||
SELECT
|
||||
sick.loginName,
|
||||
sick.userName,
|
||||
IFNULL(NULLIF(sfm.idcard, ''), u.idcard) AS idcard,
|
||||
sick.unitName,
|
||||
sick.medicalFourTotalMoney,
|
||||
sick.selfPayMoney,
|
||||
@@ -243,6 +244,7 @@ public class SickHelpListController {
|
||||
excelExportEntities.add(indexExcelExportEntity);
|
||||
excelExportEntities.add(new ExcelExportEntity("工资号", "loginName", 20));
|
||||
excelExportEntities.add(new ExcelExportEntity("姓名", "userName", 20));
|
||||
excelExportEntities.add(new ExcelExportEntity("身份证号", "idcard", 30));
|
||||
excelExportEntities.add(new ExcelExportEntity("单位", "unitName", 20));
|
||||
excelExportEntities.add(new ExcelExportEntity("状态", "userState", 20));
|
||||
excelExportEntities.add(new ExcelExportEntity("是否会员", "isMember", 20));
|
||||
|
||||
@@ -95,7 +95,7 @@ public class SickFundListController {
|
||||
sfm.remark,
|
||||
u.unitid as unitId,
|
||||
u.unitname as unitName,
|
||||
u.idcard
|
||||
IFNULL(NULLIF(sfm.idcard, ''), u.idcard) AS idcard
|
||||
from sick_fund_member sfm
|
||||
left join `user` u on u.loginname = sfm.loginName
|
||||
$condition
|
||||
@@ -132,6 +132,8 @@ public class SickFundListController {
|
||||
if (StrUtil.isNotBlank(keyWord)) {
|
||||
seg.orLike("sfm.loginName", keyWord);
|
||||
seg.orLike("sfm.userName", keyWord);
|
||||
seg.or("sfm.idcard", "=", keyWord);
|
||||
seg.or("u.idcard", "=", keyWord);
|
||||
cnd.and(seg);
|
||||
}
|
||||
|
||||
@@ -189,7 +191,7 @@ public class SickFundListController {
|
||||
return Result.error("该记录已存在,请勿重复添加!");
|
||||
}*/
|
||||
Trans.exec(() -> {
|
||||
dao.update(Sys_user.class, Chain.make("unitId", fundMember.getUnitId()), Cnd.where("loginname", "=", fundMember.getLoginName()));
|
||||
dao.update(Sys_user.class, Chain.make("unitId", fundMember.getUnitId()).add("idcard", fundMember.getIdcard()), Cnd.where("loginname", "=", fundMember.getLoginName()));
|
||||
dao.update(fundMember);
|
||||
});
|
||||
return null;
|
||||
@@ -211,7 +213,10 @@ public class SickFundListController {
|
||||
if (count > 0) {
|
||||
return Result.error("该记录已存在,请勿重复添加!");
|
||||
}*/
|
||||
dao.insert(fundMember);
|
||||
Trans.exec(() -> {
|
||||
dao.update(Sys_user.class, Chain.make("unitId", fundMember.getUnitId()).add("idcard", fundMember.getIdcard()), Cnd.where("loginname", "=", fundMember.getLoginName()));
|
||||
dao.insert(fundMember);
|
||||
});
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -237,7 +242,7 @@ public class SickFundListController {
|
||||
sfm.remark,
|
||||
u.unitid as unitId,
|
||||
u.unitname as unitName,
|
||||
u.idcard
|
||||
IFNULL(NULLIF(sfm.idcard, ''), u.idcard) AS idcard
|
||||
from sick_fund_member sfm
|
||||
left join `user` u on u.loginname = sfm.loginName
|
||||
$condition
|
||||
@@ -273,6 +278,8 @@ public class SickFundListController {
|
||||
if (StrUtil.isNotBlank(keyWord)) {
|
||||
seg.orLike("sfm.loginName", keyWord);
|
||||
seg.orLike("sfm.userName", keyWord);
|
||||
seg.or("sfm.idcard", "=", keyWord);
|
||||
seg.or("u.idcard", "=", keyWord);
|
||||
cnd.and(seg);
|
||||
}
|
||||
cnd.andEX("u.unionid", "=", unionId);
|
||||
|
||||
@@ -6,13 +6,16 @@ import cn.afterturn.easypoi.excel.entity.ExportParams;
|
||||
import cn.afterturn.easypoi.excel.entity.ImportParams;
|
||||
import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
|
||||
import cn.hutool.core.collection.ListUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import io.v.nutz.annontation.ViReturn;
|
||||
import io.v.nutz.sickHelp.model.SickFundMember;
|
||||
import io.v.nutz.sys.models.Sys_user;
|
||||
import io.v.nutz.util.ViTool;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.apache.shiro.authz.annotation.RequiresAuthentication;
|
||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||
import org.nutz.dao.Chain;
|
||||
import org.nutz.dao.Cnd;
|
||||
import org.nutz.dao.Dao;
|
||||
import org.nutz.dao.Sqls;
|
||||
@@ -28,6 +31,7 @@ import org.nutz.mvc.annotation.Ok;
|
||||
import org.nutz.mvc.annotation.Param;
|
||||
import org.nutz.mvc.upload.TempFile;
|
||||
import org.nutz.mvc.upload.UploadAdaptor;
|
||||
import org.nutz.trans.Trans;
|
||||
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
@@ -71,7 +75,7 @@ public class SickHelpMemberController {
|
||||
ImportParams importParams = new ImportParams();
|
||||
List<SickFundMember> list = ExcelImportUtil.importExcel(tempFile.getFile(), SickFundMember.class, importParams);
|
||||
List<String> loginNames = list.stream().map(v -> v.getLoginName()).collect(Collectors.toList());
|
||||
Sql userSql = Sqls.create("select id,loginname,username,unitid,unitname,sex from user where loginname in (@loginNames)");
|
||||
Sql userSql = Sqls.create("select u.id,u.loginname,u.username,u.unitid,u.unitname,u.sex,su.idcard from user u left join sys_user su on su.loginname = u.loginname where u.loginname in (@loginNames)");
|
||||
userSql.setParam("loginNames", loginNames);
|
||||
List<NutMap> users = (List<NutMap>) Daos.query(dao, userSql.toString(), Sqls.callback.maps());
|
||||
Map<String, NutMap> userMap = users.stream().collect(Collectors.toMap(v -> v.getString("loginname"), v -> v));
|
||||
@@ -81,6 +85,7 @@ public class SickHelpMemberController {
|
||||
// Map<String, Long> collect = loginNames.stream().filter(v -> StrUtil.isNotBlank(v)).collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));
|
||||
|
||||
for (SickFundMember fundMember : list) {
|
||||
fundMember.setIdcard(StrUtil.trim(fundMember.getIdcard()));
|
||||
// Cnd cnd = Cnd.where("loginName", "=", fundMember.getLoginName());
|
||||
// cnd.and("userName", "=", fundMember.getUserName());
|
||||
// SickFundMember oldFundMember = dao.fetch(SickFundMember.class, cnd);
|
||||
@@ -96,6 +101,9 @@ public class SickHelpMemberController {
|
||||
fundMember.setUnitId(user.getString("unitid"));
|
||||
fundMember.setUnitName(user.getString("unitname"));
|
||||
fundMember.setSex(user.getString("sex"));
|
||||
if (StrUtil.isBlank(fundMember.getIdcard())) {
|
||||
fundMember.setIdcard(StrUtil.trim(user.getString("idcard")));
|
||||
}
|
||||
// fundMember.setIsMember(true);
|
||||
}
|
||||
fundMember.setIsMember("是".equals(fundMember.getMember()));
|
||||
@@ -117,7 +125,14 @@ public class SickHelpMemberController {
|
||||
List<List<SickFundMember>> splitFundMembers = ListUtil.split(Arrays.asList(fundMembers), 500);
|
||||
for (List<SickFundMember> splitFundMember : splitFundMembers) {
|
||||
new Thread(() -> {
|
||||
dao.insertOrUpdate(splitFundMember);
|
||||
Trans.exec(() -> {
|
||||
for (SickFundMember fundMember : splitFundMember) {
|
||||
if (StrUtil.isNotBlank(fundMember.getIdcard())) {
|
||||
dao.update(Sys_user.class, Chain.make("idcard", fundMember.getIdcard()), Cnd.where("loginname", "=", fundMember.getLoginName()));
|
||||
}
|
||||
}
|
||||
dao.insertOrUpdate(splitFundMember);
|
||||
});
|
||||
}).start();
|
||||
}
|
||||
return null;
|
||||
|
||||
@@ -65,6 +65,12 @@ public class SickFundMember {
|
||||
@ColDefine(type = ColType.VARCHAR, width = 1)
|
||||
private String sex;
|
||||
|
||||
@Column
|
||||
@Comment("身份证号")
|
||||
@ColDefine(type = ColType.VARCHAR, width = 50)
|
||||
@Excel(name = "身份证号", width = 30)
|
||||
private String idcard;
|
||||
|
||||
@Column
|
||||
@Comment("是否会员")
|
||||
@ColDefine(type = ColType.BOOLEAN)
|
||||
|
||||
@@ -214,6 +214,11 @@ public class SickHelp {
|
||||
*/
|
||||
private String mutualGoldStartTime;
|
||||
|
||||
/**
|
||||
* 身份证号
|
||||
*/
|
||||
private String idcard;
|
||||
|
||||
public void setSubsidyMoney(BigDecimal subsidyMoney) {
|
||||
if (subsidyMoney != null) {
|
||||
subsidyMoney = subsidyMoney.setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
|
||||
@@ -93,6 +93,8 @@ public class SickHelpImportServiceImpl extends ViServiceImpl<SickHelp> implement
|
||||
|
||||
if (fundMember != null) {
|
||||
|
||||
sick.setIdcard(StrUtil.isNotBlank(fundMember.getIdcard()) ? fundMember.getIdcard() : user == null ? null : user.getIdcard());
|
||||
|
||||
// sick.setUnitName(fundMember.getUnitName());
|
||||
|
||||
//本次导入的excel人员是否有重复数据
|
||||
@@ -175,9 +177,10 @@ public class SickHelpImportServiceImpl extends ViServiceImpl<SickHelp> implement
|
||||
|
||||
@Override
|
||||
public List<SickFundMember> searchUser(String key) {
|
||||
Cnd cnd = Cnd.where(Cnd.likeEX("userName", key)).or(Cnd.likeEX("loginName", key));
|
||||
Cnd cnd = Cnd.where(Cnd.likeEX("m.userName", key)).or(Cnd.likeEX("m.loginName", key));
|
||||
cnd.or(Cnd.likeEX("m.idcard", key)).or(Cnd.likeEX("u.idcard", key));
|
||||
|
||||
Sql sql = Sqls.create("select * from sick_fund_member $condition");
|
||||
Sql sql = Sqls.create("select m.*, IFNULL(NULLIF(m.idcard, ''), u.idcard) AS effectiveIdcard from sick_fund_member m left join user u on u.loginname = m.loginName $condition");
|
||||
sql.setCondition(cnd);
|
||||
Pagination pagination = listPageMap(1, 10, sql);
|
||||
return pagination.getList();
|
||||
|
||||
@@ -51,7 +51,8 @@ public class SickHelpListServiceImpl extends ViServiceImpl<SickHelp> implements
|
||||
SELECT
|
||||
sick.*,
|
||||
u.unionname as unionName,
|
||||
sfm.isMember
|
||||
sfm.isMember,
|
||||
IFNULL(NULLIF(sfm.idcard, ''), u.idcard) AS idcard
|
||||
FROM
|
||||
`sick_help` sick
|
||||
LEFT JOIN sick_fund_member sfm on sfm.loginName = sick.loginName
|
||||
@@ -75,6 +76,8 @@ public class SickHelpListServiceImpl extends ViServiceImpl<SickHelp> implements
|
||||
SqlExpressionGroup seg = new SqlExpressionGroup();
|
||||
seg.orLike("sick.userName", subsidyUser);
|
||||
seg.orLike("sick.loginName", subsidyUser);
|
||||
seg.orLike("sfm.idcard", subsidyUser);
|
||||
seg.orLike("u.idcard", subsidyUser);
|
||||
cnd.and(seg);
|
||||
}
|
||||
if (StrUtil.isNotBlank(pageForm.getPageOrderName()) && StrUtil.isNotBlank(pageForm.getPageOrderBy())) {
|
||||
|
||||
@@ -79,7 +79,7 @@ public class NutShiroProcessor extends AbstractProcessor {
|
||||
"/platform/qywechat/.*",
|
||||
"/platform/wechat/.*",
|
||||
"/platform/home/(500|403|404|UnknownAccountError|LockedAccountError)",
|
||||
// "/mobile/login",
|
||||
"/mobile/login",
|
||||
"/mobile/login/doLogin"
|
||||
);
|
||||
if (Arrays.stream(authIgnoreUrlArr).noneMatch(v -> Pattern.compile(v).matcher(requestURI).matches())) {
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
nutz.application.name=union_hhu
|
||||
server.port=8081
|
||||
server.port=8080
|
||||
server.host=0.0.0.0
|
||||
jetty.contextPath=/
|
||||
jetty.threadpool.idleTimeout=100000
|
||||
jetty.threadpool.minThreads=10
|
||||
jetty.threadpool.maxThreads=20000
|
||||
jetty.page.403=/error/403.htmla
|
||||
jetty.page.403=/error/403.html
|
||||
jetty.page.404=/error/404.html
|
||||
jetty.page.500=/error/500.html
|
||||
#结合ftp使用,或用nginx代理ftp路径
|
||||
jetty.staticPath=D://files
|
||||
jetty.staticPath=D://filesu
|
||||
#开发模式静态资源
|
||||
jetty.staticPathLocal=
|
||||
jetty.staticPathLocal=D:/gsProject/zhgh_hhu/src/main/resources/static
|
||||
nutz.mvc.ignore=^(.+[.])(jsp|png|gif|jpg|js|css|jpeg|html|mp3|mp4|ico|svg)$
|
||||
nutz.mvc.exclusions=/favicon/*,/assets/*,/druid/*,/upload/*
|
||||
ftp.enabled=true
|
||||
ftp.host=202.119.115.17
|
||||
ftp.port=21
|
||||
ftp.username=ftp_user
|
||||
ftp.password=zhgh@17server
|
||||
ftp.host=192.168.21.203
|
||||
ftp.port=9090
|
||||
ftp.username=ftpuser
|
||||
ftp.password=123456
|
||||
ftp.timeout=100
|
||||
redis.host=202.119.115.17
|
||||
redis.host=127.0.0.1
|
||||
redis.port=6379
|
||||
redis.timeout=2000
|
||||
redis.max_redir=10
|
||||
@@ -29,14 +29,14 @@ redis.maxTotal=850
|
||||
redis.pool.maxTotal=900
|
||||
redis.pool.maxIdle=500
|
||||
redis.pool.minIdle=50
|
||||
redis.password=dd3s
|
||||
#redis.password=dd3s
|
||||
#redis集群模式设置
|
||||
#redis.mode=cluster
|
||||
redis.mode=normal
|
||||
#redis.nodes=192.168.6.31:6377,192.168.6.31:6378,192.168.6.28:6377,192.168.6.28:6378,192.168.6.34:6377,192.168.6.34:6378
|
||||
jdbc.url=jdbc:mysql://202.119.115.17:3306/union?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
|
||||
jdbc.url=jdbc:mysql://192.168.21.215:3306/union_hhu?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
|
||||
jdbc.username=root
|
||||
jdbc.password=zhgh@17server
|
||||
jdbc.password=root
|
||||
jdbc.validationQuery=select 1
|
||||
jdbc.maxActive=900
|
||||
jdbc.testWhileIdle=true
|
||||
@@ -57,7 +57,7 @@ xsssql.ignore.urls=/platform/cms/content/article/addDo,/platform/sys/app/conf/ad
|
||||
/platform/reimbursement/applyNew/doAdd,/platform/member/common/saveUser,\
|
||||
/platform/sys/union/mange/unionPageData,/platform/fw/condolence/apply/doAdd
|
||||
#环境 dev/prod
|
||||
v.environment=prod
|
||||
v.environment=dev
|
||||
v.loginUrl=/sso/login
|
||||
v.loginUrlMobile=/mobile/cas/login
|
||||
#shiro.ini.path=shiro.ini
|
||||
@@ -86,7 +86,7 @@ shiro.url.login=/platform
|
||||
shiro.url.logout_redirect=/platform
|
||||
shiro.url.unauth=/platform
|
||||
#开发时设置本地路径,便于调试
|
||||
beetl.RESOURCE.rootLocal=
|
||||
beetl.RESOURCE.rootLocal=D:/gsProject/zhgh_hhu/src/main/resources/views/
|
||||
beetl.RESOURCE.root=views/
|
||||
beetl.DELIMITER_STATEMENT_START=<!--#
|
||||
beetl.DELIMITER_STATEMENT_END=#-->
|
||||
|
||||
@@ -92,6 +92,7 @@ layout("/layouts/platform.html"){
|
||||
<!-- <el-input v-model="row.userName" maxlength="10" size="small"></el-input>-->
|
||||
<!-- </template>-->
|
||||
</el-table-column>
|
||||
<el-table-column label="身份证号" prop="idcard" width="200"></el-table-column>
|
||||
<el-table-column label="单位" prop="unitName" show-overflow-tooltip width="150">
|
||||
<!-- <template scope="{row}">-->
|
||||
<!-- <el-input v-model="row.unitName" maxlength="10" size="small"></el-input>-->
|
||||
|
||||
@@ -76,41 +76,46 @@ layout("/layouts/platform.html"){
|
||||
<vi-title2 title="填写补助数据"></vi-title2>
|
||||
|
||||
<el-row>
|
||||
<el-col :lg="8" :xs="24">
|
||||
<el-col :lg="6" :xs="24">
|
||||
<el-form-item label="工号" prop="loginName">
|
||||
<el-select :disabled="formDisabled"
|
||||
:remote-method="searchUser"
|
||||
@change="userChange"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="输入工号或者姓名查询"
|
||||
placeholder="输入工号、姓名或身份证号查询"
|
||||
remote
|
||||
reserve-keyword
|
||||
style="width: 100%"
|
||||
v-model="formData.loginName">
|
||||
<el-option
|
||||
:key="item.loginName"
|
||||
:label="item.userName+'('+item.loginName+')'"
|
||||
:label="item.userName+'('+item.loginName+') '+(item.effectiveIdcard || '')"
|
||||
:value="item.loginName"
|
||||
v-for="item in userList"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :lg="8" :xs="24">
|
||||
<el-col :lg="6" :xs="24">
|
||||
<el-form-item label="姓名" prop="userName">
|
||||
<el-input :disabled="!this.formData.id"
|
||||
placeholder="输入工号之后自动显示"
|
||||
v-model="formData.userName"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :lg="8" :xs="24">
|
||||
<el-col :lg="6" :xs="24">
|
||||
<el-form-item label="身份证号" prop="idcard">
|
||||
<el-input placeholder="选择工号之后自动显示" readonly
|
||||
v-model="formData.idcard"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :lg="6" :xs="24">
|
||||
<el-form-item label="单位" prop="unitName">
|
||||
<el-input placeholder="输入工号之后自动显示"
|
||||
v-model="formData.unitName"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row :gutter="20">
|
||||
@@ -337,6 +342,7 @@ layout("/layouts/platform.html"){
|
||||
this.$set(this.formData, 'subsidyDesc', resp_data.subsidyDesc)
|
||||
this.$set(this.formData, 'subsidyMoney', resp_data.subsidyMoney)
|
||||
this.$set(this.formData, 'unitName', resp_data.unitName)
|
||||
this.$set(this.formData, 'idcard', resp_data.idcard)
|
||||
this.notifySuccess(resp_data.validMsg.join('、'))
|
||||
} else {
|
||||
this.notifyWarning(resp_data.validMsg.join('、'))
|
||||
@@ -376,6 +382,7 @@ layout("/layouts/platform.html"){
|
||||
this.$set(this.formData, 'userName', user.userName)
|
||||
this.$set(this.formData, 'unitName', user.unitName)
|
||||
this.$set(this.formData, 'loginName', user.loginName)
|
||||
this.$set(this.formData, 'idcard', user.effectiveIdcard)
|
||||
await this.getHistoryApplyRecords(user.loginName, this.formData.year)
|
||||
},
|
||||
async getHistoryApplyRecords(loginName, year) {
|
||||
@@ -401,6 +408,8 @@ layout("/layouts/platform.html"){
|
||||
await this.searchUser(loginName)
|
||||
resp.data.year = resp.data.year.toString()
|
||||
this.formData = resp.data
|
||||
const user = this.userList.find(v => v.loginName === loginName)
|
||||
this.$set(this.formData, 'idcard', user ? user.effectiveIdcard : null)
|
||||
await this.getHistoryApplyRecords(loginName, this.formData.year)
|
||||
}
|
||||
},
|
||||
@@ -412,4 +421,4 @@ layout("/layouts/platform.html"){
|
||||
|
||||
<!--#
|
||||
}
|
||||
#-->
|
||||
#-->
|
||||
|
||||
@@ -45,7 +45,7 @@ layout("/layouts/platform.html"){
|
||||
<div class="search-item">
|
||||
<div class="search-item-label">补助人:</div>
|
||||
<div class="search-item-option">
|
||||
<el-input clearable maxlength="10" placeholder="可输入补助人的工号或姓名进行查询"
|
||||
<el-input clearable maxlength="50" placeholder="可输入补助人的工号、姓名或身份证号进行查询"
|
||||
v-model.trim="pageForm.subsidyUser"></el-input>
|
||||
</div>
|
||||
</div>
|
||||
@@ -269,6 +269,7 @@ layout("/layouts/platform.html"){
|
||||
{prop: 'year', label: '年度', sortable: true, fixed: 'left'},
|
||||
{prop: 'userName', label: '姓名', fixed: 'left'},
|
||||
{prop: 'loginName', label: '工号', fixed: 'left', width: 120},
|
||||
{prop: 'idcard', label: '身份证号', fixed: 'left', width: 200},
|
||||
{prop: 'unionName', label: '分工会', sortable: true, width: 150},
|
||||
{prop: 'unitName', label: '单位', sortable: true, width: 150},
|
||||
|
||||
|
||||
@@ -100,6 +100,7 @@ layout("/layouts/platform.html"){
|
||||
{prop: 'userName', label: '姓名'},
|
||||
{prop: 'loginName', label: '工号'},
|
||||
{prop: 'sex', label: '性别'},
|
||||
{prop: 'idcard', label: '身份证号'},
|
||||
{prop: 'unitName', label: '单位'},
|
||||
{prop: 'userState', label: '状态'},
|
||||
{prop: 'mutualGoldStartTime', label: '入会时间'},
|
||||
@@ -163,4 +164,4 @@ layout("/layouts/platform.html"){
|
||||
|
||||
<!--#
|
||||
}
|
||||
#-->
|
||||
#-->
|
||||
|
||||
@@ -24,9 +24,9 @@ layout("/layouts/platform.html"){
|
||||
</div>
|
||||
|
||||
<div class="search-item">
|
||||
<div class="search-item-label">工号姓名:</div>
|
||||
<div class="search-item-label">会员信息:</div>
|
||||
<div class="search-item-option">
|
||||
<el-input clearable maxlength="10" placeholder="可输入会员的工号或姓名进行查询"
|
||||
<el-input clearable maxlength="50" placeholder="可输入会员的工号、姓名或身份证号进行查询"
|
||||
v-model.trim="pageForm.keyWord"></el-input>
|
||||
</div>
|
||||
</div>
|
||||
@@ -147,6 +147,10 @@ layout("/layouts/platform.html"){
|
||||
<el-radio-button label="女"></el-radio-button>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="身份证号" prop="idcard">
|
||||
<el-input @input="$refs.form.validateField('idcard')" maxlength="18"
|
||||
v-model.trim="formData.idcard"></el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="单位" prop="unitId">
|
||||
<el-select clearable filterable style="width: 100%"
|
||||
@@ -194,6 +198,20 @@ layout("/layouts/platform.html"){
|
||||
|
||||
</div>
|
||||
<script>
|
||||
const idcardPattern = /^[1-9]\d{5}(18|19|20|(3\d))\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/
|
||||
|
||||
const validateIdcard = (rule, value, callback) => {
|
||||
if (!value) {
|
||||
callback()
|
||||
return
|
||||
}
|
||||
if (!idcardPattern.test(value)) {
|
||||
callback(new Error('请输入正确的身份证号'))
|
||||
return
|
||||
}
|
||||
callback()
|
||||
}
|
||||
|
||||
const vue = new Vue({
|
||||
el: '#app',
|
||||
mixins: [initTableMixins],
|
||||
@@ -215,6 +233,7 @@ layout("/layouts/platform.html"){
|
||||
loginName: [{required: true, message: '请输入工号', trigger: ['change', 'blur']}],
|
||||
userName: [{required: true, message: '请输入姓名', trigger: ['change', 'blur']}],
|
||||
// sex: [{required: true, message: '请选择性别', trigger: ['change', 'blur']}],
|
||||
idcard: [{validator: validateIdcard, trigger: ['change', 'blur']}],
|
||||
unitName: [{required: false, message: '请输入单位', trigger: ['change', 'blur']}],
|
||||
unitId: [{required: true, message: '请选择单位', trigger: ['change', 'blur']}],
|
||||
isMember: [{required: true, message: '请选择是否会员', trigger: ['change', 'blur']}],
|
||||
@@ -230,6 +249,7 @@ layout("/layouts/platform.html"){
|
||||
userName: null,
|
||||
loginName: null,
|
||||
sex: null,
|
||||
idcard: null,
|
||||
unitName: null,
|
||||
unitId: null,
|
||||
isMember: null,
|
||||
@@ -302,6 +322,12 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
async doHandle() {
|
||||
const idcard = (this.formData.idcard || '').trim()
|
||||
if (idcard && !idcardPattern.test(idcard)) {
|
||||
this.notifyWarning('请输入正确的身份证号')
|
||||
return
|
||||
}
|
||||
this.$set(this.formData, 'idcard', idcard || null)
|
||||
const valid = await this.$refs.form.validate()
|
||||
if (!valid) return
|
||||
const url = this.formData.id ? '/doEdit' : '/doAdd'
|
||||
|
||||
@@ -1,10 +1,21 @@
|
||||
package io.v.nutz;
|
||||
|
||||
import cn.afterturn.easypoi.excel.ExcelExportUtil;
|
||||
import cn.afterturn.easypoi.excel.ExcelImportUtil;
|
||||
import cn.afterturn.easypoi.excel.annotation.Excel;
|
||||
import cn.afterturn.easypoi.excel.entity.ExportParams;
|
||||
import cn.afterturn.easypoi.excel.entity.ImportParams;
|
||||
import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
|
||||
import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
|
||||
import cn.afterturn.easypoi.excel.export.ExcelExportService;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import io.v.nutz.base.service.BaseService;
|
||||
import io.v.nutz.base.utils.MsgApi;
|
||||
import io.v.nutz.base.utils.Roles;
|
||||
import io.v.nutz.data.model.UserSource;
|
||||
import io.v.nutz.member.MemberMode;
|
||||
import io.v.nutz.question.model.Question_issue;
|
||||
import io.v.nutz.question.model.Question_wor;
|
||||
import io.v.nutz.service.AsyncService;
|
||||
import io.v.nutz.sickHelp.model.SickFundMember;
|
||||
import io.v.nutz.sys.models.Sys_user;
|
||||
@@ -13,6 +24,9 @@ import io.v.nutz.sys.models.User;
|
||||
import io.v.nutz.sys.services.SysConfigService;
|
||||
import io.v.nutz.sys.services.SysUserRoleService;
|
||||
import io.v.nutz.sys.services.SysUserService;
|
||||
import lombok.Data;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.apache.shiro.crypto.hash.Sha256Hash;
|
||||
import org.apache.shiro.util.ByteSource;
|
||||
import org.junit.Assert;
|
||||
@@ -26,20 +40,28 @@ import org.nutz.dao.Dao;
|
||||
import org.nutz.dao.Sqls;
|
||||
import org.nutz.dao.entity.Record;
|
||||
import org.nutz.dao.sql.Sql;
|
||||
import org.nutz.dao.util.Daos;
|
||||
import org.nutz.integration.jedis.RedisService;
|
||||
import org.nutz.ioc.loader.annotation.Inject;
|
||||
import org.nutz.ioc.loader.annotation.IocBean;
|
||||
import org.nutz.json.Json;
|
||||
import org.nutz.lang.Lang;
|
||||
import org.nutz.lang.random.R;
|
||||
import org.nutz.lang.util.NutMap;
|
||||
import org.nutz.trans.Trans;
|
||||
|
||||
import javax.servlet.ServletOutputStream;
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.net.URLEncoder;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Paths;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@@ -257,8 +279,157 @@ public class WebTestDemo extends Assert {
|
||||
|
||||
@Test
|
||||
public void testMsgToken2() {
|
||||
msgApi.sendMsg("1",List.of("18571562330"));
|
||||
msgApi.sendMsg("1", List.of("18571562330"));
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void evalQuestion() {
|
||||
String filePath = "C:\\Users\\jug\\Desktop\\新建文本文档.txt";
|
||||
List<Question_issue> issues = new ArrayList<>();
|
||||
Question_issue currentIssue = null;
|
||||
try {
|
||||
List<String> lines = Files.readAllLines(Paths.get(filePath));
|
||||
for (String line : lines) {
|
||||
line = line.trim();
|
||||
if (line.isEmpty()) {
|
||||
continue; // 跳过空行
|
||||
}
|
||||
|
||||
// 检测题目
|
||||
if (line.contains("[单选题]") || line.contains("【单选题】") || line.contains("[多选题]") || line.contains("【多选题】") || line.contains("[判断题]") || line.contains("【判断题】")) {
|
||||
// 如果当前有题目,添加到列表中
|
||||
if (currentIssue != null) {
|
||||
issues.add(currentIssue);
|
||||
}
|
||||
// 创建新的题目
|
||||
currentIssue = new Question_issue();
|
||||
// 去除题目中的标签
|
||||
String title = line.replaceAll("\\[单选题\\]", "").replaceAll("\\[多选题\\]", "")
|
||||
.replaceAll("【单选题】", "").replaceAll("【多选题】", "")
|
||||
.replaceAll("[判断题]", "").replaceAll("【判断题】", "");
|
||||
// 去除序号
|
||||
String[] patterns = {
|
||||
"\\d+、", // 例如:1、
|
||||
"\\d+\\.", // 例如:2.
|
||||
"\\(\\d+\\)", // 例如:(3)
|
||||
"第\\d+题" // 例如:第4题
|
||||
};
|
||||
for (String regex : patterns) {
|
||||
Pattern pattern = Pattern.compile(regex);
|
||||
Matcher matcher = pattern.matcher(title);
|
||||
title = matcher.replaceAll("");
|
||||
}
|
||||
currentIssue.setIname(title);
|
||||
currentIssue.setIisbd(true);
|
||||
// 设置是否单选
|
||||
if (line.contains("【单选题】") || line.contains("[单选题]")) {
|
||||
currentIssue.setItx(1);
|
||||
currentIssue.setIisdx(true);
|
||||
} else if (line.contains("【多选题】") || line.contains("[多选题]")) {
|
||||
currentIssue.setItx(1);
|
||||
currentIssue.setIisdx(false);
|
||||
} else if (line.contains("【判断题】") || line.contains("[判断题]")) {
|
||||
currentIssue.setItx(3);
|
||||
}
|
||||
// 设置分数
|
||||
currentIssue.setFraction(5);
|
||||
// 初始化选项列表
|
||||
currentIssue.setWors(new ArrayList<>());
|
||||
} else {
|
||||
// 处理选项
|
||||
if (currentIssue != null && StrUtil.isNotBlank(line)) {
|
||||
Question_wor wor = new Question_wor();
|
||||
wor.setWtxt(line);
|
||||
// 判断是否为正确答案
|
||||
if (line.contains("(正确答案)") || line.contains("(正确答案)")) {
|
||||
wor.setCorrect(true);
|
||||
// 去除正确答案标记
|
||||
wor.setWtxt(line.replace("(正确答案)", "").replace("(正确答案)", "").trim());
|
||||
} else {
|
||||
wor.setCorrect(false);
|
||||
}
|
||||
currentIssue.getWors().add(wor);
|
||||
}
|
||||
}
|
||||
}
|
||||
// 添加最后一题
|
||||
if (currentIssue != null) {
|
||||
issues.add(currentIssue);
|
||||
}
|
||||
|
||||
// 输出解析结果
|
||||
for (int i = 0; i < issues.size(); i++) {
|
||||
issues.get(i).setIqid("7b44be22c6b042699779c9df5754a4da");
|
||||
issues.get(i).setIpxbh(i + 1);
|
||||
dao.insert(issues.get(i));
|
||||
System.out.println(1);
|
||||
List<Question_wor> wors = new ArrayList<>();
|
||||
for (int i1 = 0; i1 < issues.get(i).getWors().size(); i1++) {
|
||||
Question_wor wor = issues.get(i).getWors().get(i1);
|
||||
wor.setWid(R.UU32());
|
||||
wor.setWiid(issues.get(i).getIid());
|
||||
wor.setWpxbh(i1 + 1);
|
||||
wors.add(wor);
|
||||
}
|
||||
dao.insert(wors);
|
||||
}
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void exportXlsx() throws IOException {
|
||||
List<a> list = ExcelImportUtil.importExcel(new File("D:\\gooleDownload\\无标题.xlsx"), a.class, new ImportParams());
|
||||
Map<String, List<a>> collect = list.stream().filter(v -> StrUtil.isNotBlank(v.getUnionname())).collect(Collectors.groupingBy(v -> v.getUnionname()));
|
||||
|
||||
ArrayList<ExcelExportEntity> entities = new ArrayList<>();
|
||||
|
||||
Workbook workbook = new XSSFWorkbook();
|
||||
|
||||
//每个分工会为一个sheet页
|
||||
for (Map.Entry<String, List<a>> entry : collect.entrySet()) {
|
||||
String sheetName = entry.getKey();
|
||||
List<a> value = entry.getValue();
|
||||
for (int i = 0; i < value.size(); i++) {
|
||||
value.get(i).setNo(i + 1);
|
||||
}
|
||||
|
||||
ExcelExportService service = new ExcelExportService();
|
||||
ExportParams exportParams = new ExportParams();
|
||||
exportParams.setTitle(sheetName);
|
||||
exportParams.setSheetName(sheetName + "(" + value.size() + ")人");
|
||||
exportParams.setType(ExcelType.XSSF);
|
||||
// service.createSheetForMap(workbook, exportParams, entityList, value);
|
||||
service.createSheet(workbook, exportParams, a.class, value);
|
||||
}
|
||||
|
||||
FileOutputStream outputStream = new FileOutputStream("E:\\a.xlsx");
|
||||
workbook.write(outputStream);
|
||||
outputStream.close();
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class a {
|
||||
@Excel(name = "序号")
|
||||
private Integer no;
|
||||
@Excel(name = "工号", width = 20)
|
||||
private String loginname;
|
||||
@Excel(name = "姓名", width = 20)
|
||||
private String username;
|
||||
@Excel(name = "性别", width = 20)
|
||||
private String sex;
|
||||
@Excel(name = "出生年月", width = 20)
|
||||
private String birthday;
|
||||
@Excel(name = "在职状态", width = 20)
|
||||
private String userState;
|
||||
@Excel(name = "人员类型", width = 20)
|
||||
private String personType;
|
||||
@Excel(name = "单位", width = 20)
|
||||
private String unitName;
|
||||
@Excel(name = "分工会", width = 20)
|
||||
private String unionname;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,159 @@
|
||||
nutz.application.name=union_hhu
|
||||
server.port=8080
|
||||
server.host=0.0.0.0
|
||||
jetty.contextPath=/
|
||||
jetty.threadpool.idleTimeout=100000
|
||||
jetty.threadpool.minThreads=10
|
||||
jetty.threadpool.maxThreads=20000
|
||||
jetty.page.403=/error/403.html
|
||||
jetty.page.404=/error/404.html
|
||||
jetty.page.500=/error/500.html
|
||||
#结合ftp使用,或用nginx代理ftp路径
|
||||
jetty.staticPath=D://filesu
|
||||
#开发模式静态资源
|
||||
jetty.staticPathLocal=D:/gsProject/zhgh_hhu/src/main/resources/static
|
||||
nutz.mvc.ignore=^(.+[.])(jsp|png|gif|jpg|js|css|jpeg|html|mp3|mp4|ico|svg)$
|
||||
nutz.mvc.exclusions=/favicon/*,/assets/*,/druid/*,/upload/*
|
||||
ftp.enabled=true
|
||||
ftp.host=192.168.21.203
|
||||
ftp.port=9090
|
||||
ftp.username=ftpuser
|
||||
ftp.password=123456
|
||||
ftp.timeout=100
|
||||
redis.host=127.0.0.1
|
||||
redis.port=6379
|
||||
redis.timeout=2000
|
||||
redis.max_redir=10
|
||||
redis.database=0
|
||||
redis.maxTotal=850
|
||||
redis.pool.maxTotal=900
|
||||
redis.pool.maxIdle=500
|
||||
redis.pool.minIdle=50
|
||||
#redis.password=dd3s
|
||||
#redis集群模式设置
|
||||
#redis.mode=cluster
|
||||
redis.mode=normal
|
||||
#redis.nodes=192.168.6.31:6377,192.168.6.31:6378,192.168.6.28:6377,192.168.6.28:6378,192.168.6.34:6377,192.168.6.34:6378
|
||||
jdbc.url=jdbc:mysql://192.168.21.215:3306/union_hhu?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
|
||||
jdbc.username=root
|
||||
jdbc.password=root
|
||||
jdbc.validationQuery=select 1
|
||||
jdbc.maxActive=900
|
||||
jdbc.testWhileIdle=true
|
||||
jdbc.connectionProperties=druid.stat.slowSqlMillis=2000
|
||||
jdbc.defaultAutoCommit=true
|
||||
#jdbc.url=jdbc:oracle:thin:@//localhost:1521/orcl
|
||||
#jdbc.username=budwk
|
||||
#jdbc.password=pass
|
||||
#jdbc.validationQuery=select 1 from dual
|
||||
#jdbc.maxActive=10
|
||||
#jdbc.testWhileIdle=true
|
||||
#jdbc.connectionProperties=druid.stat.slowSqlMillis=2000
|
||||
#jdbc.defaultAutoCommit=true
|
||||
xsssql.ignore.urls=/platform/cms/content/article/addDo,/platform/sys/app/conf/addDo,/platform/sys/app/conf/editDo,/platform/home,\
|
||||
/sso/login,/platform/sys/log/data,/platform/common/user/userPageData,/platform/fw/condolence/applyWrite/doAdd,/platform/fw/condolence/ucr/union/doReview,\
|
||||
/platform/fw/condolence/myList/doEdit,/platform/fw/condolence/fr/doReview,/platform/fw/condolence/vcr/doReview,\
|
||||
/platform/sys/menu/addDo,/platform/sys/menu/editMenuDo,/platform/jdh/level2/info/doAdd,\
|
||||
/platform/reimbursement/applyNew/doAdd,/platform/member/common/saveUser,\
|
||||
/platform/sys/union/mange/unionPageData,/platform/fw/condolence/apply/doAdd
|
||||
#环境 dev/prod
|
||||
v.environment=dev
|
||||
v.loginUrl=/sso/login
|
||||
v.loginUrlMobile=/mobile/cas/login
|
||||
#shiro.ini.path=shiro.ini
|
||||
shiro.objects=platformAuthc,AuthenticationFilter,Cas20ProxyReceivingTicketValidationFilter,platformRealm,authenticationStrategy
|
||||
#end
|
||||
shiro.ini.urls:
|
||||
/sso/**=Cas20ProxyReceivingTicketValidationFilter
|
||||
/platform/wechat/doLogin=Cas20ProxyReceivingTicketValidationFilter
|
||||
/mobile/login=anon
|
||||
/platform/jsz/login=anon
|
||||
/assets/**=anon
|
||||
/**=anon
|
||||
/signature/**=anon
|
||||
/platform/**=AuthenticationFilter
|
||||
#end
|
||||
#设置session会话超时时间(单位:毫秒)
|
||||
shiro.workersCongressSession.manager.globalSessionTimeout=3600000
|
||||
#设置redis缓存时间(单位:秒)与上面的毫秒数保持一致
|
||||
shiro.workersCongressSession.cache.redis.ttl=3600
|
||||
#缓存名和 RedisConstant.PLATFORM_REDIS_PREFIX 常量保持一致
|
||||
shiro.workersCongressSession.dao.activeSessionsCacheName=budwk5mini:shiro:activeSessionCache
|
||||
#使用redis二级缓存
|
||||
shiro.workersCongressSession.cache.type=lcache
|
||||
shiro.workersCongressSession.enable=true
|
||||
shiro.url.login=/platform
|
||||
shiro.url.logout_redirect=/platform
|
||||
shiro.url.unauth=/platform
|
||||
#开发时设置本地路径,便于调试
|
||||
beetl.RESOURCE.rootLocal=D:/gsProject/zhgh_hhu/src/main/resources/views/
|
||||
beetl.RESOURCE.root=views/
|
||||
beetl.DELIMITER_STATEMENT_START=<!--#
|
||||
beetl.DELIMITER_STATEMENT_END=#-->
|
||||
beetl.FT.escape=io.v.nutz.web.commons.ext.beetl.HtmlEscapeFormat
|
||||
#用法: ${"wizzer",escape}
|
||||
beetl.FT.filesize=io.v.nutz.web.commons.ext.beetl.FileSizeFormat
|
||||
#用法: ${10241024,filesize}
|
||||
beetl.FT.html2txt=io.v.nutz.web.commons.ext.beetl.Html2TxtFormat
|
||||
#用法: ${"",html2txt="100"} 截取100字符
|
||||
beetl.FT.strlen=io.v.nutz.web.commons.ext.beetl.StrlenFormat
|
||||
#用法: ${"",strlen="100"} 截取100字符
|
||||
#获取系统参数
|
||||
beetl.FN.getSysConfig=io.v.nutz.web.commons.ext.beetl.GetSysConfig
|
||||
#==============================================================
|
||||
#Configure Main Scheduler Properties
|
||||
#==============================================================
|
||||
#quartz延迟启动秒数
|
||||
quartz.startupDelay=10
|
||||
quartz.scheduler.instanceName=defaultScheduler
|
||||
quartz.scheduler.instanceId=AUTO
|
||||
#==============================================================
|
||||
#Configure JobStore isClustered=启用集群模式
|
||||
#==============================================================
|
||||
quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
|
||||
quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.StdJDBCDelegate
|
||||
#quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
|
||||
#quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
|
||||
#Other delegates can see: http://www.quartz-scheduler.org/documentation/quartz-2.x/tutorials/tutorial-lesson-09.html
|
||||
quartz.jobStore.dataSource=myDS
|
||||
quartz.jobStore.tablePrefix=SYS_QRTZ_
|
||||
quartz.jobStore.isClustered=true
|
||||
quartz.jobStore.clusterCheckinInterval=20000
|
||||
quartz.jobStore.maxMisfiresToHandleAtATime=120
|
||||
quartz.jobStore.misfireThreshold=120000
|
||||
quartz.jobStore.txIsolationLevelSerializable=false
|
||||
#==============================================================
|
||||
#Configure ThreadPool
|
||||
#==============================================================
|
||||
quartz.threadPool.class=org.quartz.simpl.SimpleThreadPool
|
||||
quartz.threadPool.threadCount=2
|
||||
quartz.threadPool.threadPriority=5
|
||||
quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread=true
|
||||
#==============================================================
|
||||
#Skip Check Update
|
||||
#update:true
|
||||
#not update:false
|
||||
#==============================================================
|
||||
quartz.scheduler.skipUpdateCheck=true
|
||||
#============================================================================
|
||||
# Configure Plugins
|
||||
#============================================================================
|
||||
quartz.plugin.triggHistory.class=org.quartz.plugins.history.LoggingJobHistoryPlugin
|
||||
quartz.plugin.shutdownhook.class=org.quartz.plugins.management.ShutdownHookPlugin
|
||||
quartz.plugin.shutdownhook.cleanShutdown=true
|
||||
#============================================================================
|
||||
# NutDao dataSource
|
||||
#============================================================================
|
||||
quartz.dataSource.myDS.connectionProvider.class=io.v.nutz.task.conn.NutConnectionProvider
|
||||
logback.exts.loglevel.cache.prefix=budwk5mini:logback:loglevel:
|
||||
#动态修改日志等级
|
||||
logback.exts.loglevel.enabled=true
|
||||
#心跳间隔(单位:秒)
|
||||
logback.exts.loglevel.heartbeat=15
|
||||
#为应用管理提供支持,启用获取部署版本号,结合守护进程使用
|
||||
# 详见 https://github.com/Wizzercn/PythonWk
|
||||
logback.exts.deploy.enabled=false
|
||||
#为应用管理提供支持,部署根路径
|
||||
logback.exts.deploy.root=/data/budwk5mini
|
||||
#应用管理通信接口签名,正式环境务必更改
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
____ ___ ___ __ _______ __ __ _ _
|
||||
| _ \ | \ \ / / | \ \ / / ____| | \/ (_) (_)
|
||||
| |_) |_ _ __| |\ \ /\ / /| | _______\ \ / /| |__ | \ / |_ _ __ _
|
||||
| _ <| | | |/ _` | \ \/ \/ / | |/ /______\ \/ / |___ \ | |\/| | | '_ \| |
|
||||
| |_) | |_| | (_| | \ /\ / | < \ / ___) | | | | | | | | | |
|
||||
|____/ \__,_|\__,_| \/ \/ |_|\_\ \/ |____/ |_| |_|_|_| |_|_|
|
||||
|
||||
:: Built with BudWk.com [wizzer@qq.com]
|
||||
@@ -0,0 +1,18 @@
|
||||
var chain={
|
||||
"default" : {
|
||||
"ps" : [
|
||||
"io.v.nutz.web.commons.proc.LogTimeProcessor",
|
||||
"io.v.nutz.web.commons.proc.GlobalsSettingProcessor",
|
||||
"org.nutz.mvc.impl.processor.UpdateRequestAttributesProcessor",
|
||||
"org.nutz.mvc.impl.processor.EncodingProcessor",
|
||||
"org.nutz.mvc.impl.processor.ModuleProcessor",
|
||||
"org.nutz.mvc.impl.processor.ActionFiltersProcessor",
|
||||
"io.v.nutz.web.commons.proc.XssSqlFilterProcessor",
|
||||
"io.v.nutz.web.commons.proc.NutShiroProcessor",
|
||||
"org.nutz.mvc.impl.processor.AdaptorProcessor",
|
||||
"org.nutz.mvc.impl.processor.MethodInvokeProcessor",
|
||||
"org.nutz.mvc.impl.processor.ViewProcessor"
|
||||
],
|
||||
"error" : 'io.v.nutz.web.commons.proc.WkFailProcessor'
|
||||
}
|
||||
};
|
||||
@@ -0,0 +1,50 @@
|
||||
/* cms_menu_01 */
|
||||
update sys_menu set location=10 where path='0001'
|
||||
/* cms_menu_02 */
|
||||
update sys_menu set location=8 where path='0002'
|
||||
/* cms_menu_03 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('02e86a61e99746bea34236ea73dd52a5','','0003','CMS','CMS','menu','','','ti-world','1','0','cms',NULL,'9','1','1a19ef09b12344b4a797d6e6dfe7fb29','1468895671','0')
|
||||
/* cms_menu_04 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('077cb6be4c7c41cc8955ee045a4f0286','68cdbf694f71445c8587a20234d6fe31','0003000300020001','添加链接','Add','data','','','','0','0','cms.link.link.add',NULL,'47','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468897043','0')
|
||||
/* cms_menu_05 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('17500ef3a9e44b4fabb240162a164fcb','6075fc0cf0ef441b9d93cc3cab3445bf','0003000200020003','删除文章','Delete','data','','','','0','0','cms.content.article.delete',NULL,'40','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896170','0')
|
||||
/* cms_menu_06 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('31ed2243077c44448cce26abfd5ae574','9822bafbe3454dfd8e8b974ebc304d03','0003000300010002','修改分类','Edit','data','','','','0','0','cms.link.class.edit',NULL,'44','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896957','0')
|
||||
/* cms_menu_07 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('33aed9298643424783116e0cf0f7fcbe','6075fc0cf0ef441b9d93cc3cab3445bf','0003000200020001','添加文章','Add','data','','','','0','0','cms.content.article.add',NULL,'38','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896151','0')
|
||||
/* cms_menu_08 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('36e0faf5062b4f6b95d4167cbb1f8fea','68cdbf694f71445c8587a20234d6fe31','0003000300020002','修改链接','Edit','data','','','','0','0','cms.link.link.edit',NULL,'48','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468897051','0')
|
||||
/* cms_menu_09 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('3c24111091ad4a70ad2d9cc361311d2f','68cdbf694f71445c8587a20234d6fe31','0003000300020003','删除链接','Delete','data','','','','0','0','cms.link.link.delete',NULL,'49','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468897060','0')
|
||||
/* cms_menu_10 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('3f330d729ca34dc9825c46122be1bfae','02e86a61e99746bea34236ea73dd52a5','00030003','广告链接','AD','menu','','','ti-link','1','0','cms.link',NULL,'41','1','1a19ef09b12344b4a797d6e6dfe7fb29','1468896230','0')
|
||||
/* cms_menu_11 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('4781372b00bb4d52b429b58e72b80c68','b2631bbdbf824cc4b74d819c87962c0d','0003000200010001','添加栏目','Add','data','','','','0','0','cms.content.channel.add',NULL,'33','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896049','0')
|
||||
/* cms_menu_12 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('50ba60ee650e4c739e6abc3ab71e4960','b2631bbdbf824cc4b74d819c87962c0d','0003000200010004','栏目排序','Sort','data','','','','0','0','cms.content.channel.sort',NULL,'36','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896092','0')
|
||||
/* cms_menu_13 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('6075fc0cf0ef441b9d93cc3cab3445bf','6b6de8c720c645a1808e1c3e9ccbfc90','000300020002','文章管理','Article','menu','/platform/cms/article','data-pjax','','1','0','cms.content.article',NULL,'37','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896141','0')
|
||||
/* cms_menu_14 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('68cdbf694f71445c8587a20234d6fe31','3f330d729ca34dc9825c46122be1bfae','000300030002','链接管理','Link','menu','/platform/cms/link/link','data-pjax','','1','0','cms.link.link',NULL,'46','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468897031','0')
|
||||
/* cms_menu_15 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('6b6de8c720c645a1808e1c3e9ccbfc90','02e86a61e99746bea34236ea73dd52a5','00030002','内容管理','Content','menu','','','ti-pencil-alt','1','0','cms.content',NULL,'31','1','1a19ef09b12344b4a797d6e6dfe7fb29','1468895990','0')
|
||||
/* cms_menu_16 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('7125a72beee34b21ab3df9bf01b7bce6','9822bafbe3454dfd8e8b974ebc304d03','0003000300010003','删除分类','Delete','data','','','','0','0','cms.link.class.delete',NULL,'45','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896968','0')
|
||||
/* cms_menu_17 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('73a29d3f99224426b5a87c92da122275','d1e991ad38a8424daf9f7eb000ee27f4','0003000100010001','保存配置','Save','data','','','','0','0','cms.site.settings.save',NULL,'30','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468895899','0')
|
||||
/* cms_menu_18 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('7db6207d0dab4d6e95a7eee4f2efe875','9822bafbe3454dfd8e8b974ebc304d03','0003000300010001','添加分类','Add','data','','','','0','0','cms.link.class.add',NULL,'43','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896947','0')
|
||||
/* cms_menu_19 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('9822bafbe3454dfd8e8b974ebc304d03','3f330d729ca34dc9825c46122be1bfae','000300030001','链接分类','Class','menu','/platform/cms/link/class','data-pjax','','1','0','cms.link.class',NULL,'42','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896932','0')
|
||||
/* cms_menu_20 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('b2631bbdbf824cc4b74d819c87962c0d','6b6de8c720c645a1808e1c3e9ccbfc90','000300020001','栏目管理','Channel','menu','/platform/cms/channel','data-pjax','','1','0','cms.content.channel',NULL,'32','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896018','0')
|
||||
/* cms_menu_21 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('d1e991ad38a8424daf9f7eb000ee27f4','d920314e925c451da6d881e7a29743b7','000300010001','网站配置','Settings','menu','/platform/cms/site','data-pjax','','1','0','cms.site.settings',NULL,'29','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468895881','0')
|
||||
/* cms_menu_22 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('d920314e925c451da6d881e7a29743b7','02e86a61e99746bea34236ea73dd52a5','00030001','站点管理','Site','menu','','','ti-world','1','0','cms.site',NULL,'28','1','1a19ef09b12344b4a797d6e6dfe7fb29','1468895821','0')
|
||||
/* cms_menu_23 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('e461c62a1d5441619cd35612f3b40691','b2631bbdbf824cc4b74d819c87962c0d','0003000200010002','修改栏目','Edit','data','','','','0','0','cms.content.channel.edit',NULL,'34','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896060','0')
|
||||
/* cms_menu_24 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('ef9f436c61654ec09efbfa79a40061cf','6075fc0cf0ef441b9d93cc3cab3445bf','0003000200020002','修改文章','Edit','data','','','','0','0','cms.content.article.edit',NULL,'39','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896159','0')
|
||||
/* cms_menu_25 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('f6fba69c3b704d79834b8bd2cc753729','b2631bbdbf824cc4b74d819c87962c0d','0003000200010003','删除栏目','Delete','data','','','','0','0','cms.content.channel.delete',NULL,'35','0','1a19ef09b12344b4a797d6e6dfe7fb29','1468896072','0')
|
||||
@@ -0,0 +1,103 @@
|
||||
/* wx_menu_01 */
|
||||
update sys_menu set location=10 where path='0001'
|
||||
/* wx_menu_02 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('b0edc6861a494b79b97990dc05f0a524','','0002','微信','Wechat','menu','','','fa fa-weixin','1','0','wx',NULL,'8','1','','1467471229','0')
|
||||
/* wx_menu_03 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('e4256d7b0ffc4a02906cf900322b6213','b0edc6861a494b79b97990dc05f0a524','00020001','微信会员','Member','menu','','','fa fa-user','1','0','wx.user',NULL,'1','1','','1467471292','0')
|
||||
/* wx_menu_04 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('b19b23b0459a4754bf1fb8cb234450f2','e4256d7b0ffc4a02906cf900322b6213','000200010001','会员列表','List','menu','/platform/wx/user/index','data-pjax','','1','0','wx.user.list',NULL,'2','0','','1467471357','0')
|
||||
/* wx_menu_05 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('4dc997fef71e4862b9db22de8e99a618','b19b23b0459a4754bf1fb8cb234450f2','0002000100010001','同步会员信息','Sync','data','','','','0','0','wx.user.list.sync',NULL,'0','0','','1467473044','0')
|
||||
/* wx_menu_06 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('9f20a757a6bc40ddbb650c70debbf660','b0edc6861a494b79b97990dc05f0a524','00020002','消息管理','Message','menu','','','ti-pencil-alt','1','0','wx.msg',NULL,'3','1','','1467471415','0')
|
||||
/* wx_menu_07 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('f426468abf714b1599729f8c36ebbb0d','9f20a757a6bc40ddbb650c70debbf660','000200020001','会员消息','Msg','menu','/platform/wx/msg/user','data-pjax','','1','0','wx.msg.user',NULL,'4','1','','1467471478','0')
|
||||
/* wx_menu_08 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('1734e586e96941268a4c5248b593cef9','f426468abf714b1599729f8c36ebbb0d','0002000200010001','回复消息','Reply','data','','','','0','0','wx.msg.user.reply',NULL,'0','0','','1467473127','0')
|
||||
/* wx_menu_09 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('6bb17a41f6394ed0a8a6faf5ff781354','9f20a757a6bc40ddbb650c70debbf660','000200020002','群发消息','Mass','menu','/platform/wx/msg/mass','data-pjax','','1','0','wx.msg.mass',NULL,'5','0','','1467471561','0')
|
||||
/* wx_menu_10 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('56d0658c5a8848818ac05e8ffa5c0570','6bb17a41f6394ed0a8a6faf5ff781354','0002000200020001','添加图文','Add','data','','','','0','0','wx.msg.mass.addNews',NULL,'0','0','','1467473338','0')
|
||||
/* wx_menu_11 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('ce709456e867425297955b3c40406d7e','6bb17a41f6394ed0a8a6faf5ff781354','0002000200020002','删除图文','Delete','data','','','','0','0','wx.msg.mass.delNews',NULL,'0','0','','1467473363','0')
|
||||
/* wx_menu_12 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('3099f497480c4b1987bce3f3a26c3fb4','6bb17a41f6394ed0a8a6faf5ff781354','0002000200020003','群发消息','Push','data','','','','0','0','wx.msg.mass.pushNews',NULL,'0','0','','1467473400','0')
|
||||
/* wx_menu_13 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('4cd8e4e9519e4cff95465194fdcc8d88','b0edc6861a494b79b97990dc05f0a524','00020003','自动回复','AutoReply','menu','','','ti-back-left','1','0','wx.reply',NULL,'6','1','','1467471610','0')
|
||||
/* wx_menu_14 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('234f8ec3c2bc42bf9f6202aecae36fd6','4cd8e4e9519e4cff95465194fdcc8d88','000200030001','文本内容','Txt','menu','/platform/wx/reply/txt','data-pjax','','1','0','wx.reply.txt',NULL,'7','0','','1467471884','0')
|
||||
/* wx_menu_15 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('c3a44b478d3241b899b9c3f4611bc2b6','234f8ec3c2bc42bf9f6202aecae36fd6','0002000300010001','添加文本','Add','data','','','','0','0','wx.reply.txt.add',NULL,'0','0','','1467473460','0')
|
||||
/* wx_menu_16 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('fd63a8e389e04ff3a86c3cea53a3b9d5','234f8ec3c2bc42bf9f6202aecae36fd6','0002000300010002','修改文本','Edit','data','','','','0','0','wx.reply.txt.edit',NULL,'0','0','','1467473519','0')
|
||||
/* wx_menu_17 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('7c040dfd8db347e5956a3bc1764653dc','234f8ec3c2bc42bf9f6202aecae36fd6','0002000300010003','删除文本','Delete','data','','','','0','0','wx.reply.txt.delete',NULL,'0','0','','1467473540','0')
|
||||
/* wx_menu_18 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('234f8ec3c2bc42bf9f6202aecae36f99','4cd8e4e9519e4cff95465194fdcc8d88','000200030005','图片内容','Img','menu','/platform/wx/reply/img','data-pjax','','1','0','wx.reply.img',NULL,'8','0','','1467471884','0')
|
||||
/* wx_menu_19 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('c3a44b478d3241b899b9c3f4611bc216','234f8ec3c2bc42bf9f6202aecae36f99','0002000300050001','添加图片','Add','data','','','','0','0','wx.reply.img.add',NULL,'0','0','','1467473460','0')
|
||||
/* wx_menu_20 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('fd63a8e389e04ff3a86c3cea53a3b925','234f8ec3c2bc42bf9f6202aecae36f99','0002000300050002','修改图片','Edit','data','','','','0','0','wx.reply.img.edit',NULL,'0','0','','1467473519','0')
|
||||
/* wx_menu_21 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('7c040dfd8db347e5956a3bc17646533c','234f8ec3c2bc42bf9f6202aecae36f99','0002000300050003','删除图片','Delete','data','','','','0','0','wx.reply.img.delete',NULL,'0','0','','1467473540','0')
|
||||
/* wx_menu_22 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('17e1ee23ca1443f1bc886c2f5eb7c24b','4cd8e4e9519e4cff95465194fdcc8d88','000200030002','图文内容','News','menu','/platform/wx/reply/news','data-pjax','','1','0','wx.reply.news',NULL,'9','0','','1467471926','0')
|
||||
/* wx_menu_23 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('2275cb125710414e91b617dd7c62f12c','17e1ee23ca1443f1bc886c2f5eb7c24b','0002000300020001','添加图文','add','data','','','','0','0','wx.reply.news.add',NULL,'0','0','','1467473585','0')
|
||||
/* wx_menu_24 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('0a972ce655cb4c84809d58668b655900','17e1ee23ca1443f1bc886c2f5eb7c24b','0002000300020002','修改图文','Edit','data','','','','0','0','wx.reply.news.edit',NULL,'0','0','','1467473596','0')
|
||||
/* wx_menu_25 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('fc52d5284b8f4522802383c1ef732242','17e1ee23ca1443f1bc886c2f5eb7c24b','0002000300020003','删除图文','Delete','data','','','','0','0','wx.reply.news.delete',NULL,'0','0','','1467473606','0')
|
||||
/* wx_menu_26 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('2cb327ad59b140828fd26eb2a46cb948','4cd8e4e9519e4cff95465194fdcc8d88','000200030003','关注自动回复','Follow','menu','/platform/wx/reply/conf/follow','data-pjax','','1','0','wx.reply.follow',NULL,'10','0','','1467472280','0')
|
||||
/* wx_menu_27 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('dd965b2c1dfd493fb5efc7e4bcac99d4','2cb327ad59b140828fd26eb2a46cb948','0002000300030001','添加绑定','Add','data','','','','0','0','wx.reply.follow.add',NULL,'0','0','','1467474026','0')
|
||||
/* wx_menu_28 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('30a5e70a1456447ebf90b5546e9bc321','2cb327ad59b140828fd26eb2a46cb948','0002000300030002','修改绑定','Edit','data','','','','0','0','wx.reply.follow.edit',NULL,'0','0','','1467474056','0')
|
||||
/* wx_menu_29 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('2a63040409094f1e9dc535dd78ce15b7','2cb327ad59b140828fd26eb2a46cb948','0002000300030003','删除绑定','Delete','data','','','','0','0','wx.reply.follow.delete',NULL,'0','0','','1467474080','0')
|
||||
/* wx_menu_30 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('0706112ff5dc46e388064a99bcdb0561','4cd8e4e9519e4cff95465194fdcc8d88','000200030004','关键词回复','Keyword','menu','/platform/wx/reply/conf/keyword','data-pjax','','1','0','wx.reply.keyword',NULL,'11','0','','1467472362','0')
|
||||
/* wx_menu_31 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('e864c78aba63448892cbcb6a3a7f4da7','0706112ff5dc46e388064a99bcdb0561','0002000300040001','添加绑定','Add','data','','','','0','0','wx.reply.keyword.add',NULL,'0','0','','1467474113','0')
|
||||
/* wx_menu_32 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('ff6cd243a77c4ae98dacf6149c816c75','0706112ff5dc46e388064a99bcdb0561','0002000300040002','修改绑定','Edit','data','','','','0','0','wx.reply.keyword.edit',NULL,'0','0','','1467474125','0')
|
||||
/* wx_menu_33 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('733d3f35d49f45af99ca9220048583ba','0706112ff5dc46e388064a99bcdb0561','0002000300040003','删除绑定','Delete','data','','','','0','0','wx.reply.keyword.delete',NULL,'0','0','','1467474136','0')
|
||||
/* wx_menu_34 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('bcf64d623fdd4519ae345b7a08c071a1','b0edc6861a494b79b97990dc05f0a524','00020004','微信配置','Config','menu','','','fa fa-weixin','1','0','wx.conf',NULL,'12','1','','1467472498','0')
|
||||
/* wx_menu_35 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('66cc21d7ce104dd6877cbce114c59fb3','bcf64d623fdd4519ae345b7a08c071a1','000200040001','帐号配置','Account','menu','/platform/wx/conf/account','data-pjax','','1','0','wx.conf.account',NULL,'13','0','','1467472624','0')
|
||||
/* wx_menu_36 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('309dc29ad3c34408a68df8f867a5c9ff','66cc21d7ce104dd6877cbce114c59fb3','0002000400010001','添加帐号','Add','data','','','','0','0','wx.conf.account.add',NULL,'0','0','','1467474187','0')
|
||||
/* wx_menu_37 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('96554b09a2dd4f82bab7546fa59acd35','66cc21d7ce104dd6877cbce114c59fb3','0002000400010002','修改帐号','Edit','data','','','','0','0','wx.conf.account.edit',NULL,'0','0','','1467474197','0')
|
||||
/* wx_menu_38 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('d568f4c2b687404e8aec7b9edcae5767','66cc21d7ce104dd6877cbce114c59fb3','0002000400010003','删除帐号','Delete','data','','','','0','0','wx.conf.account.delete',NULL,'0','0','','1467474209','0')
|
||||
/* wx_menu_39 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('2fab774f8b6d40cb9d7e187babab2d91','bcf64d623fdd4519ae345b7a08c071a1','000200040002','菜单配置','Menu','menu','/platform/wx/conf/menu','data-pjax','','1','0','wx.conf.menu',NULL,'14','0','','1467472649','0')
|
||||
/* wx_menu_40 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('45d958ca78304f25b51f6c71cf66f6d8','2fab774f8b6d40cb9d7e187babab2d91','0002000400020001','添加菜单','Add','data','','','','0','0','wx.conf.menu.add',NULL,'0','0','','1467474283','0')
|
||||
/* wx_menu_41 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('44da90bc76a5419a841f4924333f7a66','2fab774f8b6d40cb9d7e187babab2d91','0002000400020002','修改菜单','Edit','data','','','','0','0','wx.conf.menu.edit',NULL,'0','0','','1467474294','0')
|
||||
/* wx_menu_42 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('9a9557177d334c209cf73c3817fe3b63','2fab774f8b6d40cb9d7e187babab2d91','0002000400020003','删除菜单','Delete','data','','','','0','0','wx.conf.menu.delete',NULL,'0','0','','1467474304','0')
|
||||
/* wx_menu_43 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('0a43d291e0c94ad88c8b690009279e34','2fab774f8b6d40cb9d7e187babab2d91','0002000400020004','保存排序','Save','data','','','','0','0','wx.conf.menu.sort',NULL,'0','0','','1467474314','0')
|
||||
/* wx_menu_44 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('5244f5c38eb24b918e9ad64d456daa38','2fab774f8b6d40cb9d7e187babab2d91','0002000400020005','推送到微信','Push','data','','','','0','0','wx.conf.menu.push',NULL,'0','0','','1467474330','0')
|
||||
/* wx_menu_45 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('6afc5075913d4df4b44a6476080e35a0','b0edc6861a494b79b97990dc05f0a524','00020005','模板消息','Template','menu','','','ti-notepad','1','0','wx.tpl',NULL,'50','1','','1470406797','0')
|
||||
/* wx_menu_46 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('1385ae887e5c4b8aa33fbf228be7f907','6afc5075913d4df4b44a6476080e35a0','000200050001','模板编号','Id','menu','/platform/wx/tpl/id','data-pjax','','1','0','wx.tpl.id',NULL,'51','0','','1470406854','0')
|
||||
/* wx_menu_47 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('e6b6224617b04090a76e46a4b048fb96','1385ae887e5c4b8aa33fbf228be7f907','0002000500010001','添加编号','Add','data','','','','0','0','wx.tpl.id.add',NULL,'54','0','','1470407055','0')
|
||||
/* wx_menu_48 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('3888f05aa4064f788ba7ec51c495ce7c','1385ae887e5c4b8aa33fbf228be7f907','0002000500010002','删除编号','Delete','data','','','','0','0','wx.tpl.id.delete',NULL,'55','0','','1470407068','0')
|
||||
/* wx_menu_49 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('cabbe834a7474675b899e8442b5c2604','6afc5075913d4df4b44a6476080e35a0','000200050002','模板列表','List','menu','/platform/wx/tpl/list','data-pjax','','1','0','wx.tpl.list',NULL,'52','0','','1470406883','0')
|
||||
/* wx_menu_50 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('a11163584dfe456cbfd6fb2d4b74391b','cabbe834a7474675b899e8442b5c2604','0002000500020001','获取列表','Get','data','','','','0','0','wx.tpl.list.get',NULL,'56','0','','1470407390','0')
|
||||
/* wx_menu_51 */
|
||||
insert into sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, delFlag) values('c76a84f871d047db955dd1465c845ac1','6afc5075913d4df4b44a6476080e35a0','000200050003','发送记录','Log','menu','/platform/wx/tpl/log','data-pjax','','1','0','wx.tpl.log',NULL,'53','0','','1470406926','0')
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,193 @@
|
||||
<?xml version="1.0"?>
|
||||
<?mso-application progid="Excel.Sheet"?>
|
||||
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
|
||||
xmlns:x="urn:schemas-microsoft-com:office:excel"
|
||||
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
|
||||
>
|
||||
<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
|
||||
<Author>Administrator</Author>
|
||||
<LastAuthor>11386</LastAuthor>
|
||||
<Created>2019-11-13T03:15:50Z</Created>
|
||||
<LastSaved>2019-12-15T12:17:40Z</LastSaved>
|
||||
<Company>Microsoft</Company>
|
||||
<Version>16.00</Version>
|
||||
</DocumentProperties>
|
||||
<OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
|
||||
<AllowPNG/>
|
||||
</OfficeDocumentSettings>
|
||||
<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
|
||||
<WindowHeight>5532</WindowHeight>
|
||||
<WindowWidth>16212</WindowWidth>
|
||||
<WindowTopX>32767</WindowTopX>
|
||||
<WindowTopY>32767</WindowTopY>
|
||||
<ProtectStructure>False</ProtectStructure>
|
||||
<ProtectWindows>False</ProtectWindows>
|
||||
</ExcelWorkbook>
|
||||
<Styles>
|
||||
<Style ss:ID="Default" ss:Name="Normal">
|
||||
<Alignment ss:Vertical="Center"/>
|
||||
<Borders/>
|
||||
<Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
|
||||
<Interior/>
|
||||
<NumberFormat/>
|
||||
<Protection/>
|
||||
</Style>
|
||||
<Style ss:ID="s62">
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s64">
|
||||
<Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
|
||||
<Font ss:FontName="方正小标宋简体" x:CharSet="134" ss:Size="16" ss:Color="#000000"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s66">
|
||||
<Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
|
||||
<Borders/>
|
||||
<Font ss:FontName="黑体" x:CharSet="134" x:Family="Modern" ss:Size="11"
|
||||
ss:Color="#000000" ss:Bold="1"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s68">
|
||||
<Alignment ss:Horizontal="Left" ss:Vertical="Center"/>
|
||||
<Borders>
|
||||
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
</Borders>
|
||||
<Font ss:FontName="黑体" x:CharSet="134" x:Family="Modern" ss:Size="11"
|
||||
ss:Color="#000000"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s70">
|
||||
<Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:WrapText="1"/>
|
||||
<Borders>
|
||||
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
</Borders>
|
||||
<Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Bold="1"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s71">
|
||||
<Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:WrapText="1"/>
|
||||
<Borders>
|
||||
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
</Borders>
|
||||
<Font ss:FontName="宋体" x:CharSet="134" ss:Size="11"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s72">
|
||||
<Alignment ss:Horizontal="Left" ss:Vertical="Center" ss:WrapText="1"/>
|
||||
<Borders>
|
||||
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
</Borders>
|
||||
<Font ss:FontName="宋体" x:CharSet="134" ss:Size="11"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
</Styles>
|
||||
<Worksheet ss:Name="Sheet1">
|
||||
<Table ss:ExpandedColumnCount="9" ss:ExpandedRowCount="999" x:FullColumns="1"
|
||||
x:FullRows="1" ss:StyleID="s62" ss:DefaultColumnWidth="328.20000000000005"
|
||||
ss:DefaultRowHeight="14.55">
|
||||
<Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="34.199999999999996"/>
|
||||
<Column ss:StyleID="s62" ss:Width="329.40000000000003"/>
|
||||
<Column ss:StyleID="s62" ss:Width="93"/>
|
||||
<Column ss:StyleID="s62" ss:Width="115.2"/>
|
||||
<Column ss:StyleID="s62" ss:Width="317.39999999999998"/>
|
||||
<Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="85.2"/>
|
||||
<Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="68.399999999999991"/>
|
||||
<Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="76.8"/>
|
||||
<Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="87.6"/>
|
||||
<Row ss:AutoFitHeight="0" ss:Height="20.549999999999997">
|
||||
<Cell ss:MergeAcross="7" ss:StyleID="s64"><Data ss:Type="String">${meetingName}提案承办分单位表</Data></Cell>
|
||||
</Row>
|
||||
<Row ss:AutoFitHeight="0">
|
||||
<Cell ss:MergeAcross="7" ss:StyleID="s66"><Data ss:Type="String">${unitName}</Data></Cell>
|
||||
</Row>
|
||||
<Row ss:AutoFitHeight="0">
|
||||
<Cell ss:MergeAcross="7" ss:StyleID="s68"><Data ss:Type="String">${principal}</Data></Cell>
|
||||
</Row>
|
||||
<Row ss:AutoFitHeight="0" ss:Height="43.199999999999996">
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">序号</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">提案案名</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">提案人</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">承办单位</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">协办单位</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">提案人是否已签署反馈意见</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">备注</Data></Cell>
|
||||
</Row>
|
||||
<#list pros as xx>
|
||||
<Row ss:AutoFitHeight="0">
|
||||
<Cell ss:StyleID="s71"><Data ss:Type="Number">${xx_index+1}</Data></Cell>
|
||||
<Cell ss:StyleID="s72"><Data ss:Type="String">${xx.proposalName!}</Data></Cell>
|
||||
<Cell ss:StyleID="s72"><Data ss:Type="String">${xx.username!}(${xx.unitname!})</Data></Cell>
|
||||
<Cell ss:StyleID="s72"><Data ss:Type="String">${xx.pruMaster!}</Data></Cell>
|
||||
<Cell ss:StyleID="s72"><Data ss:Type="String">${xx.pruSlave!}</Data></Cell>
|
||||
<Cell ss:StyleID="s72"><Data ss:Type="String"><#if xx.feedback??>已签署<#else>未签署</#if></Data></Cell>
|
||||
<Cell ss:StyleID="s70"/>
|
||||
</Row>
|
||||
</#list>
|
||||
</Table>
|
||||
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
||||
<PageSetup>
|
||||
<Header x:Margin="0.3"/>
|
||||
<Footer x:Margin="0.3"/>
|
||||
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
||||
</PageSetup>
|
||||
<Unsynced/>
|
||||
<Selected/>
|
||||
<Panes>
|
||||
<Pane>
|
||||
<Number>3</Number>
|
||||
<ActiveRow>4</ActiveRow>
|
||||
<ActiveCol>7</ActiveCol>
|
||||
</Pane>
|
||||
</Panes>
|
||||
<ProtectObjects>False</ProtectObjects>
|
||||
<ProtectScenarios>False</ProtectScenarios>
|
||||
</WorksheetOptions>
|
||||
</Worksheet>
|
||||
<Worksheet ss:Name="Sheet2">
|
||||
<Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
|
||||
x:FullRows="1" ss:DefaultRowHeight="14.55">
|
||||
<Row ss:AutoFitHeight="0"/>
|
||||
</Table>
|
||||
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
||||
<PageSetup>
|
||||
<Header x:Margin="0.3"/>
|
||||
<Footer x:Margin="0.3"/>
|
||||
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
||||
</PageSetup>
|
||||
<Unsynced/>
|
||||
<ProtectObjects>False</ProtectObjects>
|
||||
<ProtectScenarios>False</ProtectScenarios>
|
||||
</WorksheetOptions>
|
||||
</Worksheet>
|
||||
<Worksheet ss:Name="Sheet3">
|
||||
<Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
|
||||
x:FullRows="1" ss:DefaultRowHeight="14.55">
|
||||
<Row ss:AutoFitHeight="0"/>
|
||||
</Table>
|
||||
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
||||
<PageSetup>
|
||||
<Header x:Margin="0.3"/>
|
||||
<Footer x:Margin="0.3"/>
|
||||
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
||||
</PageSetup>
|
||||
<Unsynced/>
|
||||
<Print>
|
||||
<ValidPrinterInfo/>
|
||||
<PaperSizeIndex>9</PaperSizeIndex>
|
||||
<HorizontalResolution>600</HorizontalResolution>
|
||||
<VerticalResolution>600</VerticalResolution>
|
||||
</Print>
|
||||
<ProtectObjects>False</ProtectObjects>
|
||||
<ProtectScenarios>False</ProtectScenarios>
|
||||
</WorksheetOptions>
|
||||
</Worksheet>
|
||||
</Workbook>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,194 @@
|
||||
<?xml version="1.0"?>
|
||||
<?mso-application progid="Excel.Sheet"?>
|
||||
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
|
||||
xmlns:o="urn:schemas-microsoft-com:office:office"
|
||||
xmlns:x="urn:schemas-microsoft-com:office:excel"
|
||||
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
|
||||
xmlns:html="http://www.w3.org/TR/REC-html40">
|
||||
<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
|
||||
<Author>Administrator</Author>
|
||||
<LastAuthor>11386</LastAuthor>
|
||||
<Created>2019-11-13T03:15:50Z</Created>
|
||||
<LastSaved>2019-12-15T12:17:40Z</LastSaved>
|
||||
<Company>Microsoft</Company>
|
||||
<Version>16.00</Version>
|
||||
</DocumentProperties>
|
||||
<OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
|
||||
<AllowPNG/>
|
||||
</OfficeDocumentSettings>
|
||||
<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
|
||||
<WindowHeight>5532</WindowHeight>
|
||||
<WindowWidth>16212</WindowWidth>
|
||||
<WindowTopX>32767</WindowTopX>
|
||||
<WindowTopY>32767</WindowTopY>
|
||||
<ProtectStructure>False</ProtectStructure>
|
||||
<ProtectWindows>False</ProtectWindows>
|
||||
</ExcelWorkbook>
|
||||
<Styles>
|
||||
<Style ss:ID="Default" ss:Name="Normal">
|
||||
<Alignment ss:Vertical="Center"/>
|
||||
<Borders/>
|
||||
<Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
|
||||
<Interior/>
|
||||
<NumberFormat/>
|
||||
<Protection/>
|
||||
</Style>
|
||||
<Style ss:ID="s62">
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s64">
|
||||
<Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
|
||||
<Font ss:FontName="方正小标宋简体" x:CharSet="134" ss:Size="16" ss:Color="#000000"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s66">
|
||||
<Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
|
||||
<Borders/>
|
||||
<Font ss:FontName="黑体" x:CharSet="134" x:Family="Modern" ss:Size="11"
|
||||
ss:Color="#000000" ss:Bold="1"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s68">
|
||||
<Alignment ss:Horizontal="Left" ss:Vertical="Center"/>
|
||||
<Borders>
|
||||
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
</Borders>
|
||||
<Font ss:FontName="黑体" x:CharSet="134" x:Family="Modern" ss:Size="11"
|
||||
ss:Color="#000000"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s70">
|
||||
<Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:WrapText="1"/>
|
||||
<Borders>
|
||||
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
</Borders>
|
||||
<Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Bold="1"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s71">
|
||||
<Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:WrapText="1"/>
|
||||
<Borders>
|
||||
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
</Borders>
|
||||
<Font ss:FontName="宋体" x:CharSet="134" ss:Size="11"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
<Style ss:ID="s72">
|
||||
<Alignment ss:Horizontal="Left" ss:Vertical="Center" ss:WrapText="1"/>
|
||||
<Borders>
|
||||
<Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
<Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="1"/>
|
||||
</Borders>
|
||||
<Font ss:FontName="宋体" x:CharSet="134" ss:Size="11"/>
|
||||
<Interior/>
|
||||
</Style>
|
||||
</Styles>
|
||||
<Worksheet ss:Name="Sheet1">
|
||||
<Table ss:ExpandedColumnCount="9" ss:ExpandedRowCount="999" x:FullColumns="1"
|
||||
x:FullRows="1" ss:StyleID="s62" ss:DefaultColumnWidth="328.20000000000005"
|
||||
ss:DefaultRowHeight="14.55">
|
||||
<Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="34.199999999999996"/>
|
||||
<Column ss:StyleID="s62" ss:Width="329.40000000000003"/>
|
||||
<Column ss:StyleID="s62" ss:Width="93"/>
|
||||
<Column ss:StyleID="s62" ss:Width="115.2"/>
|
||||
<Column ss:StyleID="s62" ss:Width="317.39999999999998"/>
|
||||
<Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="85.2"/>
|
||||
<Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="68.399999999999991"/>
|
||||
<Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="76.8"/>
|
||||
<Column ss:StyleID="s62" ss:AutoFitWidth="0" ss:Width="87.6"/>
|
||||
<Row ss:AutoFitHeight="0" ss:Height="20.549999999999997">
|
||||
<Cell ss:MergeAcross="7" ss:StyleID="s64"><Data ss:Type="String">${meetingName}提案承办分单位表</Data></Cell>
|
||||
</Row>
|
||||
<Row ss:AutoFitHeight="0">
|
||||
<Cell ss:MergeAcross="7" ss:StyleID="s66"><Data ss:Type="String">${unitName}</Data></Cell>
|
||||
</Row>
|
||||
<Row ss:AutoFitHeight="0">
|
||||
<Cell ss:MergeAcross="7" ss:StyleID="s68"><Data ss:Type="String">${principal}</Data></Cell>
|
||||
</Row>
|
||||
<Row ss:AutoFitHeight="0" ss:Height="43.199999999999996">
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">序号</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">提案案名</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">提案人</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">承办单位</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">协办单位</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">提案人是否已签署反馈意见</Data></Cell>
|
||||
<Cell ss:StyleID="s70"><Data ss:Type="String">备注</Data></Cell>
|
||||
</Row>
|
||||
<#list pros as xx>
|
||||
<Row ss:AutoFitHeight="0">
|
||||
<Cell ss:StyleID="s71"><Data ss:Type="Number">${xx_index+1}</Data></Cell>
|
||||
<Cell ss:StyleID="s72"><Data ss:Type="String">${xx.proposalName!}</Data></Cell>
|
||||
<Cell ss:StyleID="s72"><Data ss:Type="String">${xx.username!}(${xx.unitname!})</Data></Cell>
|
||||
<Cell ss:StyleID="s72"><Data ss:Type="String">${xx.pruMaster!}</Data></Cell>
|
||||
<Cell ss:StyleID="s72"><Data ss:Type="String">${xx.pruSlave!}</Data></Cell>
|
||||
<Cell ss:StyleID="s72"><Data ss:Type="String"><#if xx.feedback??>已签署<#else>未签署</#if></Data></Cell>
|
||||
<Cell ss:StyleID="s70"/>
|
||||
</Row>
|
||||
</#list>
|
||||
</Table>
|
||||
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
||||
<PageSetup>
|
||||
<Header x:Margin="0.3"/>
|
||||
<Footer x:Margin="0.3"/>
|
||||
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
||||
</PageSetup>
|
||||
<Unsynced/>
|
||||
<Selected/>
|
||||
<Panes>
|
||||
<Pane>
|
||||
<Number>3</Number>
|
||||
<ActiveRow>4</ActiveRow>
|
||||
<ActiveCol>7</ActiveCol>
|
||||
</Pane>
|
||||
</Panes>
|
||||
<ProtectObjects>False</ProtectObjects>
|
||||
<ProtectScenarios>False</ProtectScenarios>
|
||||
</WorksheetOptions>
|
||||
</Worksheet>
|
||||
<Worksheet ss:Name="Sheet2">
|
||||
<Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
|
||||
x:FullRows="1" ss:DefaultRowHeight="14.55">
|
||||
<Row ss:AutoFitHeight="0"/>
|
||||
</Table>
|
||||
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
||||
<PageSetup>
|
||||
<Header x:Margin="0.3"/>
|
||||
<Footer x:Margin="0.3"/>
|
||||
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
||||
</PageSetup>
|
||||
<Unsynced/>
|
||||
<ProtectObjects>False</ProtectObjects>
|
||||
<ProtectScenarios>False</ProtectScenarios>
|
||||
</WorksheetOptions>
|
||||
</Worksheet>
|
||||
<Worksheet ss:Name="Sheet3">
|
||||
<Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
|
||||
x:FullRows="1" ss:DefaultRowHeight="14.55">
|
||||
<Row ss:AutoFitHeight="0"/>
|
||||
</Table>
|
||||
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
|
||||
<PageSetup>
|
||||
<Header x:Margin="0.3"/>
|
||||
<Footer x:Margin="0.3"/>
|
||||
<PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
|
||||
</PageSetup>
|
||||
<Unsynced/>
|
||||
<Print>
|
||||
<ValidPrinterInfo/>
|
||||
<PaperSizeIndex>9</PaperSizeIndex>
|
||||
<HorizontalResolution>600</HorizontalResolution>
|
||||
<VerticalResolution>600</VerticalResolution>
|
||||
</Print>
|
||||
<ProtectObjects>False</ProtectObjects>
|
||||
<ProtectScenarios>False</ProtectScenarios>
|
||||
</WorksheetOptions>
|
||||
</Worksheet>
|
||||
</Workbook>
|
||||
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user