Commit a8228683 by 陶光胜

Merge branch 'developer' into 'master'

Developer

See merge request !1
parents 644f8ad0 07b1c41e
# maven ignore
target/
*.jar
!.mvn/wrapper/*
*.war
*.zip
*.tar
*.tar.gz
.flattened-pom.xml
# eclipse ignore
.settings/
.project
.classpath
# idea ignore
.idea/
*.ipr
*.iml
*.iws
# temp ignore
*.log
*.cache
*.diff
*.patch
*.tmp
dubbo.cache*
# system ignore
.DS_Store
Thumbs.db
*.orig
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<annotationProcessing>
<profile name="Maven default annotation processors profile" enabled="true">
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<module name="gic-webapp-plug" />
</profile>
</annotationProcessing>
<bytecodeTargetLevel>
<module name="gic-webapp-plug" target="1.8" />
</bytecodeTargetLevel>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="file://$PROJECT_DIR$" charset="UTF-8" />
</component>
</project>
\ No newline at end of file
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="Duplicates" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
</profile>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: antlr:antlr:2.7.7">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/antlr/antlr/2.7.7/antlr-2.7.7.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/antlr/antlr/2.7.7/antlr-2.7.7-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/antlr/antlr/2.7.7/antlr-2.7.7-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: aopalliance:aopalliance:1.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/aopalliance/aopalliance/1.0/aopalliance-1.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/aopalliance/aopalliance/1.0/aopalliance-1.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/aopalliance/aopalliance/1.0/aopalliance-1.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: cglib:cglib:3.2.5">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/cglib/cglib/3.2.5/cglib-3.2.5.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/cglib/cglib/3.2.5/cglib-3.2.5-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/cglib/cglib/3.2.5/cglib-3.2.5-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.101tec:zkclient:0.10">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/101tec/zkclient/0.10/zkclient-0.10.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/101tec/zkclient/0.10/zkclient-0.10-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/101tec/zkclient/0.10/zkclient-0.10-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.alibaba:druid:1.1.3">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/alibaba/druid/1.1.3/druid-1.1.3.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/alibaba/druid/1.1.3/druid-1.1.3-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/alibaba/druid/1.1.3/druid-1.1.3-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.alibaba:fastjson:1.2.12">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/alibaba/fastjson/1.2.12/fastjson-1.2.12.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/alibaba/fastjson/1.2.12/fastjson-1.2.12-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/alibaba/fastjson/1.2.12/fastjson-1.2.12-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.carrotsearch:java-sizeof:0.0.5">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/carrotsearch/java-sizeof/0.0.5/java-sizeof-0.0.5.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/carrotsearch/java-sizeof/0.0.5/java-sizeof-0.0.5-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/carrotsearch/java-sizeof/0.0.5/java-sizeof-0.0.5-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.ctrip.framework.apollo:apollo-client:1.0.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/ctrip/framework/apollo/apollo-client/1.0.0/apollo-client-1.0.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/ctrip/framework/apollo/apollo-client/1.0.0/apollo-client-1.0.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/ctrip/framework/apollo/apollo-client/1.0.0/apollo-client-1.0.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.ctrip.framework.apollo:apollo-core:1.0.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/ctrip/framework/apollo/apollo-core/1.0.0/apollo-core-1.0.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/ctrip/framework/apollo/apollo-core/1.0.0/apollo-core-1.0.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/ctrip/framework/apollo/apollo-core/1.0.0/apollo-core-1.0.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.dexcoder:dexcoder-commons:2.3.5">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/dexcoder/dexcoder-commons/2.3.5/dexcoder-commons-2.3.5.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/dexcoder/dexcoder-commons/2.3.5/dexcoder-commons-2.3.5-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/dexcoder/dexcoder-commons/2.3.5/dexcoder-commons-2.3.5-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.dexcoder:dexcoder-dal:2.3.5">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/dexcoder/dexcoder-dal/2.3.5/dexcoder-dal-2.3.5.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/dexcoder/dexcoder-dal/2.3.5/dexcoder-dal-2.3.5-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/dexcoder/dexcoder-dal/2.3.5/dexcoder-dal-2.3.5-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.dexcoder:dexcoder-dal-spring:2.3.5">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/dexcoder/dexcoder-dal-spring/2.3.5/dexcoder-dal-spring-2.3.5.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/dexcoder/dexcoder-dal-spring/2.3.5/dexcoder-dal-spring-2.3.5-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/dexcoder/dexcoder-dal-spring/2.3.5/dexcoder-dal-spring-2.3.5-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml:classmate:0.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/classmate/0.5.4/classmate-0.5.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/classmate/0.5.4/classmate-0.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/classmate/0.5.4/classmate-0.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.9.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-annotations/2.9.0/jackson-annotations-2.9.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-annotations/2.9.0/jackson-annotations-2.9.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-annotations/2.9.0/jackson-annotations-2.9.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.core:jackson-core:2.9.9">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-core/2.9.9/jackson-core-2.9.9.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-core/2.9.9/jackson-core-2.9.9-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-core/2.9.9/jackson-core-2.9.9-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.core:jackson-databind:2.9.9">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-databind/2.9.9/jackson-databind-2.9.9.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-databind/2.9.9/jackson-databind-2.9.9-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-databind/2.9.9/jackson-databind-2.9.9-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.7.9">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/dataformat/jackson-dataformat-yaml/2.7.9/jackson-dataformat-yaml-2.7.9.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/dataformat/jackson-dataformat-yaml/2.7.9/jackson-dataformat-yaml-2.7.9-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/dataformat/jackson-dataformat-yaml/2.7.9/jackson-dataformat-yaml-2.7.9-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.9.8">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/2.9.8/jackson-datatype-jdk8-2.9.8.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/2.9.8/jackson-datatype-jdk8-2.9.8-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/2.9.8/jackson-datatype-jdk8-2.9.8-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.9.8">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.9.8/jackson-datatype-jsr310-2.9.8.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.9.8/jackson-datatype-jsr310-2.9.8-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.9.8/jackson-datatype-jsr310-2.9.8-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.9.8">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/module/jackson-module-parameter-names/2.9.8/jackson-module-parameter-names-2.9.8.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/module/jackson-module-parameter-names/2.9.8/jackson-module-parameter-names-2.9.8-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/jackson/module/jackson-module-parameter-names/2.9.8/jackson-module-parameter-names-2.9.8-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.gic:gic-apollo-sdk:3.0-SNAPSHOT">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-apollo-sdk/3.0-SNAPSHOT/gic-apollo-sdk-3.0-20181115.071246-4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-apollo-sdk/3.0-SNAPSHOT/gic-apollo-sdk-3.0-20181115.071246-4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-apollo-sdk/3.0-SNAPSHOT/gic-apollo-sdk-3.0-20181115.071246-4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.gic:gic-base-api:4.0-SNAPSHOT">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-base-api/4.0-SNAPSHOT/gic-base-api-4.0-20190610.085147-5.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-base-api/4.0-SNAPSHOT/gic-base-api-4.0-20190610.085147-5-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-base-api/4.0-SNAPSHOT/gic-base-api-4.0-20190610.085147-5-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.gic:gic-commons:4.0-SNAPSHOT">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-commons/4.0-SNAPSHOT/gic-commons-4.0-20190702.033725-56.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-commons/4.0-SNAPSHOT/gic-commons-4.0-20190702.033725-56-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-commons/4.0-SNAPSHOT/gic-commons-4.0-20190702.033725-56-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.gic:gic-dubbo-extension:4.0-SNAPSHOT">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-dubbo-extension/4.0-SNAPSHOT/gic-dubbo-extension-4.0-20190620.072714-7.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-dubbo-extension/4.0-SNAPSHOT/gic-dubbo-extension-4.0-20190620.072714-7-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-dubbo-extension/4.0-SNAPSHOT/gic-dubbo-extension-4.0-20190620.072714-7-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.gic:gic-mq-sdk-4.0:1.0.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-mq-sdk-4.0/1.0.1/gic-mq-sdk-4.0-1.0.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-mq-sdk-4.0/1.0.1/gic-mq-sdk-4.0-1.0.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-mq-sdk-4.0/1.0.1/gic-mq-sdk-4.0-1.0.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.gic:gic-platform-config:4.0-SNAPSHOT">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-platform-config/4.0-SNAPSHOT/gic-platform-config-4.0-20190620.063735-14.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-platform-config/4.0-SNAPSHOT/gic-platform-config-4.0-20190620.063735-14-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-platform-config/4.0-SNAPSHOT/gic-platform-config-4.0-20190620.063735-14-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.gic:gic-redis-sdk:3.0-SNAPSHOT">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-redis-sdk/3.0-SNAPSHOT/gic-redis-sdk-3.0-20180904.114748-11.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-redis-sdk/3.0-SNAPSHOT/gic-redis-sdk-3.0-20180904.114748-11-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-redis-sdk/3.0-SNAPSHOT/gic-redis-sdk-3.0-20180904.114748-11-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.gic:gic-store-api:4.0-SNAPSHOT">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-store-api/4.0-SNAPSHOT/gic-store-api-4.0-20190702.055600-9.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-store-api/4.0-SNAPSHOT/gic-store-api-4.0-20190702.055600-9-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-store-api/4.0-SNAPSHOT/gic-store-api-4.0-20190702.055600-9-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.gic:gic-thirdparty-api:4.0-SNAPSHOT">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-api/4.0-SNAPSHOT/gic-thirdparty-api-4.0-20190620.094928-7.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-api/4.0-SNAPSHOT/gic-thirdparty-api-4.0-20190620.094928-7-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-api/4.0-SNAPSHOT/gic-thirdparty-api-4.0-20190620.094928-7-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.gic:gic-thirdparty-sdk:4.0-SNAPSHOT">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-sdk/4.0-SNAPSHOT/gic-thirdparty-sdk-4.0-20190702.021117-1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-sdk/4.0-SNAPSHOT/gic-thirdparty-sdk-4.0-20190702.021117-1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-sdk/4.0-SNAPSHOT/gic-thirdparty-sdk-4.0-20190702.021117-1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.gic:task-allocation-sdk:4.0-SNAPSHOT">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/task-allocation-sdk/4.0-SNAPSHOT/task-allocation-sdk-4.0-20190619.081351-4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/task-allocation-sdk/4.0-SNAPSHOT/task-allocation-sdk-4.0-20190619.081351-4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/gic/task-allocation-sdk/4.0-SNAPSHOT/task-allocation-sdk-4.0-20190619.081351-4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.github.jsqlparser:jsqlparser:0.9.5">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/github/jsqlparser/jsqlparser/0.9.5/jsqlparser-0.9.5.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/github/jsqlparser/jsqlparser/0.9.5/jsqlparser-0.9.5-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/github/jsqlparser/jsqlparser/0.9.5/jsqlparser-0.9.5-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.github.sgroschupf:zkclient:0.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/github/sgroschupf/zkclient/0.1/zkclient-0.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/github/sgroschupf/zkclient/0.1/zkclient-0.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/github/sgroschupf/zkclient/0.1/zkclient-0.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.google.code.findbugs:annotations:2.0.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/findbugs/annotations/2.0.1/annotations-2.0.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/findbugs/annotations/2.0.1/annotations-2.0.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/findbugs/annotations/2.0.1/annotations-2.0.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.google.code.gson:gson:2.8.5">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/gson/gson/2.8.5/gson-2.8.5.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/gson/gson/2.8.5/gson-2.8.5-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/gson/gson/2.8.5/gson-2.8.5-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.google.guava:guava:18.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/guava/guava/18.0/guava-18.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/google/guava/guava/18.0/guava-18.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/guava/guava/18.0/guava-18.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.google.inject:guice:4.1.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/inject/guice/4.1.0/guice-4.1.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/google/inject/guice/4.1.0/guice-4.1.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/inject/guice/4.1.0/guice-4.1.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.google.zxing:core:3.1.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/zxing/core/3.1.0/core-3.1.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/google/zxing/core/3.1.0/core-3.1.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/zxing/core/3.1.0/core-3.1.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.google.zxing:javase:3.1.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/zxing/javase/3.1.0/javase-3.1.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/google/zxing/javase/3.1.0/javase-3.1.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/google/zxing/javase/3.1.0/javase-3.1.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.qcloud:cos_api:5.4.6">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/qcloud/cos_api/5.4.6/cos_api-5.4.6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/qcloud/cos_api/5.4.6/cos_api-5.4.6-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/qcloud/cos_api/5.4.6/cos_api-5.4.6-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.squareup.moshi:moshi:1.5.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/moshi/moshi/1.5.0/moshi-1.5.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/moshi/moshi/1.5.0/moshi-1.5.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/moshi/moshi/1.5.0/moshi-1.5.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.squareup.okhttp3:logging-interceptor:3.11.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/okhttp3/logging-interceptor/3.11.0/logging-interceptor-3.11.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/okhttp3/logging-interceptor/3.11.0/logging-interceptor-3.11.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/okhttp3/logging-interceptor/3.11.0/logging-interceptor-3.11.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.squareup.okhttp3:okhttp:3.10.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/okhttp3/okhttp/3.10.0/okhttp-3.10.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/okhttp3/okhttp/3.10.0/okhttp-3.10.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/okhttp3/okhttp/3.10.0/okhttp-3.10.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.squareup.okio:okio:1.14.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/okio/okio/1.14.0/okio-1.14.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/okio/okio/1.14.0/okio-1.14.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/okio/okio/1.14.0/okio-1.14.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.squareup.retrofit2:converter-moshi:2.4.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/retrofit2/converter-moshi/2.4.0/converter-moshi-2.4.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/retrofit2/converter-moshi/2.4.0/converter-moshi-2.4.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/retrofit2/converter-moshi/2.4.0/converter-moshi-2.4.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.squareup.retrofit2:retrofit:2.4.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/retrofit2/retrofit/2.4.0/retrofit-2.4.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/retrofit2/retrofit/2.4.0/retrofit-2.4.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/squareup/retrofit2/retrofit/2.4.0/retrofit-2.4.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.thoughtworks.paranamer:paranamer:2.8">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/thoughtworks/paranamer/paranamer/2.8/paranamer-2.8.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/thoughtworks/paranamer/paranamer/2.8/paranamer-2.8-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/thoughtworks/paranamer/paranamer/2.8/paranamer-2.8-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.thoughtworks.xstream:xstream:1.4.7">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/thoughtworks/xstream/xstream/1.4.7/xstream-1.4.7.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/thoughtworks/xstream/xstream/1.4.7/xstream-1.4.7-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/thoughtworks/xstream/xstream/1.4.7/xstream-1.4.7-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.whalin:Memcached-Java-Client:3.0.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/whalin/Memcached-Java-Client/3.0.2/Memcached-Java-Client-3.0.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/whalin/Memcached-Java-Client/3.0.2/Memcached-Java-Client-3.0.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/whalin/Memcached-Java-Client/3.0.2/Memcached-Java-Client-3.0.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-beanutils:commons-beanutils:1.8.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/commons-beanutils/commons-beanutils/1.8.0/commons-beanutils-1.8.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/commons-beanutils/commons-beanutils/1.8.0/commons-beanutils-1.8.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/commons-beanutils/commons-beanutils/1.8.0/commons-beanutils-1.8.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-codec:commons-codec:1.10">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/commons-codec/commons-codec/1.10/commons-codec-1.10.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/commons-codec/commons-codec/1.10/commons-codec-1.10-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/commons-codec/commons-codec/1.10/commons-codec-1.10-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-collections:commons-collections:3.2.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-fileupload:commons-fileupload:1.3.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/commons-fileupload/commons-fileupload/1.3.1/commons-fileupload-1.3.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/commons-fileupload/commons-fileupload/1.3.1/commons-fileupload-1.3.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/commons-fileupload/commons-fileupload/1.3.1/commons-fileupload-1.3.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-io:commons-io:2.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.2/commons-io-2.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.2/commons-io-2.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.2/commons-io-2.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-lang:commons-lang:2.6">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/commons-lang/commons-lang/2.6/commons-lang-2.6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/commons-lang/commons-lang/2.6/commons-lang-2.6-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/commons-lang/commons-lang/2.6/commons-lang-2.6-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-logging:commons-logging:1.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/commons-logging/commons-logging/1.2/commons-logging-1.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/commons-logging/commons-logging/1.2/commons-logging-1.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/commons-logging/commons-logging/1.2/commons-logging-1.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-pool:commons-pool:1.5.6">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/commons-pool/commons-pool/1.5.6/commons-pool-1.5.6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/commons-pool/commons-pool/1.5.6/commons-pool-1.5.6-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/commons-pool/commons-pool/1.5.6/commons-pool-1.5.6-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: dom4j:dom4j:1.6.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/dom4j/dom4j/1.6.1/dom4j-1.6.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/dom4j/dom4j/1.6.1/dom4j-1.6.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: io.netty:netty:3.7.0.Final">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/io/netty/netty/3.7.0.Final/netty-3.7.0.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/io/netty/netty/3.7.0.Final/netty-3.7.0.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/io/netty/netty/3.7.0.Final/netty-3.7.0.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: io.netty:netty-all:4.1.17.Final">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/io/netty/netty-all/4.1.17.Final/netty-all-4.1.17.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/io/netty/netty-all/4.1.17.Final/netty-all-4.1.17.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/io/netty/netty-all/4.1.17.Final/netty-all-4.1.17.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: io.projectreactor:reactor-core:2.0.8.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/io/projectreactor/reactor-core/2.0.8.RELEASE/reactor-core-2.0.8.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/io/projectreactor/reactor-core/2.0.8.RELEASE/reactor-core-2.0.8.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/io/projectreactor/reactor-core/2.0.8.RELEASE/reactor-core-2.0.8.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: io.projectreactor:reactor-stream:2.0.8.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/io/projectreactor/reactor-stream/2.0.8.RELEASE/reactor-stream-2.0.8.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/io/projectreactor/reactor-stream/2.0.8.RELEASE/reactor-stream-2.0.8.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/io/projectreactor/reactor-stream/2.0.8.RELEASE/reactor-stream-2.0.8.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: javax.annotation:javax.annotation-api:1.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: javax.cache:cache-api:1.0.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/javax/cache/cache-api/1.0.0/cache-api-1.0.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/javax/cache/cache-api/1.0.0/cache-api-1.0.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/javax/cache/cache-api/1.0.0/cache-api-1.0.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: javax.inject:javax.inject:1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/javax/inject/javax.inject/1/javax.inject-1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/javax/inject/javax.inject/1/javax.inject-1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/javax/inject/javax.inject/1/javax.inject-1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: javax.validation:validation-api:2.0.1.Final">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/javax/validation/validation-api/2.0.1.Final/validation-api-2.0.1.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/javax/validation/validation-api/2.0.1.Final/validation-api-2.0.1.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/javax/validation/validation-api/2.0.1.Final/validation-api-2.0.1.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: jline:jline:0.9.94">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/jline/jline/0.9.94/jline-0.9.94.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/jline/jline/0.9.94/jline-0.9.94-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/jline/jline/0.9.94/jline-0.9.94-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: joda-time:joda-time:2.9.6">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/joda-time/joda-time/2.9.6/joda-time-2.9.6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/joda-time/joda-time/2.9.6/joda-time-2.9.6-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/joda-time/joda-time/2.9.6/joda-time-2.9.6-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: jstl:jstl:1.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/jstl/jstl/1.2/jstl-1.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/jstl/jstl/1.2/jstl-1.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/jstl/jstl/1.2/jstl-1.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: junit:junit:4.12">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: log4j:log4j:1.2.14">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/log4j/log4j/1.2.14/log4j-1.2.14.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/log4j/log4j/1.2.14/log4j-1.2.14-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/log4j/log4j/1.2.14/log4j-1.2.14-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: ma.glasnost.orika:orika-core:1.5.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/ma/glasnost/orika/orika-core/1.5.4/orika-core-1.5.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/ma/glasnost/orika/orika-core/1.5.4/orika-core-1.5.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/ma/glasnost/orika/orika-core/1.5.4/orika-core-1.5.4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: mysql:mysql-connector-java:5.1.21">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/mysql/mysql-connector-java/5.1.21/mysql-connector-java-5.1.21.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/mysql/mysql-connector-java/5.1.21/mysql-connector-java-5.1.21-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/mysql/mysql-connector-java/5.1.21/mysql-connector-java-5.1.21-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: net.bytebuddy:byte-buddy:1.8.11">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/net/bytebuddy/byte-buddy/1.8.11/byte-buddy-1.8.11.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/net/bytebuddy/byte-buddy/1.8.11/byte-buddy-1.8.11-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/net/bytebuddy/byte-buddy/1.8.11/byte-buddy-1.8.11-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: net.sf.ezmorph:ezmorph:1.0.6">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/net/sf/ezmorph/ezmorph/1.0.6/ezmorph-1.0.6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/net/sf/ezmorph/ezmorph/1.0.6/ezmorph-1.0.6-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/net/sf/ezmorph/ezmorph/1.0.6/ezmorph-1.0.6-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: net.sf.json-lib:json-lib:jdk15:2.4">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/net/sf/json-lib/json-lib/2.4/json-lib-2.4-jdk15.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/net/sf/json-lib/json-lib/2.4/json-lib-2.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/net/sf/json-lib/json-lib/2.4/json-lib-2.4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.ant:ant:1.9.6">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/ant/ant/1.9.6/ant-1.9.6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/ant/ant/1.9.6/ant-1.9.6-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/ant/ant/1.9.6/ant-1.9.6-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.ant:ant-launcher:1.9.6">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/ant/ant-launcher/1.9.6/ant-launcher-1.9.6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/ant/ant-launcher/1.9.6/ant-launcher-1.9.6-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/ant/ant-launcher/1.9.6/ant-launcher-1.9.6-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.commons:commons-lang3:3.3.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/commons/commons-lang3/3.3.2/commons-lang3-3.3.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/commons/commons-lang3/3.3.2/commons-lang3-3.3.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/commons/commons-lang3/3.3.2/commons-lang3-3.3.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.curator:curator-client:4.0.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/curator/curator-client/4.0.1/curator-client-4.0.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/curator/curator-client/4.0.1/curator-client-4.0.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/curator/curator-client/4.0.1/curator-client-4.0.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.curator:curator-framework:4.0.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/curator/curator-framework/4.0.1/curator-framework-4.0.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/curator/curator-framework/4.0.1/curator-framework-4.0.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/curator/curator-framework/4.0.1/curator-framework-4.0.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.curator:curator-recipes:4.0.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/curator/curator-recipes/4.0.1/curator-recipes-4.0.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/curator/curator-recipes/4.0.1/curator-recipes-4.0.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/curator/curator-recipes/4.0.1/curator-recipes-4.0.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.dubbo:dubbo:2.7.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/dubbo/dubbo/2.7.2/dubbo-2.7.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/dubbo/dubbo/2.7.2/dubbo-2.7.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/dubbo/dubbo/2.7.2/dubbo-2.7.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.httpcomponents:httpclient:4.5.6">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpclient/4.5.6/httpclient-4.5.6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpclient/4.5.6/httpclient-4.5.6-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpclient/4.5.6/httpclient-4.5.6-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.httpcomponents:httpcore:4.4.10">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpcore/4.4.10/httpcore-4.4.10.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpcore/4.4.10/httpcore-4.4.10-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpcore/4.4.10/httpcore-4.4.10-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.httpcomponents:httpmime:4.5.6">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpmime/4.5.6/httpmime-4.5.6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpmime/4.5.6/httpmime-4.5.6-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpmime/4.5.6/httpmime-4.5.6-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.logging.log4j:log4j-api:2.8.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-api/2.8.2/log4j-api-2.8.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-api/2.8.2/log4j-api-2.8.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-api/2.8.2/log4j-api-2.8.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.logging.log4j:log4j-core:2.8.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-core/2.8.2/log4j-core-2.8.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-core/2.8.2/log4j-core-2.8.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-core/2.8.2/log4j-core-2.8.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.logging.log4j:log4j-slf4j-impl:2.8.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-slf4j-impl/2.8.2/log4j-slf4j-impl-2.8.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-slf4j-impl/2.8.2/log4j-slf4j-impl-2.8.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-slf4j-impl/2.8.2/log4j-slf4j-impl-2.8.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.11.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-to-slf4j/2.11.2/log4j-to-slf4j-2.11.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-to-slf4j/2.11.2/log4j-to-slf4j-2.11.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-to-slf4j/2.11.2/log4j-to-slf4j-2.11.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.logging.log4j:log4j-web:2.8.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-web/2.8.2/log4j-web-2.8.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-web/2.8.2/log4j-web-2.8.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-web/2.8.2/log4j-web-2.8.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.19">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-core/9.0.19/tomcat-embed-core-9.0.19.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-core/9.0.19/tomcat-embed-core-9.0.19-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-core/9.0.19/tomcat-embed-core-9.0.19-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.19">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-el/9.0.19/tomcat-embed-el-9.0.19.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-el/9.0.19/tomcat-embed-el-9.0.19-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-el/9.0.19/tomcat-embed-el-9.0.19-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.19">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-websocket/9.0.19/tomcat-embed-websocket-9.0.19.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-websocket/9.0.19/tomcat-embed-websocket-9.0.19-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-websocket/9.0.19/tomcat-embed-websocket-9.0.19-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.zookeeper:zookeeper:3.4.6">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/zookeeper/zookeeper/3.4.6/zookeeper-3.4.6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/zookeeper/zookeeper/3.4.6/zookeeper-3.4.6-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/apache/zookeeper/zookeeper/3.4.6/zookeeper-3.4.6-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.aspectj:aspectjweaver:1.7.3">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/aspectj/aspectjweaver/1.7.3/aspectjweaver-1.7.3.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/aspectj/aspectjweaver/1.7.3/aspectjweaver-1.7.3-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/aspectj/aspectjweaver/1.7.3/aspectjweaver-1.7.3-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.bouncycastle:bcprov-jdk15on:1.59">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/bouncycastle/bcprov-jdk15on/1.59/bcprov-jdk15on-1.59.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/bouncycastle/bcprov-jdk15on/1.59/bcprov-jdk15on-1.59-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/bouncycastle/bcprov-jdk15on/1.59/bcprov-jdk15on-1.59-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.codehaus.jackson:jackson-core-asl:1.9.13">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/jackson/jackson-core-asl/1.9.13/jackson-core-asl-1.9.13.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/jackson/jackson-core-asl/1.9.13/jackson-core-asl-1.9.13-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/jackson/jackson-core-asl/1.9.13/jackson-core-asl-1.9.13-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.codehaus.jackson:jackson-core-lgpl:1.9.13">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/jackson/jackson-core-lgpl/1.9.13/jackson-core-lgpl-1.9.13.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/jackson/jackson-core-lgpl/1.9.13/jackson-core-lgpl-1.9.13-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/jackson/jackson-core-lgpl/1.9.13/jackson-core-lgpl-1.9.13-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.codehaus.jackson:jackson-mapper-asl:1.9.13">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/jackson/jackson-mapper-asl/1.9.13/jackson-mapper-asl-1.9.13.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/jackson/jackson-mapper-asl/1.9.13/jackson-mapper-asl-1.9.13-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/jackson/jackson-mapper-asl/1.9.13/jackson-mapper-asl-1.9.13-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.codehaus.janino:commons-compiler:3.0.8">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/janino/commons-compiler/3.0.8/commons-compiler-3.0.8.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/janino/commons-compiler/3.0.8/commons-compiler-3.0.8-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/janino/commons-compiler/3.0.8/commons-compiler-3.0.8-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.codehaus.janino:janino:3.0.8">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/janino/janino/3.0.8/janino-3.0.8.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/janino/janino/3.0.8/janino-3.0.8-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/codehaus/janino/janino/3.0.8/janino-3.0.8-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hamcrest:hamcrest-core:1.3">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hibernate.common:hibernate-commons-annotations:4.0.1.Final">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/common/hibernate-commons-annotations/4.0.1.Final/hibernate-commons-annotations-4.0.1.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/common/hibernate-commons-annotations/4.0.1.Final/hibernate-commons-annotations-4.0.1.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/common/hibernate-commons-annotations/4.0.1.Final/hibernate-commons-annotations-4.0.1.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hibernate:hibernate-core:4.0.0.Final">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-core/4.0.0.Final/hibernate-core-4.0.0.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-core/4.0.0.Final/hibernate-core-4.0.0.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-core/4.0.0.Final/hibernate-core-4.0.0.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hibernate.javax.persistence:hibernate-jpa-2.0-api:1.0.1.Final">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/javax/persistence/hibernate-jpa-2.0-api/1.0.1.Final/hibernate-jpa-2.0-api-1.0.1.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/javax/persistence/hibernate-jpa-2.0-api/1.0.1.Final/hibernate-jpa-2.0-api-1.0.1.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/javax/persistence/hibernate-jpa-2.0-api/1.0.1.Final/hibernate-jpa-2.0-api-1.0.1.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hibernate.validator:hibernate-validator:6.0.16.Final">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/validator/hibernate-validator/6.0.16.Final/hibernate-validator-6.0.16.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/validator/hibernate-validator/6.0.16.Final/hibernate-validator-6.0.16.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/hibernate/validator/hibernate-validator/6.0.16.Final/hibernate-validator-6.0.16.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.influxdb:influxdb-java:2.14">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/influxdb/influxdb-java/2.14/influxdb-java-2.14.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/influxdb/influxdb-java/2.14/influxdb-java-2.14-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/influxdb/influxdb-java/2.14/influxdb-java-2.14-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.javassist:javassist:3.23.2-GA">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.23.2-GA/javassist-3.23.2-GA.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.23.2-GA/javassist-3.23.2-GA-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.23.2-GA/javassist-3.23.2-GA-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.jboss:jandex:1.0.3.Final">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jboss/jandex/1.0.3.Final/jandex-1.0.3.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jboss/jandex/1.0.3.Final/jandex-1.0.3.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jboss/jandex/1.0.3.Final/jandex-1.0.3.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.jboss.logging:jboss-logging:3.1.0.CR2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jboss/logging/jboss-logging/3.1.0.CR2/jboss-logging-3.1.0.CR2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jboss/logging/jboss-logging/3.1.0.CR2/jboss-logging-3.1.0.CR2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jboss/logging/jboss-logging/3.1.0.CR2/jboss-logging-3.1.0.CR2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec:1.0.0.Final">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jboss/spec/javax/transaction/jboss-transaction-api_1.1_spec/1.0.0.Final/jboss-transaction-api_1.1_spec-1.0.0.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jboss/spec/javax/transaction/jboss-transaction-api_1.1_spec/1.0.0.Final/jboss-transaction-api_1.1_spec-1.0.0.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jboss/spec/javax/transaction/jboss-transaction-api_1.1_spec/1.0.0.Final/jboss-transaction-api_1.1_spec-1.0.0.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.jodd:jodd-bean:3.7.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jodd/jodd-bean/3.7.1/jodd-bean-3.7.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jodd/jodd-bean/3.7.1/jodd-bean-3.7.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jodd/jodd-bean/3.7.1/jodd-bean-3.7.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.jodd:jodd-core:3.7.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/jodd/jodd-core/3.7.1/jodd-core-3.7.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/jodd/jodd-core/3.7.1/jodd-core-3.7.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/jodd/jodd-core/3.7.1/jodd-core-3.7.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.msgpack:msgpack-core:0.8.16">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/msgpack/msgpack-core/0.8.16/msgpack-core-0.8.16.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/msgpack/msgpack-core/0.8.16/msgpack-core-0.8.16-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/msgpack/msgpack-core/0.8.16/msgpack-core-0.8.16-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.ow2.asm:asm:5.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/ow2/asm/asm/5.2/asm-5.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/ow2/asm/asm/5.2/asm-5.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/ow2/asm/asm/5.2/asm-5.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.projectlombok:lombok:1.18.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/projectlombok/lombok/1.18.2/lombok-1.18.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/projectlombok/lombok/1.18.2/lombok-1.18.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/projectlombok/lombok/1.18.2/lombok-1.18.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.reactivestreams:reactive-streams:1.0.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/reactivestreams/reactive-streams/1.0.0/reactive-streams-1.0.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/reactivestreams/reactive-streams/1.0.0/reactive-streams-1.0.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/reactivestreams/reactive-streams/1.0.0/reactive-streams-1.0.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.redisson:redisson:2.12.5">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/redisson/redisson/2.12.5/redisson-2.12.5.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/redisson/redisson/2.12.5/redisson-2.12.5-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/redisson/redisson/2.12.5/redisson-2.12.5-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.reflections:reflections:0.9.10">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/reflections/reflections/0.9.10/reflections-0.9.10.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/reflections/reflections/0.9.10/reflections-0.9.10-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/reflections/reflections/0.9.10/reflections-0.9.10-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.slf4j:jul-to-slf4j:1.7.26">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/slf4j/jul-to-slf4j/1.7.26/jul-to-slf4j-1.7.26.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/slf4j/jul-to-slf4j/1.7.26/jul-to-slf4j-1.7.26-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/slf4j/jul-to-slf4j/1.7.26/jul-to-slf4j-1.7.26-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.slf4j:slf4j-api:1.7.24">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-api/1.7.24/slf4j-api-1.7.24.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-api/1.7.24/slf4j-api-1.7.24-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-api/1.7.24/slf4j-api-1.7.24-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.slf4j:slf4j-log4j12:1.7.21">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-log4j12/1.7.21/slf4j-log4j12-1.7.21.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-log4j12/1.7.21/slf4j-log4j12-1.7.21-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-log4j12/1.7.21/slf4j-log4j12-1.7.21-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework.boot:spring-boot:2.1.5.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot/2.1.5.RELEASE/spring-boot-2.1.5.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot/2.1.5.RELEASE/spring-boot-2.1.5.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot/2.1.5.RELEASE/spring-boot-2.1.5.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.1.5.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-autoconfigure/2.1.5.RELEASE/spring-boot-autoconfigure-2.1.5.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-autoconfigure/2.1.5.RELEASE/spring-boot-autoconfigure-2.1.5.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-autoconfigure/2.1.5.RELEASE/spring-boot-autoconfigure-2.1.5.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework.boot:spring-boot-starter:2.1.5.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter/2.1.5.RELEASE/spring-boot-starter-2.1.5.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter/2.1.5.RELEASE/spring-boot-starter-2.1.5.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter/2.1.5.RELEASE/spring-boot-starter-2.1.5.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework.boot:spring-boot-starter-json:2.1.5.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-json/2.1.5.RELEASE/spring-boot-starter-json-2.1.5.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-json/2.1.5.RELEASE/spring-boot-starter-json-2.1.5.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-json/2.1.5.RELEASE/spring-boot-starter-json-2.1.5.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework.boot:spring-boot-starter-logging:2.1.5.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-logging/2.1.5.RELEASE/spring-boot-starter-logging-2.1.5.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-logging/2.1.5.RELEASE/spring-boot-starter-logging-2.1.5.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-logging/2.1.5.RELEASE/spring-boot-starter-logging-2.1.5.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.1.5.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-tomcat/2.1.5.RELEASE/spring-boot-starter-tomcat-2.1.5.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-tomcat/2.1.5.RELEASE/spring-boot-starter-tomcat-2.1.5.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-tomcat/2.1.5.RELEASE/spring-boot-starter-tomcat-2.1.5.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework.boot:spring-boot-starter-web:2.1.5.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-web/2.1.5.RELEASE/spring-boot-starter-web-2.1.5.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-web/2.1.5.RELEASE/spring-boot-starter-web-2.1.5.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-web/2.1.5.RELEASE/spring-boot-starter-web-2.1.5.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-aop:5.1.7.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-aop/5.1.7.RELEASE/spring-aop-5.1.7.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-aop/5.1.7.RELEASE/spring-aop-5.1.7.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-aop/5.1.7.RELEASE/spring-aop-5.1.7.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-beans:5.1.7.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-beans/5.1.7.RELEASE/spring-beans-5.1.7.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-beans/5.1.7.RELEASE/spring-beans-5.1.7.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-beans/5.1.7.RELEASE/spring-beans-5.1.7.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-context:5.1.7.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-context/5.1.7.RELEASE/spring-context-5.1.7.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-context/5.1.7.RELEASE/spring-context-5.1.7.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-context/5.1.7.RELEASE/spring-context-5.1.7.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-core:5.1.7.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-core/5.1.7.RELEASE/spring-core-5.1.7.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-core/5.1.7.RELEASE/spring-core-5.1.7.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-core/5.1.7.RELEASE/spring-core-5.1.7.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-expression:5.1.7.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-expression/5.1.7.RELEASE/spring-expression-5.1.7.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-expression/5.1.7.RELEASE/spring-expression-5.1.7.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-expression/5.1.7.RELEASE/spring-expression-5.1.7.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-jcl:5.1.7.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-jcl/5.1.7.RELEASE/spring-jcl-5.1.7.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-jcl/5.1.7.RELEASE/spring-jcl-5.1.7.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-jcl/5.1.7.RELEASE/spring-jcl-5.1.7.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-jdbc:4.1.6.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-jdbc/4.1.6.RELEASE/spring-jdbc-4.1.6.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-jdbc/4.1.6.RELEASE/spring-jdbc-4.1.6.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-jdbc/4.1.6.RELEASE/spring-jdbc-4.1.6.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-orm:4.1.6.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-orm/4.1.6.RELEASE/spring-orm-4.1.6.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-orm/4.1.6.RELEASE/spring-orm-4.1.6.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-orm/4.1.6.RELEASE/spring-orm-4.1.6.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-tx:5.1.7.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-tx/5.1.7.RELEASE/spring-tx-5.1.7.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-tx/5.1.7.RELEASE/spring-tx-5.1.7.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-tx/5.1.7.RELEASE/spring-tx-5.1.7.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-web:5.1.7.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-web/5.1.7.RELEASE/spring-web-5.1.7.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-web/5.1.7.RELEASE/spring-web-5.1.7.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-web/5.1.7.RELEASE/spring-web-5.1.7.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-webmvc:5.1.7.RELEASE">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-webmvc/5.1.7.RELEASE/spring-webmvc-5.1.7.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-webmvc/5.1.7.RELEASE/spring-webmvc-5.1.7.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-webmvc/5.1.7.RELEASE/spring-webmvc-5.1.7.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.yaml:snakeyaml:1.23">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/yaml/snakeyaml/1.23/snakeyaml-1.23.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/yaml/snakeyaml/1.23/snakeyaml-1.23-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/yaml/snakeyaml/1.23/snakeyaml-1.23-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: quartz:quartz:1.5.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/quartz/quartz/1.5.2/quartz-1.5.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/quartz/quartz/1.5.2/quartz-1.5.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/quartz/quartz/1.5.2/quartz-1.5.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: xml-apis:xml-apis:1.0.b2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: xmlpull:xmlpull:1.1.3.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: xpp3:xpp3_min:1.1.4c">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
<option value="$PROJECT_DIR$/pom.xml" />
</list>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/classes" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/gic-webapp-plug.iml" filepath="$PROJECT_DIR$/gic-webapp-plug.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="ce1fdf66-bc90-4ec2-b058-98ccf4586c0e" name="Default" comment="" />
<ignored path="$PROJECT_DIR$/target/" />
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="TRACKING_ENABLED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="FileEditorManager">
<leaf>
<file leaf-file-name="pom.xml" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/pom.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-1675">
<caret line="23" column="27" selection-start-line="23" selection-start-column="27" selection-end-line="23" selection-end-column="27" />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="QQCloudPicUtils.java" pinned="false" current-in-tab="false">
<entry file="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-sdk/4.0-SNAPSHOT/gic-thirdparty-sdk-4.0-20190702.021117-1-sources.jar!/com/gic/thirdparty/pic/QQCloudPicUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="493">
<caret line="35" column="30" selection-start-line="35" selection-start-column="18" selection-end-line="35" selection-end-column="30" />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="application.yml" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/resources/application.yml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="400">
<caret line="16" column="17" selection-start-line="16" selection-start-column="17" selection-end-line="16" selection-end-column="17" />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="UploadImgController.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/java/com/gic/plug/web/controller/UploadImgController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="418">
<caret line="32" column="108" selection-start-line="32" selection-start-column="16" selection-end-line="32" selection-end-column="108" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#501#522#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="ProvincesController.java" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/main/java/com/gic/plug/web/controller/ProvincesController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="418">
<caret line="38" column="21" lean-forward="true" selection-start-line="38" selection-start-column="21" selection-end-line="38" selection-end-column="21" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="ProvincesApiService.class" pinned="false" current-in-tab="false">
<entry file="jar://$MAVEN_REPOSITORY$/com/gic/gic-store-api/4.0-SNAPSHOT/gic-store-api-4.0-20190702.055600-9.jar!/com/gic/store/service/ProvincesApiService.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="175">
<caret line="14" column="38" selection-start-line="14" selection-start-column="4" selection-end-line="14" selection-end-column="38" />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="UploadResult.java" pinned="false" current-in-tab="false">
<entry file="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-sdk/4.0-SNAPSHOT/gic-thirdparty-sdk-4.0-20190702.021117-1-sources.jar!/com/gic/thirdparty/pic/UploadResult.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="325">
<caret line="17" column="16" selection-start-line="17" selection-start-column="16" selection-end-line="17" selection-end-column="16" />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="PicAnalyze.java" pinned="false" current-in-tab="false">
<entry file="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-sdk/4.0-SNAPSHOT/gic-thirdparty-sdk-4.0-20190702.021117-1-sources.jar!/com/gic/thirdparty/pic/PicAnalyze.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="175">
<caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="dubbo-gic-webapp-plug.xml" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/resources/dubbo-gic-webapp-plug.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="625">
<caret line="25" column="8" lean-forward="true" selection-start-line="25" selection-start-column="8" selection-end-line="25" selection-end-column="8" />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="dubbo-project.properties" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/resources/dubbo-project.properties">
<provider selected="true" editor-type-id="text-editor">
<state>
<caret column="35" selection-start-column="35" selection-end-column="35" />
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="FileTemplateManagerImpl">
<option name="RECENT_TEMPLATES">
<list>
<option value="Class" />
</list>
</option>
</component>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/src/main/resources/dubbo-project.properties" />
<option value="$PROJECT_DIR$/pom.xml" />
<option value="$PROJECT_DIR$/src/main/java/com/gic/plug/web/controller/UploadImgController.java" />
<option value="$PROJECT_DIR$/src/main/resources/dubbo-gic-webapp-plug.xml" />
<option value="$PROJECT_DIR$/src/main/java/com/gic/plug/web/controller/ProvincesController.java" />
</list>
</option>
</component>
<component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
<component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
<component name="JsGulpfileManager">
<detection-done>true</detection-done>
<sorting>DEFINITION_ORDER</sorting>
</component>
<component name="MavenImportPreferences">
<option name="generalSettings">
<MavenGeneralSettings>
<option name="alwaysUpdateSnapshots" value="true" />
<option name="mavenHome" value="$PROJECT_DIR$/../../apache-maven-3.5.3" />
<option name="userSettingsFile" value="C:\Users\d\tools\apache-maven-3.5.3\conf\settings.xml" />
</MavenGeneralSettings>
</option>
</component>
<component name="MavenProjectNavigator">
<treeState>
<expand />
<select />
</treeState>
</component>
<component name="ProjectFrameBounds" extendedState="6">
<option name="x" value="-1928" />
<option name="y" value="-8" />
<option name="width" value="1936" />
<option name="height" value="1056" />
</component>
<component name="ProjectView">
<navigator proportions="" version="1">
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="PackagesPane" />
<pane id="Scope" />
<pane id="AndroidView" />
<pane id="ProjectPane">
<subPane>
<expand>
<path>
<item name="gic-webapp-plug" type="b2602c69:ProjectViewProjectNode" />
<item name="gic-webapp-plug" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="gic-webapp-plug" type="b2602c69:ProjectViewProjectNode" />
<item name="gic-webapp-plug" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="gic-webapp-plug" type="b2602c69:ProjectViewProjectNode" />
<item name="gic-webapp-plug" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="gic-webapp-plug" type="b2602c69:ProjectViewProjectNode" />
<item name="gic-webapp-plug" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="gic-webapp-plug" type="b2602c69:ProjectViewProjectNode" />
<item name="gic-webapp-plug" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="web" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="gic-webapp-plug" type="b2602c69:ProjectViewProjectNode" />
<item name="gic-webapp-plug" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="web" type="462c0819:PsiDirectoryNode" />
<item name="controller" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="gic-webapp-plug" type="b2602c69:ProjectViewProjectNode" />
<item name="gic-webapp-plug" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="web" type="462c0819:PsiDirectoryNode" />
<item name="vo" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="gic-webapp-plug" type="b2602c69:ProjectViewProjectNode" />
<item name="gic-webapp-plug" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
<item name="resources" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
</panes>
</component>
<component name="PropertiesComponent">
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="aspect.path.notification.shown" value="true" />
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
<property name="settings.editor.selected.configurable" value="MavenSettings" />
</component>
<component name="RunDashboard">
<option name="ruleStates">
<list>
<RuleState>
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
</RuleState>
<RuleState>
<option name="name" value="StatusDashboardGroupingRule" />
</RuleState>
</list>
</option>
</component>
<component name="RunManager">
<configuration default="true" type="Application" factoryName="Application">
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
</configuration>
<configuration default="true" type="JUnit" factoryName="JUnit">
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="PACKAGE_NAME" />
<option name="MAIN_CLASS_NAME" />
<option name="METHOD_NAME" />
<option name="TEST_OBJECT" value="class" />
<option name="VM_PARAMETERS" value="-ea" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<patterns />
</configuration>
<configuration name="Main" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
<module name="gic-webapp-plug" />
<option name="SPRING_BOOT_MAIN_CLASS" value="com.gic.store.web.Main" />
</configuration>
<configuration default="true" type="TestNG" factoryName="TestNG">
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="SUITE_NAME" />
<option name="PACKAGE_NAME" />
<option name="MAIN_CLASS_NAME" />
<option name="METHOD_NAME" />
<option name="GROUP_NAME" />
<option name="TEST_OBJECT" value="CLASS" />
<option name="VM_PARAMETERS" value="-ea" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
<option name="OUTPUT_DIRECTORY" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<option name="USE_DEFAULT_REPORTERS" value="false" />
<option name="PROPERTIES_FILE" />
<properties />
<listeners />
</configuration>
</component>
<component name="SvnConfiguration">
<configuration />
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="ce1fdf66-bc90-4ec2-b058-98ccf4586c0e" name="Default" comment="" />
<created>1562032139188</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1562032139188</updated>
<workItem from="1562032143419" duration="6643000" />
</task>
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="6643000" />
</component>
<component name="ToolWindowManager">
<frame x="-1928" y="-8" width="1936" height="1056" extended-state="6" />
<editor active="true" />
<layout>
<window_info anchor="right" id="Palette" />
<window_info anchor="bottom" id="Event Log" side_tool="true" />
<window_info anchor="right" id="Maven Projects" weight="0.32995737" />
<window_info anchor="bottom" id="Database Changes" show_stripe_button="false" />
<window_info id="Capture Tool" />
<window_info id="Designer" />
<window_info anchor="right" id="Database" />
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
<window_info id="UI Designer" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info anchor="right" id="Palette&#9;" />
<window_info id="Image Layers" />
<window_info anchor="bottom" id="Java Enterprise" />
<window_info anchor="right" id="Capture Analysis" />
<window_info anchor="bottom" id="Run" order="2" />
<window_info anchor="bottom" id="Version Control" show_stripe_button="false" />
<window_info anchor="bottom" id="Spring" />
<window_info anchor="bottom" id="Terminal" />
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.25" />
<window_info anchor="right" id="Bean Validation" />
<window_info id="Web" side_tool="true" />
<window_info anchor="right" id="Theme Preview" />
<window_info id="Favorites" side_tool="true" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
</layout>
</component>
<component name="TypeScriptGeneratedFilesManager">
<option name="version" value="1" />
</component>
<component name="VcsContentAnnotationSettings">
<option name="myLimit" value="2678400000" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/main/resources/spring-interceptor.xml">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/dubbo-project.properties">
<provider selected="true" editor-type-id="text-editor">
<state>
<caret column="35" selection-start-column="35" selection-end-column="35" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/application.yml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="400">
<caret line="16" column="17" selection-start-line="16" selection-start-column="17" selection-end-line="16" selection-end-column="17" />
</state>
</provider>
</entry>
<entry file="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-api/4.0-SNAPSHOT/gic-thirdparty-api-4.0-20190620.094928-7.jar!/com/gic/thirdparty/api/service/TxCloudCallingService.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="375">
<caret line="19" column="49" selection-start-line="19" selection-start-column="39" selection-end-line="19" selection-end-column="49" />
</state>
</provider>
</entry>
<entry file="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-api/4.0-SNAPSHOT/gic-thirdparty-api-4.0-20190620.094928-7-sources.jar!/com/gic/thirdparty/api/service/TxCloudCallingService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="642">
<caret line="48" column="39" selection-start-line="48" selection-start-column="39" selection-end-line="48" selection-end-column="39" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pom.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-1675">
<caret line="23" column="27" selection-start-line="23" selection-start-column="27" selection-end-line="23" selection-end-column="27" />
</state>
</provider>
</entry>
<entry file="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-sdk/4.0-SNAPSHOT/gic-thirdparty-sdk-4.0-20190702.021117-1.jar!/com/gic/thirdparty/pic/QQCloudPicUtils.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="150">
<caret line="10" column="13" selection-start-line="10" selection-start-column="13" selection-end-line="10" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-sdk/4.0-SNAPSHOT/gic-thirdparty-sdk-4.0-20190702.021117-1-sources.jar!/com/gic/thirdparty/pic/PicAnalyze.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="175">
<caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-sdk/4.0-SNAPSHOT/gic-thirdparty-sdk-4.0-20190702.021117-1-sources.jar!/com/gic/thirdparty/pic/QQCloudPicUtils.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="493">
<caret line="35" column="30" selection-start-line="35" selection-start-column="18" selection-end-line="35" selection-end-column="30" />
</state>
</provider>
</entry>
<entry file="jar://$MAVEN_REPOSITORY$/com/gic/gic-thirdparty-sdk/4.0-SNAPSHOT/gic-thirdparty-sdk-4.0-20190702.021117-1-sources.jar!/com/gic/thirdparty/pic/UploadResult.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="325">
<caret line="17" column="16" selection-start-line="17" selection-start-column="16" selection-end-line="17" selection-end-column="16" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/com/gic/plug/web/controller/UploadImgController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="418">
<caret line="32" column="108" selection-start-line="32" selection-start-column="16" selection-end-line="32" selection-end-column="108" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#501#522#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/dubbo-gic-webapp-plug.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="625">
<caret line="25" column="8" lean-forward="true" selection-start-line="25" selection-start-column="8" selection-end-line="25" selection-end-column="8" />
</state>
</provider>
</entry>
<entry file="jar://$MAVEN_REPOSITORY$/com/gic/gic-store-api/4.0-SNAPSHOT/gic-store-api-4.0-20190702.055600-9.jar!/com/gic/store/service/ProvincesApiService.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="175">
<caret line="14" column="38" selection-start-line="14" selection-start-column="4" selection-end-line="14" selection-end-column="38" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/com/gic/plug/web/controller/ProvincesController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="418">
<caret line="38" column="21" lean-forward="true" selection-start-line="38" selection-start-column="21" selection-end-line="38" selection-end-column="21" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>
<state key="ProjectJDKs.UI">
<settings>
<last-edited>1.8</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
</states>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="Spring" name="Spring">
<configuration />
</facet>
<facet type="web" name="Web">
<configuration>
<webroots />
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
<orderEntry type="library" name="Maven: com.gic:gic-commons:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: com.gic:gic-dubbo-extension:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.influxdb:influxdb-java:2.14" level="project" />
<orderEntry type="library" name="Maven: com.squareup.retrofit2:retrofit:2.4.0" level="project" />
<orderEntry type="library" name="Maven: com.squareup.retrofit2:converter-moshi:2.4.0" level="project" />
<orderEntry type="library" name="Maven: com.squareup.moshi:moshi:1.5.0" level="project" />
<orderEntry type="library" name="Maven: org.msgpack:msgpack-core:0.8.16" level="project" />
<orderEntry type="library" name="Maven: com.squareup.okhttp3:logging-interceptor:3.11.0" level="project" />
<orderEntry type="library" name="Maven: com.squareup.okhttp3:okhttp:3.10.0" level="project" />
<orderEntry type="library" name="Maven: com.squareup.okio:okio:1.14.0" level="project" />
<orderEntry type="library" name="Maven: com.gic:gic-apollo-sdk:3.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: com.gic:gic-mq-sdk-4.0:1.0.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.zookeeper:zookeeper:3.4.6" level="project" />
<orderEntry type="library" name="Maven: jline:jline:0.9.94" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty:3.7.0.Final" level="project" />
<orderEntry type="library" name="Maven: com.101tec:zkclient:0.10" level="project" />
<orderEntry type="library" name="Maven: com.gic:gic-redis-sdk:3.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.redisson:redisson:2.12.5" level="project" />
<orderEntry type="library" name="Maven: javax.cache:cache-api:1.0.0" level="project" />
<orderEntry type="library" name="Maven: io.projectreactor:reactor-stream:2.0.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.projectreactor:reactor-core:2.0.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.reactivestreams:reactive-streams:1.0.0" level="project" />
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.8.11" level="project" />
<orderEntry type="library" name="Maven: org.jodd:jodd-bean:3.7.1" level="project" />
<orderEntry type="library" name="Maven: org.jodd:jodd-core:3.7.1" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.7.9" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-all:4.1.17.Final" level="project" />
<orderEntry type="library" name="Maven: com.gic:gic-base-api:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-tx:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-orm:4.1.6.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.1.6.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.apache.dubbo:dubbo:2.7.2" level="project" />
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.8.5" level="project" />
<orderEntry type="library" name="Maven: org.apache.curator:curator-recipes:4.0.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.curator:curator-framework:4.0.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.curator:curator-client:4.0.1" level="project" />
<orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.1" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.2" level="project" />
<orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.10" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.jackson:jackson-core-lgpl:1.9.13" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.jackson:jackson-mapper-asl:1.9.13" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.jackson:jackson-core-asl:1.9.13" level="project" />
<orderEntry type="library" name="Maven: jstl:jstl:1.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-slf4j-impl:2.8.2" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.24" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.8.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-core:2.8.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-web:2.8.2" level="project" />
<orderEntry type="library" name="Maven: org.hibernate:hibernate-core:4.0.0.Final" level="project" />
<orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" />
<orderEntry type="library" name="Maven: antlr:antlr:2.7.7" level="project" />
<orderEntry type="library" name="Maven: org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec:1.0.0.Final" level="project" />
<orderEntry type="library" name="Maven: dom4j:dom4j:1.6.1" level="project" />
<orderEntry type="library" name="Maven: xml-apis:xml-apis:1.0.b2" level="project" />
<orderEntry type="library" name="Maven: org.hibernate.javax.persistence:hibernate-jpa-2.0-api:1.0.1.Final" level="project" />
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.1.0.CR2" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml:classmate:0.5.4" level="project" />
<orderEntry type="library" name="Maven: org.jboss:jandex:1.0.3.Final" level="project" />
<orderEntry type="library" name="Maven: org.hibernate.common:hibernate-commons-annotations:4.0.1.Final" level="project" />
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.2" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:druid:1.1.3" level="project" />
<orderEntry type="module-library">
<library name="Maven: com.alibaba:jconsole:1.8.0">
<CLASSES>
<root url="jar://C:/Program Files/Java/jdk1.8.0_211/lib/jconsole.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library">
<library name="Maven: com.alibaba:tools:1.8.0">
<CLASSES>
<root url="jar://C:/Program Files/Java/jdk1.8.0_211/lib/tools.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="library" name="Maven: mysql:mysql-connector-java:5.1.21" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.6" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.10" level="project" />
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpmime:4.5.6" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.12" level="project" />
<orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.7.3" level="project" />
<orderEntry type="library" name="Maven: com.google.zxing:core:3.1.0" level="project" />
<orderEntry type="library" name="Maven: com.google.zxing:javase:3.1.0" level="project" />
<orderEntry type="library" name="Maven: quartz:quartz:1.5.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.3.2" level="project" />
<orderEntry type="library" name="Maven: org.reflections:reflections:0.9.10" level="project" />
<orderEntry type="library" name="Maven: com.google.code.findbugs:annotations:2.0.1" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:guava:18.0" level="project" />
<orderEntry type="library" name="Maven: com.github.sgroschupf:zkclient:0.1" level="project" />
<orderEntry type="library" name="Maven: log4j:log4j:1.2.14" level="project" />
<orderEntry type="library" name="Maven: net.sf.json-lib:json-lib:jdk15:2.4" level="project" />
<orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.8.0" level="project" />
<orderEntry type="library" name="Maven: net.sf.ezmorph:ezmorph:1.0.6" level="project" />
<orderEntry type="library" name="Maven: com.gic:task-allocation-sdk:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: com.dexcoder:dexcoder-dal-spring:2.3.5" level="project" />
<orderEntry type="library" name="Maven: com.dexcoder:dexcoder-dal:2.3.5" level="project" />
<orderEntry type="library" name="Maven: com.github.jsqlparser:jsqlparser:0.9.5" level="project" />
<orderEntry type="library" name="Maven: com.whalin:Memcached-Java-Client:3.0.2" level="project" />
<orderEntry type="library" name="Maven: commons-pool:commons-pool:1.5.6" level="project" />
<orderEntry type="library" name="Maven: ma.glasnost.orika:orika-core:1.5.4" level="project" />
<orderEntry type="library" name="Maven: com.thoughtworks.paranamer:paranamer:2.8" level="project" />
<orderEntry type="library" name="Maven: com.carrotsearch:java-sizeof:0.0.5" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.janino:janino:3.0.8" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.janino:commons-compiler:3.0.8" level="project" />
<orderEntry type="library" name="Maven: com.dexcoder:dexcoder-commons:2.3.5" level="project" />
<orderEntry type="library" name="Maven: org.javassist:javassist:3.23.2-GA" level="project" />
<orderEntry type="library" name="Maven: com.gic:gic-platform-config:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: com.ctrip.framework.apollo:apollo-client:1.0.0" level="project" />
<orderEntry type="library" name="Maven: com.ctrip.framework.apollo:apollo-core:1.0.0" level="project" />
<orderEntry type="library" name="Maven: com.google.inject:guice:4.1.0" level="project" />
<orderEntry type="library" name="Maven: javax.inject:javax.inject:1" level="project" />
<orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" />
<orderEntry type="library" name="Maven: com.gic:gic-store-api:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.11.2" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.26" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.9.8" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.9.8" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.9.8" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.1.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.19" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.19" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.19" level="project" />
<orderEntry type="library" name="Maven: org.hibernate.validator:hibernate-validator:6.0.16.Final" level="project" />
<orderEntry type="library" name="Maven: javax.validation:validation-api:2.0.1.Final" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.9.9" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.9.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.9.9" level="project" />
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: com.gic:gic-thirdparty-api:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.2" level="project" />
<orderEntry type="library" name="Maven: cglib:cglib:3.2.5" level="project" />
<orderEntry type="library" name="Maven: org.ow2.asm:asm:5.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.ant:ant:1.9.6" level="project" />
<orderEntry type="library" name="Maven: org.apache.ant:ant-launcher:1.9.6" level="project" />
<orderEntry type="library" name="Maven: com.thoughtworks.xstream:xstream:1.4.7" level="project" />
<orderEntry type="library" name="Maven: xmlpull:xmlpull:1.1.3.1" level="project" />
<orderEntry type="library" name="Maven: xpp3:xpp3_min:1.1.4c" level="project" />
<orderEntry type="library" name="Maven: com.gic:gic-thirdparty-sdk:4.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: com.qcloud:cos_api:5.4.6" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-log4j12:1.7.21" level="project" />
<orderEntry type="library" name="Maven: joda-time:joda-time:2.9.6" level="project" />
<orderEntry type="library" name="Maven: org.bouncycastle:bcprov-jdk15on:1.59" level="project" />
</component>
</module>
\ No newline at end of file
...@@ -22,6 +22,10 @@ ...@@ -22,6 +22,10 @@
<!-- api依赖,正式版会在 gic-pom-base 里生成 --> <!-- api依赖,正式版会在 gic-pom-base 里生成 -->
<gic-store-api>4.0-SNAPSHOT</gic-store-api> <gic-store-api>4.0-SNAPSHOT</gic-store-api>
<gic-thirdparty-sdk>4.0-SNAPSHOT</gic-thirdparty-sdk> <gic-thirdparty-sdk>4.0-SNAPSHOT</gic-thirdparty-sdk>
<gic-redis-data>4.0-SNAPSHOT</gic-redis-data>
<gic-goods-api>4.0-SNAPSHOT</gic-goods-api>
<gic-mall-share-api>4.0-SNAPSHOT</gic-mall-share-api>
<gic-member-config-api>4.0-SNAPSHOT</gic-member-config-api>
</properties> </properties>
<dependencies> <dependencies>
...@@ -69,7 +73,16 @@ ...@@ -69,7 +73,16 @@
<artifactId>gic-store-api</artifactId> <artifactId>gic-store-api</artifactId>
<version>${gic-store-api}</version> <version>${gic-store-api}</version>
</dependency> </dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>gic-goods-api</artifactId>
<version>${gic-goods-api}</version>
</dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>gic-member-config-api</artifactId>
<version>${gic-member-config-api}</version>
</dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId> <artifactId>spring-boot-starter-web</artifactId>
...@@ -107,7 +120,46 @@ ...@@ -107,7 +120,46 @@
<artifactId>gic-thirdparty-sdk</artifactId> <artifactId>gic-thirdparty-sdk</artifactId>
<version>${gic-thirdparty-sdk}</version> <version>${gic-thirdparty-sdk}</version>
</dependency> </dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>widget-screening-api</artifactId>
<version>${widget-screening-api}</version>
</dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>gic-enterprise-base-api</artifactId>
<version>${gic-enterprise-base-api}</version>
</dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>gic-enterprise-common</artifactId>
<version>${gic-enterprise-common}</version>
</dependency>
<dependency>
<groupId>com.gic </groupId>
<artifactId>gic-redis-data </artifactId>
<version>${gic-redis-data} </version>
</dependency>
<dependency>
<groupId>com.gic </groupId>
<artifactId>gic-store-api </artifactId>
<version>${gic-store-api} </version>
</dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>gic-search-business-api</artifactId>
<version>${gic-search-business-api}</version>
</dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>gic-mall-share-api</artifactId>
<version>${gic-mall-share-api}</version>
</dependency>
<dependency>
<groupId>com.gic </groupId>
<artifactId>gic-platform-auth-api </artifactId>
<version>${gic-platform-auth-api} </version>
</dependency>
</dependencies> </dependencies>
<build> <build>
...@@ -129,6 +181,7 @@ ...@@ -129,6 +181,7 @@
<version>2.1.5.RELEASE</version> <version>2.1.5.RELEASE</version>
<configuration> <configuration>
<mainClass>com.gic.plug.web.Main</mainClass> <mainClass>com.gic.plug.web.Main</mainClass>
<excludeGroupIds>ch.qos.logback</excludeGroupIds>
</configuration> </configuration>
<executions> <executions>
<execution> <execution>
......
...@@ -3,6 +3,9 @@ package com.gic.plug.web; ...@@ -3,6 +3,9 @@ package com.gic.plug.web;
import com.gic.dubbo.util.DubboContextUtil; import com.gic.dubbo.util.DubboContextUtil;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration;
import org.springframework.boot.autoconfigure.data.redis.RedisRepositoriesAutoConfiguration;
import org.springframework.boot.autoconfigure.quartz.QuartzAutoConfiguration;
import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.ImportResource; import org.springframework.context.annotation.ImportResource;
...@@ -11,12 +14,21 @@ import org.springframework.context.annotation.ImportResource; ...@@ -11,12 +14,21 @@ import org.springframework.context.annotation.ImportResource;
* *
* @author zhurz * @author zhurz
*/ */
@SpringBootApplication @SpringBootApplication(
scanBasePackages = "com.gic",
exclude = {
RedisAutoConfiguration.class,
RedisRepositoriesAutoConfiguration.class,
QuartzAutoConfiguration.class
}
)
@ImportResource(value = { @ImportResource(value = {
"classpath*:applicationContext-init.xml", "classpath*:applicationContext-init.xml",
"classpath*:dubbo-setting.xml", "classpath*:dubbo-setting.xml",
"classpath*:dubbo-gic-webapp-plug.xml", "classpath*:dubbo-gic-webapp-plug.xml",
"classpath*:spring-interceptor.xml" "classpath*:spring-interceptor.xml",
"classpath*:redis-init.xml",
"classpath:web-common-spring.xml"
}) })
public class Main { public class Main {
......
package com.gic.plug.web.controller; package com.gic.plug.web.controller;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.ServiceResponse; import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.webapi.reponse.RestResponse; import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.ano.IgnoreLogin;
import com.gic.enterprise.error.ErrorCode;
import com.gic.plug.web.vo.CityVO;
import com.gic.plug.web.vo.CountyVO;
import com.gic.plug.web.vo.ProvinceVO;
import com.gic.store.dto.CityDTO; import com.gic.store.dto.CityDTO;
import com.gic.store.dto.CountyDTO; import com.gic.store.dto.CountyDTO;
import com.gic.store.dto.ProvinceDTO; import com.gic.store.dto.ProvinceDTO;
import com.gic.store.service.ProvincesApiService; import com.gic.store.service.ProvincesApiService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
...@@ -22,19 +31,20 @@ public class ProvincesController { ...@@ -22,19 +31,20 @@ public class ProvincesController {
@RequestMapping("dict-district-list") @RequestMapping("dict-district-list")
@ResponseBody @ResponseBody
@IgnoreLogin
public Object provinces(String id, @RequestParam(defaultValue = "1")int type){ public Object provinces(String id, @RequestParam(defaultValue = "1")int type){
switch (type){ switch (type){
case 1: case 1:
ServiceResponse<List<ProvinceDTO>> serviceResponse = this.provincesApiService.selectAllProvince(); ServiceResponse<List<ProvinceDTO>> serviceResponse = this.provincesApiService.selectAllProvince();
return RestResponse.success(serviceResponse.getResult()); return RestResponse.success(EntityUtil.changeEntityListByJSON(ProvinceVO.class, serviceResponse.getResult()));
case 2: case 2:
ServiceResponse<List<CityDTO>> serviceResponse1 = this.provincesApiService.selectAllCity(); ServiceResponse<List<CityDTO>> serviceResponse1 = this.provincesApiService.selectAllCity();
if(serviceResponse1.isSuccess()){ if(serviceResponse1.isSuccess()){
List<CityDTO> list = serviceResponse1.getResult(); List<CityDTO> list = serviceResponse1.getResult();
List<CityDTO> resultList = new ArrayList<>(); List<CityVO> resultList = new ArrayList<>();
for(CityDTO cityDTO : list){ for(CityDTO cityDTO : list){
if(cityDTO.getProvinceId().equals(id)){ if(cityDTO.getProvinceId().equals(id)){
resultList.add(cityDTO); resultList.add(EntityUtil.changeEntityByJSON(CityVO.class, cityDTO));
} }
} }
return RestResponse.success(resultList); return RestResponse.success(resultList);
...@@ -46,7 +56,7 @@ public class ProvincesController { ...@@ -46,7 +56,7 @@ public class ProvincesController {
List<CountyDTO> resultList = new ArrayList<>(); List<CountyDTO> resultList = new ArrayList<>();
for(CountyDTO countyDTO : list){ for(CountyDTO countyDTO : list){
if(countyDTO.getCityId().equals(id)){ if(countyDTO.getCityId().equals(id)){
resultList.add(countyDTO); resultList.add(EntityUtil.changeEntityByJSON(CountyDTO.class, countyDTO));
} }
} }
return RestResponse.success(resultList); return RestResponse.success(resultList);
...@@ -54,4 +64,123 @@ public class ProvincesController { ...@@ -54,4 +64,123 @@ public class ProvincesController {
} }
return RestResponse.success(); return RestResponse.success();
} }
@RequestMapping("query-provinces")
@ResponseBody
@IgnoreLogin
public Object searchProvinces(String search){
ServiceResponse<List<ProvinceDTO>> serviceResponse = this.provincesApiService.queryProvinces(search);
if(serviceResponse.isSuccess()){
return RestResponse.success(EntityUtil.changeEntityListByJSON(ProvinceVO.class, serviceResponse.getResult()));
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping("query-city")
@ResponseBody
@IgnoreLogin
public Object searchCitys(String search){
if(StringUtils.isBlank(search)){
return RestResponse.failure(ErrorCode.MISS_PARAMETER.getCode(), ErrorCode.MISS_PARAMETER.getMsg());
}
ServiceResponse<List<CityDTO>> serviceResponse = this.provincesApiService.queryCity(search);
if(serviceResponse.isSuccess()){
return RestResponse.success(EntityUtil.changeEntityListByJSON(CityVO.class, serviceResponse.getResult()));
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping("query-county")
@ResponseBody
@IgnoreLogin
public Object searchCounty(String search){
if(StringUtils.isBlank(search)){
return RestResponse.failure(ErrorCode.MISS_PARAMETER.getCode(), ErrorCode.MISS_PARAMETER.getMsg());
}
ServiceResponse<List<CountyDTO>> serviceResponse = this.provincesApiService.queryCounty(search);
if(serviceResponse.isSuccess()){
return RestResponse.success(EntityUtil.changeEntityListByJSON(CountyVO.class, serviceResponse.getResult()));
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping("query-district")
@ResponseBody
@IgnoreLogin
public RestResponse queryDistrictByIds(String ids){
if(StringUtils.isBlank(ids)){
return RestResponse.success();
}
List<String> result = new ArrayList<>();
ServiceResponse<List<ProvinceDTO>> serviceResponse = this.provincesApiService.selectAllProvince();
ServiceResponse<List<CityDTO>> serviceResponse1 = this.provincesApiService.selectAllCity();
ServiceResponse<List<CountyDTO>> serviceResponse2 = this.provincesApiService.selectAllCounty();
String[] idArr = ids.split(",");
for(String id : idArr){
if(serviceResponse.isSuccess()){
List<ProvinceDTO> provinceDTOList = serviceResponse.getResult();
for(ProvinceDTO provinceDTO : provinceDTOList){
if(id.equals(provinceDTO.getProvinceId())){
result.add(provinceDTO.getProvinceName());
continue;
}
}
}
if(serviceResponse1.isSuccess()){
List<CityDTO> cityDTOList = serviceResponse1.getResult();
for(CityDTO cityDTO : cityDTOList){
if(id.equals(cityDTO.getCityId())){
result.add(cityDTO.getCityName());
continue;
}
}
}
if(serviceResponse2.isSuccess()){
List<CountyDTO> countyDTOList = serviceResponse2.getResult();
for(CountyDTO countyDTO : countyDTOList){
if(id.equals(countyDTO.getCountyId())){
result.add(countyDTO.getCountyName());
continue;
}
}
}
}
return RestResponse.success(result);
}
@RequestMapping("dict-provinces-citys")
@ResponseBody
@IgnoreLogin
public RestResponse listProvincesCitys(){
ServiceResponse<List<ProvinceDTO>> serviceResponse = this.provincesApiService.selectAllProvince();
ServiceResponse<List<CityDTO>> serviceResponse1 = this.provincesApiService.selectAllCity();
List<JSONObject> result = new ArrayList<>();
if(serviceResponse.isSuccess()){
List<ProvinceDTO> list = serviceResponse.getResult();
if(CollectionUtils.isNotEmpty(list)){
for(ProvinceDTO provinceDTO : list){
JSONObject jsonObject = new JSONObject();
jsonObject.put("provinceId", provinceDTO.getProvinceId());
jsonObject.put("provinceName", provinceDTO.getProvinceName());
if(serviceResponse1.isSuccess()){
List<CityDTO> cityDTOList = serviceResponse1.getResult();
if(CollectionUtils.isNotEmpty(cityDTOList)){
List<JSONObject> jsonObjectList = new ArrayList<>();
for(CityDTO cityDTO : cityDTOList){
if(cityDTO.getProvinceId().equals(provinceDTO.getProvinceId())){
JSONObject object = new JSONObject();
object.put("cityId", cityDTO.getCityId());
object.put("cityName", cityDTO.getCityName());
jsonObjectList.add(object);
}
}
jsonObject.put("children", jsonObjectList);
}
}
result.add(jsonObject);
}
}
}
return RestResponse.success(result);
}
} }
package com.gic.plug.web.controller;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.auth.dto.ResourceDTO;
import com.gic.auth.dto.UserResourceDTO;
import com.gic.auth.service.ResourceApiService;
import com.gic.auth.service.UserResourceApiService;
import com.gic.plug.web.vo.StoreResourceVO;
import com.gic.store.dto.StoreWidgetDTO;
import com.gic.store.service.StoreWidgetApiService;
import org.apache.commons.lang.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.constants.Constants;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.goods.api.util.Constant;
import com.gic.plug.web.strategy.init.StrategyInit;
import com.gic.search.business.api.constant.enums.OperateEnum;
import com.gic.widget.screening.api.dto.EsScreeningChainDetailDTO;
import com.gic.widget.screening.api.dto.EsScreeningEnterpriseCategorySceneInfoDTO;
import com.gic.widget.screening.api.dto.EsScreeningTemplateDTO;
import com.gic.widget.screening.api.service.EsScreeningInitService;
import com.gic.widget.screening.api.service.EsScreeningTemplateService;
/**
*
*/
@Controller
public class ScreeningController {
private Logger LOGGER = LogManager.getLogger(ScreeningController.class);
@Autowired
private EsScreeningInitService esScreeningInitService;
@Autowired
private EsScreeningTemplateService esScreeningTemplateService;
@Autowired
private StrategyInit strategyInit;
@Autowired
private StoreWidgetApiService storeWidgetApiService;
@Autowired
private UserResourceApiService userResourceApiService;
@Autowired
private ResourceApiService resourceApiService;
/**
* @return
* @throws
* @Title: getScreeningTemplate
* @Description: 获取模板
* @author xugh
*/
@RequestMapping("get-screening-template")
@ResponseBody
public RestResponse getScreeningTemplate() {
List<EsScreeningTemplateDTO> list = this.esScreeningTemplateService.queryEsScreeningTemplateList();
return RestResponse.success(list);
}
/**
* @param sceneCode
* @return
* @throws
* @Title: getScreeningInitData
* @Description: 获取初始化筛选条件
* @author xugh
*/
@RequestMapping("get-screening-init-data")
@ResponseBody
public RestResponse getScreeningInitData(@RequestParam(defaultValue = "member") String sceneCode) {
String enterpriseId = UserDetailUtils.getUserDetail().getEnterpriseId().toString();
if (Constants.STORE_SCENECODE.equals(sceneCode)) {
enterpriseId = Constants.INDEX_ENTERPRISEID;
}
if (Constant.ERP_GOODS_SCREEN.equals(sceneCode) || Constant.WEIMOB_GOODS_SCREEN.equals(sceneCode)) {
//TODO
enterpriseId = "goods-test-1129";
}
List<EsScreeningEnterpriseCategorySceneInfoDTO> list = this.esScreeningInitService
.queryEsScreeningByEnterpriseAndScene(enterpriseId, sceneCode);
Collections.sort(list, new Comparator<EsScreeningEnterpriseCategorySceneInfoDTO>() {
@Override
public int compare(EsScreeningEnterpriseCategorySceneInfoDTO o1, EsScreeningEnterpriseCategorySceneInfoDTO o2) {
return o1.getCreateTime().compareTo(o2.getCreateTime());
}
});
List<EsScreeningChainDetailDTO> all = new ArrayList<>();
for (EsScreeningEnterpriseCategorySceneInfoDTO dto : list) {
String categoryId = dto.getSceneCategoryId();
EsScreeningChainDetailDTO item = this.esScreeningInitService.findRootChainByCategoryId(categoryId);
all.add(item);
}
return RestResponse.success(all);
}
@RequestMapping("get-screening-data")
@ResponseBody
public RestResponse getScreeningData(String widgetChainId) {
List<EsScreeningChainDetailDTO> list = this.esScreeningInitService
.queryEsScreeningByParentChainId(widgetChainId);
return RestResponse.success(list);
}
@RequestMapping("get-screening-chain-detail")
@ResponseBody
public RestResponse getScreeningChainDetail(String parentChainId, String widgetFieldKey) {
EsScreeningChainDetailDTO dto = this.esScreeningInitService.findChainDetail(parentChainId, widgetFieldKey);
return RestResponse.success(dto);
}
@RequestMapping("get-screening-widget-chain-detail")
@ResponseBody
public Object getScreeningWidgetDetail(String widgetChainId) {
EsScreeningChainDetailDTO dto = this.esScreeningInitService.findChainDetail(widgetChainId);
return RestResponse.success(dto);
}
}
package com.gic.plug.web.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.auth.dto.ResourceDTO;
import com.gic.auth.dto.UserResourceDTO;
import com.gic.auth.service.ResourceApiService;
import com.gic.auth.service.UserResourceApiService;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.plug.web.qo.StoreWidgetCountQO;
import com.gic.plug.web.qo.StoreWidgetQO;
import com.gic.plug.web.strategy.init.StrategyInit;
import com.gic.plug.web.vo.StoreRegionVO;
import com.gic.plug.web.vo.StoreResourceVO;
import com.gic.plug.web.vo.StoreVO;
import com.gic.plug.web.vo.StoreWidgetVO;
import com.gic.search.business.api.constant.enums.OperateEnum;
import com.gic.store.constant.StoreESFieldsEnum;
import com.gic.store.dto.StoreInfoDTO;
import com.gic.store.dto.StoreRegionDTO;
import com.gic.store.dto.StoreSearchDTO;
import com.gic.store.dto.StoreWidgetDTO;
import com.gic.store.service.StoreApiService;
import com.gic.store.service.StoreRegionApiService;
import com.gic.store.service.StoreWidgetApiService;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @author zhiwj
* @date 2019/7/12
*/
@RestController
public class StoreController {
@Autowired
private StoreRegionApiService storeRegionApiService;
@Autowired
private StoreApiService storeApiService;
@Autowired
private StoreWidgetApiService storeWidgetApiService;
@Autowired
private StrategyInit strategyInit;
@Autowired
private UserResourceApiService userResourceApiService;
@Autowired
private ResourceApiService resourceApiService;
@RequestMapping("/list-store-region")
public RestResponse listStoreRegion(String search) {
Integer enterpriseId = UserDetailUtils.getUserDetail().getEnterpriseId();
ServiceResponse<List<StoreRegionDTO>> serviceResponse = storeRegionApiService.listStoreRegion(enterpriseId, search);
if (serviceResponse.isSuccess()) {
List<StoreRegionDTO> result = serviceResponse.getResult();
return RestResponse.success(EntityUtil.changeEntityListByOrika(StoreRegionVO.class, result));
} else {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
}
@RequestMapping("/list-part-store")
public RestResponse listPartStore(Integer storeGroupId, String search) {
Integer enterpriseId = UserDetailUtils.getUserDetail().getEnterpriseId();
StoreSearchDTO storeSearchDTO = new StoreSearchDTO();
storeSearchDTO.setEnterpriseId(enterpriseId);
storeSearchDTO.setStoreGroupId(storeGroupId);
storeSearchDTO.setSearch(search);
if(UserDetailUtils.getUserDetail().getUserResourceInfo() != null){
storeSearchDTO.setStoreResource(UserDetailUtils.getUserDetail().getUserResourceInfo().getStoreResource());
}
String returnFields = StoreESFieldsEnum.STOREID.getField()+","+StoreESFieldsEnum.STORECODE.getField()+","+StoreESFieldsEnum.STORENAME.getField();
ServiceResponse serviceResponse = storeApiService.listStore(storeSearchDTO,
1, 100, returnFields);
if (serviceResponse.isSuccess()) {
return RestResponse.success(serviceResponse.getResult());
} else {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
}
@RequestMapping("get-store-count")
public RestResponse getStoreCount(@RequestBody StoreWidgetCountQO storeWidgetCountQO){
Integer enterpriseId = UserDetailUtils.getUserDetail().getEnterpriseId();
StoreSearchDTO storeSearchDTO = new StoreSearchDTO();
storeSearchDTO.setEnterpriseId(enterpriseId);
storeSearchDTO.setSearchJson(storeWidgetCountQO.getSearchJson());
storeSearchDTO.setAuthSearchJson(storeWidgetCountQO.getAuthSearchJson());
ServiceResponse<Long> response = storeApiService.queryStoreCountFromES(storeSearchDTO);
return RestResponse.success(response.getResult());
}
@RequestMapping("save-store-widget")
public RestResponse saveStoreWidget(@RequestBody StoreWidgetQO storeWidgetQO){
StoreWidgetDTO storeWidgetDTO = new StoreWidgetDTO();
storeWidgetDTO.setAuthSearchParam(storeWidgetQO.getAuthSearchParam());
storeWidgetDTO.setSearchParam(storeWidgetQO.getSearchParam());
storeWidgetDTO.setStoreWidgetId(storeWidgetQO.getStoreWidgetId());
storeWidgetDTO.setWriteBackParam(storeWidgetQO.getWriteBackParam());
storeWidgetDTO.setAuthMode(storeWidgetQO.getAuthMode());
ServiceResponse<Integer> storeWidgetResponse = this.storeWidgetApiService.saveAuthStoreWidget(storeWidgetDTO);
if(storeWidgetResponse.isSuccess()){
return RestResponse.success(storeWidgetResponse.getResult());
}
return RestResponse.success();
}
@RequestMapping("get-store-widget")
public RestResponse getStoreWidget(Integer storeWidgetId) throws ClassNotFoundException {
ServiceResponse<StoreWidgetDTO> response = this.storeWidgetApiService.getStoreWidget(storeWidgetId);
StoreWidgetVO storeWidgetVO = EntityUtil.changeEntityByJSON(StoreWidgetVO.class, response.getResult());
storeWidgetVO.setScreenBack(this.getScreenBack(storeWidgetVO.getSearchParam()));
return RestResponse.success(storeWidgetVO);
}
@RequestMapping("screen-back")
@ResponseBody
public Object screenBack(String param) throws ClassNotFoundException {
return RestResponse.success(this.getScreenBack(param));
}
@RequestMapping("get-user-store-resource")
@ResponseBody
public RestResponse getUserStoreResouce() throws ClassNotFoundException {
if(UserDetailUtils.getUserDetail().getUserInfo().getSuperAdmin() != 1){
ServiceResponse<UserResourceDTO> resource = this.userResourceApiService.getResourceByUserId(UserDetailUtils.getUserDetail().getUserId());
if (resource.isSuccess() && resource.getResult() != null) {
ServiceResponse<ResourceDTO> serviceResource = this.resourceApiService.getResource(resource.getResult().getResourceId());
if(serviceResource.isSuccess() && serviceResource.getResult() != null){
ServiceResponse<StoreWidgetDTO> storeWidget = this.storeWidgetApiService.getStoreWidget(serviceResource.getResult().getStoreResource().intValue());
if(storeWidget.isSuccess() && storeWidget.getResult() != null){
StoreResourceVO vo = new StoreResourceVO();
vo.setAuthMode(storeWidget.getResult().getAuthMode());
vo.setSearchJson(storeWidget.getResult().getSearchParam());
vo.setSceenBack(this.getScreenBack(storeWidget.getResult().getSearchParam()));
return RestResponse.success(vo);
}
}
}
}
return RestResponse.success(new StoreResourceVO());
}
private String getScreenBack(String param) throws ClassNotFoundException {
if(StringUtils.isBlank(param)){
return "";
}
Integer enterpriseId = UserDetailUtils.getUserDetail().getEnterpriseId();
JSONArray array = JSON.parseArray(param);
StringBuilder backMessage = new StringBuilder();
for(int i=0; i< array.size(); i++){
JSONObject jsonObject = array.getJSONObject(i);
String type = jsonObject.getString("type");
if(StringUtils.isNotBlank(type)){
if(OperateEnum.OPERATE_AND_NOT.getValue().equals(type)){
backMessage.append(OperateEnum.OPERATE_AND_NOT.getDescribe()).append(" ");
}
if(OperateEnum.OPERATE_OR.getValue().equals(type)){
backMessage.append(OperateEnum.OPERATE_OR.getDescribe()).append(" ");
}
}
JSONArray list = jsonObject.getJSONArray("list");
StringBuilder stringBuilder = new StringBuilder();
for(int j = 0; j<list.size(); j++){
JSONObject json = list.getJSONObject(j);
String key = json.getJSONObject("data").getString("key");
String value = json.getJSONObject("data").getString("value");
String compute = json.getJSONObject("data").getString("compute");
String message = this.strategyInit.getStrategyMap().get(key).screenBack(compute, value, key, enterpriseId);
stringBuilder.append(message);
if(j < list.size()-1){
stringBuilder.append("并且");
}
}
backMessage.append(stringBuilder);
}
return backMessage.toString();
}
}
package com.gic.plug.web.controller;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.gic.store.utils.StoreRedisKeyUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.error.ErrorCode;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.plug.web.vo.StoreFieldRegionVO;
import com.gic.plug.web.vo.StoreFieldSelectVO;
import com.gic.redis.data.util.RedisUtil;
import com.gic.store.constant.StoreFieldDateEnum;
import com.gic.store.constant.StoreFieldTextEnum;
import com.gic.store.constant.StoreFieldTypeEnum;
import com.gic.store.dto.StoreFieldDTO;
import com.gic.store.dto.StoreFieldSelectDTO;
import com.gic.store.service.StoreFieldApiService;
import com.gic.store.service.StoreFieldSelectApiService;
/**
* @author guojx
* @date 2019/7/15 9:21 AM
*/
@RestController
@RequestMapping("/store-field")
public class StoreFieldController {
private static final Logger logger = LoggerFactory.getLogger(StoreFieldController.class);
@Autowired
private StoreFieldApiService storeFieldApiService;
@Autowired
private StoreFieldSelectApiService storeFieldSelectApiService;
@RequestMapping("/list-store-field-type")
public RestResponse listStoreFieldType() {
Map<Integer, String> result = new HashMap<>(16);
for (StoreFieldTypeEnum typeEnum : StoreFieldTypeEnum.values()) {
result.put(typeEnum.getCode(), typeEnum.getMessage());
}
return RestResponse.success(result);
}
@RequestMapping("/list-store-field-date-type")
public RestResponse listStoreFieldDateType() {
Map<Integer, String> result = new HashMap<>(16);
for (StoreFieldDateEnum typeEnum : StoreFieldDateEnum.values()) {
result.put(typeEnum.getCode(), typeEnum.getMessage());
}
return RestResponse.success(result);
}
/**
* 文本类型
* @return
*/
@RequestMapping("/list-store-field-text-type")
public RestResponse listStoreFieldTextType() {
Map<Integer, String> result = new HashMap<>(16);
for (StoreFieldTextEnum typeEnum : StoreFieldTextEnum.values()) {
result.put(typeEnum.getCode(), typeEnum.getMessage());
}
return RestResponse.success(result);
}
@RequestMapping("/list-store-field-by-region-id")
public RestResponse listStoreFieldByRegionId(Integer regionId) {
Integer enterpriseId = UserDetailUtils.getUserDetail().getEnterpriseId();
if (regionId == null) {
RestResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "域ID不能为空");
}
ServiceResponse<List<StoreFieldDTO>> result = storeFieldApiService.listStoreFieldByRegionId(regionId);
if (result.isSuccess()) {
return RestResponse.success(transferDtoToVo(result.getResult(), enterpriseId));
} else {
return RestResponse.failure(result.getCode(), result.getMessage());
}
}
@RequestMapping("/list-store-field")
public RestResponse listStoreField(String search) {
Integer enterpriseId = UserDetailUtils.getUserDetail().getEnterpriseId();
ServiceResponse<List<StoreFieldDTO>> result = storeFieldApiService.listStoreField(enterpriseId, search);
if (result.isSuccess()) {
return RestResponse.success(transferDtoToVo(result.getResult(), enterpriseId));
} else {
return RestResponse.failure(result.getCode(), result.getMessage());
}
}
@RequestMapping("/list-store-field-select")
public RestResponse listStoreFieldSelect(String search, Integer storeFieldId) {
ServiceResponse<List<StoreFieldSelectDTO>> result = storeFieldSelectApiService
.listStoreFieldSelect(storeFieldId, search);
if (result.isSuccess()) {
return RestResponse.success(EntityUtil.changeEntityListNew(StoreFieldSelectVO.class, result.getResult()));
} else {
return RestResponse.failure(result.getCode(), result.getMessage());
}
}
private List<StoreFieldRegionVO> transferDtoToVo(List<StoreFieldDTO> dtoList, Integer enterpriseId) {
String key = "enterprise:store:storeField:" + enterpriseId + ":";
List<StoreFieldRegionVO> voList = new ArrayList<>(dtoList.size());
for (StoreFieldDTO dto : dtoList) {
//不需要文本类型字段
if (dto.getStoreFieldType().intValue() != StoreFieldTypeEnum.TEXT.getCode()) {
Object obj = RedisUtil.getCache(StoreRedisKeyUtils.getStoreFieldKey(enterpriseId, dto.getStoreFieldId()));
if (obj != null) {
StoreFieldRegionVO vo = EntityUtil.changeEntityNew(StoreFieldRegionVO.class, dto);
vo.setStoreFieldKey(obj.toString());
if (vo.getStoreFieldType().intValue() == StoreFieldTypeEnum.DATE.getCode()) {
JSONObject json = JSON.parseObject(dto.getStoreFieldDetail());
vo.setDateType(json.getIntValue("dateType"));
}
voList.add(vo);
}
}
}
return voList;
}
}
package com.gic.plug.web.controller;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.store.constant.StoreGroupConstant;
import com.gic.store.dto.StoreGroupDTO;
import com.gic.store.service.StoreGroupApiService;
import com.gic.store.utils.storegroup.ChangeListToTree;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @author guojx
* @date 2019/7/12 2:54 PM
*/
@RestController
@RequestMapping("/store-group")
public class StoreGroupController {
private static final Logger logger = LoggerFactory.getLogger(StoreGroupController.class);
@Autowired
private StoreGroupApiService storeGroupApiService;
@RequestMapping("/list")
public RestResponse listStoreGroup() {
StoreGroupDTO dto = new StoreGroupDTO();
dto.setEnterpriseId(UserDetailUtils.getUserDetail().getEnterpriseId());
List<StoreGroupDTO> list = storeGroupApiService.listStoreGroup(dto).getResult();
return RestResponse.success(ChangeListToTree.changeListToTreeNotIncludeAllStore(StoreGroupConstant.ALL_STORE_LEVEL, list));
}
}
...@@ -2,12 +2,13 @@ package com.gic.plug.web.controller; ...@@ -2,12 +2,13 @@ package com.gic.plug.web.controller;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.gic.commons.webapi.reponse.RestResponse; import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.ano.IgnoreLogin;
import com.gic.thirdparty.pic.QQCloudPicUtils; import com.gic.thirdparty.pic.QQCloudPicUtils;
import com.gic.thirdparty.pic.UploadResult; import com.gic.thirdparty.pic.UploadResult;
import org.apache.log4j.LogManager; import org.apache.log4j.LogManager;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.multipart.MultipartHttpServletRequest;
...@@ -15,11 +16,12 @@ import javax.servlet.http.HttpServletRequest; ...@@ -15,11 +16,12 @@ import javax.servlet.http.HttpServletRequest;
import java.io.IOException; import java.io.IOException;
import java.util.*; import java.util.*;
@Controller @RestController
public class UploadImgController { public class UploadImgController {
private Logger logger = LogManager.getLogger(UploadImgController.class); private Logger logger = LogManager.getLogger(UploadImgController.class);
@RequestMapping("upload-imamgs") @RequestMapping("upload-images")
@IgnoreLogin
public RestResponse uploadImages(HttpServletRequest request) throws IOException { public RestResponse uploadImages(HttpServletRequest request) throws IOException {
MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request; MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request;
Iterator<String> iter = multiRequest.getFileNames(); Iterator<String> iter = multiRequest.getFileNames();
...@@ -30,7 +32,7 @@ public class UploadImgController { ...@@ -30,7 +32,7 @@ public class UploadImgController {
Map<String, Object> map = null; Map<String, Object> map = null;
for (int i = 0; i < list.size(); i++) { for (int i = 0; i < list.size(); i++) {
MultipartFile mf = list.get(i); MultipartFile mf = list.get(i);
UploadResult uploadResult = QQCloudPicUtils.uploadLocalPicStream(null, null, mf.getBytes()); UploadResult uploadResult = QQCloudPicUtils.uploadLocalPicStream("pic01", "", mf.getBytes());
logger.info("上传图片结果:"+JSON.toJSONString(uploadResult)); logger.info("上传图片结果:"+JSON.toJSONString(uploadResult));
Map<String, Object> pic = new HashMap<>(); Map<String, Object> pic = new HashMap<>();
pic.put("fileId", uploadResult.getFileId()); pic.put("fileId", uploadResult.getFileId());
......
package com.gic.plug.web.controller.goods;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.goods.api.dto.GoodsCordDTO;
import com.gic.goods.api.dto.SpecCordDTO;
import com.gic.goods.api.service.CordApiService;
import com.gic.goods.api.service.MallGoodsBusinessApiService;
import com.gic.goods.api.util.Constant;
import com.gic.mall.base.api.enums.ErrorCodeEnums;
import com.gic.mall.share.api.dto.shop.ShopDTO;
import com.gic.mall.share.api.service.ShopApiService;
import com.gic.member.config.api.dto.AppletsConfigSimpleOutputDTO;
import com.gic.member.config.api.service.AppletsConfigApiService;
import com.gic.plug.web.vo.goods.MallGoodsCordVO;
import com.gic.search.business.api.constant.enums.OperateEnum;
import com.gic.search.business.api.dto.DynamicSearchDTO;
import com.gic.search.business.api.dto.ESResponseQueryBatchDTO;
import com.gic.search.business.api.service.EsBusinessOperaApiService;
import com.gic.search.business.api.utils.QueryConditionAssemblyUtil;
import com.gic.widget.screening.api.service.EsScreeningSearchService;
import com.google.common.base.Joiner;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 商城装修选择器
*/
@RestController
public class AppletConfigGoodsController extends BaseGoodsController {
@Autowired
private CordApiService cordApiService;
@Autowired
private ShopApiService shopApiService;
@Autowired
private AppletsConfigApiService appletsConfigApiService;
@Autowired
private EsScreeningSearchService esScreeningSearchService;
@Autowired
private EsBusinessOperaApiService esBusinessOperaApiService;
@Autowired
private MallGoodsBusinessApiService mallGoodsBusinessApiService;
private static final Logger log = LogManager.getLogger(AppletConfigGoodsController.class);
@RequestMapping("get-mall-cord-list")
public RestResponse getMallCordList(String appConfigId, Long shopId) {
Long areaId = null;
if (StringUtils.isNotBlank(appConfigId)) {
ServiceResponse<AppletsConfigSimpleOutputDTO> appServiceResponse = appletsConfigApiService.selectAppletsConfigIdByAppId(appConfigId, 1129);
if (appServiceResponse.getResult() == null) {
return RestResponse.failure(ErrorCodeEnums.MAll_ERR.getCode(), "小程序不存在");
}
ServiceResponse<ShopDTO> shopDTOServiceResponse = shopApiService.getShopByAppletId(appServiceResponse.getResult().getAppletConfigId(), 1129, 1);
if (shopDTOServiceResponse.getResult() == null) {
return RestResponse.failure(ErrorCodeEnums.MAll_ERR.getCode(), "不存在店铺");
}
areaId = shopDTOServiceResponse.getResult().getAreaId();
} else if (shopId != null) {
ServiceResponse<ShopDTO> shopDTOServiceResponse = shopApiService.getShopDetailsById(shopId, 1129);
if (shopDTOServiceResponse.getResult() == null) {
return RestResponse.failure(ErrorCodeEnums.MAll_ERR.getCode(), "不存在店铺");
}
areaId = shopDTOServiceResponse.getResult().getAreaId();
}
ServiceResponse<List<SpecCordDTO>> listServiceResponse = cordApiService.listSpecCordDTO(areaId, getEnterpriseId());
return RestResponse
.success(EntityUtil.changeEntityListByOrika(MallGoodsCordVO.class, listServiceResponse.getResult()));
}
/**
* 商城组对外提供的组件
* @param currentPage
* @param pageSize
* @param appConfigId
* @param search
* @param cordId
* @return
*/
@RequestMapping("list-mall-goods-selector")
public RestResponse listGoodsByChannel(@RequestParam(value = "currentPage", defaultValue = "1") Integer currentPage,
@RequestParam(value = "pageSize", defaultValue = "20") Integer pageSize, String appConfigId, String search, Long cordId,
Long shopId) {
Long areaId = null;
if (StringUtils.isNotBlank(appConfigId)) {
ServiceResponse<AppletsConfigSimpleOutputDTO> appServiceResponse = appletsConfigApiService.selectAppletsConfigIdByAppId(appConfigId, 1129);
if (appServiceResponse.getResult() == null) {
return RestResponse.failure(ErrorCodeEnums.MAll_ERR.getCode(), "小程序不存在");
}
Integer shopType = 1;
ServiceResponse<ShopDTO> shopDTOServiceResponse = shopApiService.getShopByAppletId(appServiceResponse.getResult().getAppletConfigId(), 1129, shopType);
if (shopDTOServiceResponse.getResult() == null) {
return RestResponse.failure(ErrorCodeEnums.MAll_ERR.getCode(), "不存在店铺");
}
areaId = shopDTOServiceResponse.getResult().getAreaId();
} else if (shopId != null) {
ServiceResponse<ShopDTO> shopDTOServiceResponse = shopApiService.getShopDetailsById(shopId, 1129);
if (shopDTOServiceResponse.getResult() == null) {
return RestResponse.failure(ErrorCodeEnums.MAll_ERR.getCode(), "不存在店铺");
}
areaId = shopDTOServiceResponse.getResult().getAreaId();
}
JSONObject cordJSON = null;
if (cordId != null) {
ServiceResponse<List<GoodsCordDTO>> serviceResponse = cordApiService.listChildAll(cordId, getEnterpriseId());
List<Long> cordList = new ArrayList<>();
for (GoodsCordDTO goodsCord : serviceResponse.getResult()) {
cordList.add(goodsCord.getSpecCordId());
}
cordList.add(cordId);
cordJSON = QueryConditionAssemblyUtil.createSimpleQueryNode("cordId",
OperateEnum.OPERATE_CONTAIN, Joiner.on(" ").join(cordList));
}
ServiceResponse<ESResponseQueryBatchDTO> serviceResponse = searchGoods(currentPage, pageSize, areaId, search,
Constant.CHANNEL_CODE_MALL, cordJSON);
if (serviceResponse.isSuccess()) {
List<Long> goodsIds = new ArrayList<>();
if (CollectionUtils.isNotEmpty(serviceResponse.getResult().getRes())) {
serviceResponse.getResult().getRes().forEach(json -> {
Long goodsId = json.getLong("goodsId");
goodsIds.add(goodsId);
});
}
ServiceResponse<Map<Long, BigDecimal>> mapServiceResponse = mallGoodsBusinessApiService.getLowestSkuPrice(goodsIds, 1129);
if (mapServiceResponse.isSuccess()) {
Map<Long, BigDecimal> map = mapServiceResponse.getResult();
serviceResponse.getResult().getRes().forEach(json -> {
Long goodsId = json.getLong("goodsId");
json.put("minSkuPrice", map.getOrDefault(goodsId, BigDecimal.valueOf(0)));
});
}
return RestResponse.success(serviceResponse.getResult());
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
/**
* 商城组对内的渠道商品组件
* @param currentPage
* @param pageSize
* @param search
* @return
*/
@RequestMapping("list-channel-goods-selector")
public RestResponse listGoodsChannel(@RequestParam(value = "currentPage", defaultValue = "1") Integer currentPage,
@RequestParam(value = "pageSize", defaultValue = "20") Integer pageSize, String search,
Double startPrice, Double endPrice, Integer startStock, Integer endStock, String channelCode) {
JSONObject queryObject = null;
if (startPrice != null) {
queryObject = QueryConditionAssemblyUtil.createSimpleQueryNode("goodsPrice",
OperateEnum.OPERATE_GTE, startPrice);
}
if (endPrice != null) {
if (queryObject == null) {
queryObject = QueryConditionAssemblyUtil.createSimpleQueryNode("goodsPrice",
OperateEnum.OPERATE_LTE, endPrice);
} else {
queryObject = QueryConditionAssemblyUtil.addQueryNodeForSiblin("goodsPrice",
OperateEnum.OPERATE_LTE, endPrice, queryObject, OperateEnum.OPERATE_AND);
}
}
if (startStock != null) {
if (queryObject == null) {
queryObject = QueryConditionAssemblyUtil.createSimpleQueryNode("stock",
OperateEnum.OPERATE_GTE, startStock);
} else {
queryObject = QueryConditionAssemblyUtil.addQueryNodeForSiblin("stock",
OperateEnum.OPERATE_GTE, startStock, queryObject, OperateEnum.OPERATE_AND);
}
}
if (endStock != null) {
if (queryObject == null) {
queryObject = QueryConditionAssemblyUtil.createSimpleQueryNode("stock",
OperateEnum.OPERATE_LTE, endStock);
} else {
queryObject = QueryConditionAssemblyUtil.addQueryNodeForSiblin("stock",
OperateEnum.OPERATE_LTE, endStock, queryObject, OperateEnum.OPERATE_AND);
}
}
ServiceResponse<ESResponseQueryBatchDTO> serviceResponse = searchGoods(currentPage, pageSize, null, search,
Constant.CHANNEL_CODE_MALL, queryObject);
if (serviceResponse.isSuccess()) {
return RestResponse.success(serviceResponse.getResult());
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
private ServiceResponse<ESResponseQueryBatchDTO> searchGoods(Integer currentPage, Integer pageSize,
Long goodsDomainId, String search, String channelCode, JSONObject queryObject) {
DynamicSearchDTO searchDTO = new DynamicSearchDTO();
String searchCode = "";
if (Constant.CHANNEL_CODE_MALL.equals(channelCode)) {
searchCode = "gic_mall_goods";
} else if (Constant.CHANNEL_CODE_ERP.equals(channelCode)) {
searchCode = "erp_goods";
}
String esName = esScreeningSearchService.getCurrentEsName("1129", searchCode);
searchDTO.setIndexName(esName);
searchDTO.setColumnCategoryCode(searchCode);
searchDTO.setEnterpriseId("1129");
searchDTO.setType("mapper_type");
searchDTO.setBegin((currentPage - 1) * pageSize);
searchDTO.setRecordNumber(pageSize);
JSONObject jsonObject = null;
JSONObject status = QueryConditionAssemblyUtil.createSimpleQueryNode("status", OperateEnum.OPERATE_EQ, 2);
if (Constant.CHANNEL_CODE_MALL.equals(channelCode)) {
status = QueryConditionAssemblyUtil.addQueryNodeForSiblin(status, QueryConditionAssemblyUtil.createSimpleQueryNode("upShelfTime", OperateEnum.OPERATE_LTE, new Date().getTime()), OperateEnum.OPERATE_AND);
}
if (goodsDomainId == null) {
jsonObject = status;
} else {
jsonObject = QueryConditionAssemblyUtil.createSimpleQueryNode("goodsDomainId",
OperateEnum.OPERATE_EQ, goodsDomainId);
jsonObject = QueryConditionAssemblyUtil.addQueryNodeForSiblin(status, jsonObject, OperateEnum.OPERATE_AND);
}
if (StringUtils.isNotBlank(search)) {
JSONObject goodsCodeJson = QueryConditionAssemblyUtil.createSimpleQueryNode("goodsCode",
OperateEnum.OPERATE_LIKE, search);
JSONObject goodsNameJson = QueryConditionAssemblyUtil.createSimpleQueryNode("goodsName",
OperateEnum.OPERATE_LIKE, search);
JSONObject goodsBarCodeJson = QueryConditionAssemblyUtil.createSimpleQueryNode("goodsBarCode",
OperateEnum.OPERATE_LIKE, search);
List<JSONObject> jsonArray = new ArrayList<>();
jsonArray.add(goodsCodeJson);
jsonArray.add(goodsNameJson);
jsonArray.add(goodsBarCodeJson);
JSONObject object = QueryConditionAssemblyUtil.createListQueryNode(jsonArray, OperateEnum.OPERATE_OR);
jsonObject = QueryConditionAssemblyUtil.addQueryNodeForSiblin(object, jsonObject, OperateEnum.OPERATE_AND);
}
if (queryObject != null) {
jsonObject = QueryConditionAssemblyUtil.addQueryNodeForSiblin(queryObject, jsonObject, OperateEnum.OPERATE_AND);
}
searchDTO.setSearchJson(jsonObject);
ServiceResponse<ESResponseQueryBatchDTO> serviceResponse = esBusinessOperaApiService.queryDataBatch(searchDTO,
false, null);
return serviceResponse;
}
}
package com.gic.plug.web.controller.goods;
import com.gic.enterprise.base.EnterpriseInfo;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.mall.base.api.exception.GicMallException;
public class BaseGoodsController {
EnterpriseInfo getLoginEnterpriseInfo() {
EnterpriseInfo enterpriseInfo = UserDetailUtils.getUserDetail().getEnterpriseInfo();
if (enterpriseInfo == null) {
throw new GicMallException("未登录");
}
return enterpriseInfo;
}
Integer getEnterpriseId() {
return getLoginEnterpriseInfo().getEnterpriseId();
}
}
package com.gic.plug.web.controller.goods;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.contants.SortType;
import com.gic.commons.util.PageHelperUtils;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.goods.api.dto.BrandDTO;
import com.gic.goods.api.dto.GoodsRightsSelectorDTO;
import com.gic.goods.api.service.BrandApiService;
import com.gic.goods.api.service.GoodsRightsSelectorApiService;
import com.gic.goods.api.util.Constant;
import com.gic.plug.web.vo.goods.GoodsBrandVO;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@RestController
public class GoodsBrandController extends BaseGoodsController {
@Autowired
private BrandApiService brandApiService;
@Autowired
private GoodsRightsSelectorApiService goodsRightsSelectorApiService;
@RequestMapping("/goods-brand-list")
public RestResponse goodsBrandList(int pageSize, int currentPage, String search, Long goodsDomainId, String channelCode) {
Long resourceId = UserDetailUtils.getUserDetail().getUserResourceInfo() == null ? null :
UserDetailUtils.getUserDetail().getUserResourceInfo().getGoodsResourceId();
ServiceResponse<GoodsRightsSelectorDTO> selectorDTOServiceResponse = goodsRightsSelectorApiService
.getGoodsRightsSelector(resourceId, getEnterpriseId()
, UserDetailUtils.getUserDetail().getUserInfo().getSuperAdmin());
if (!selectorDTOServiceResponse.isSuccess() || selectorDTOServiceResponse.getResult() == null ||
selectorDTOServiceResponse.getResult().getHasRights() == Constant.NO) {
return RestResponse.success(Collections.EMPTY_LIST);
}
// 是否最高权限
List<Long> branIdList = new ArrayList<>();
if (UserDetailUtils.getUserDetail().getUserResourceInfo() != null
&& UserDetailUtils.getUserDetail().getUserResourceInfo().getGoodsResourceId() != null) {
if (selectorDTOServiceResponse.isSuccess()) {
GoodsRightsSelectorDTO goodsRightsSelectorDTO = selectorDTOServiceResponse.getResult();
if (goodsRightsSelectorDTO != null) {
JSONObject brandRightsObject = JSONObject.parseObject(goodsRightsSelectorDTO.getGoodsRightsBrands());
JSONArray array = brandRightsObject.getJSONArray(channelCode + "_" + goodsDomainId);
if (CollectionUtils.isNotEmpty(array)) {
for (int i = 0; i < array.size(); i++) {
Long brandId = array.getLong(i);
branIdList.add(brandId);
}
}
}
}
}
return findBrandListByParams(currentPage, pageSize,goodsDomainId, search, getEnterpriseId());
}
/**
* 权限商品筛选器的品牌接口
* @param pageSize
* @param currentPage
* @param search
* @param goodsDomainId
* @return
*/
@RequestMapping("/goods-brand-list-for-rights")
public RestResponse goodsBrandListForRights(int pageSize, int currentPage, String search, Long goodsDomainId) {
return findBrandListByParams(currentPage, pageSize,goodsDomainId, search, getEnterpriseId());
}
private RestResponse findBrandListByParams(int currentPage, int pageSize, Long goodsDomainId, String search, Integer enterpriseId) {
List<Long> branIdList = new ArrayList<>();
ServiceResponse<Page<BrandDTO>> serviceResponse = brandApiService.findBrandPage(currentPage, pageSize, goodsDomainId, search, branIdList, SortType.sortDescType, enterpriseId);
if (!serviceResponse.isSuccess()) {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
Page<GoodsBrandVO> page = PageHelperUtils.changePageToCurrentPage(serviceResponse.getResult(), GoodsBrandVO.class);
//TODO 品牌id的拼写错误
for (int i = 0; i < page.getResult().size(); i++) {
GoodsBrandVO goodsBrandVO = page.getResult().get(i);
goodsBrandVO.setSpecBrandId(serviceResponse.getResult().getResult().get(i).getSepcBrandId());
}
return RestResponse.success(page);
}
}
package com.gic.plug.web.controller.goods;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.goods.api.dto.CategoryDTO;
import com.gic.goods.api.dto.ErrorCode;
import com.gic.goods.api.service.CategoryApiService;
import com.gic.plug.web.vo.goods.CategoryVO;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class GoodsCategoryController extends BaseGoodsController {
@Autowired
private CategoryApiService categoryApiSerivce;
/**
* @Description: 查询所有(一级类目)
* @author xub
*/
@GetMapping("list-parent-category")
public RestResponse listParentCord(String channelCode, Long goodsDomainId) {
if (goodsDomainId == null || StringUtils.isBlank(channelCode)) {
return RestResponse.failure(ErrorCode.UNKNOW_ERROR.getCode(), "参数不全");
}
ServiceResponse<List<CategoryDTO>> serviceResponse = categoryApiSerivce.listParentAll(channelCode, goodsDomainId, null, getEnterpriseId());
List<CategoryDTO> result = serviceResponse.getResult();
if (CollectionUtils.isEmpty(result)) {
return RestResponse.success();
}
List<CategoryVO> list = EntityUtil.changeEntityListByOrika(CategoryVO.class, result);
return RestResponse.success(list);
}
/**
* @Description: 查询所有(二级类目)
* @author xub
*/
@GetMapping("list-child-category")
public RestResponse listChildAll(String channelCode, Long specParentId) {
if (specParentId == null || StringUtils.isBlank(channelCode)) {
return RestResponse.failure(ErrorCode.UNKNOW_ERROR.getCode(), "参数不全");
}
ServiceResponse<List<CategoryDTO>> serviceResponse = categoryApiSerivce.listChildAll(channelCode, specParentId, null, getEnterpriseId());
List<CategoryDTO> result = serviceResponse.getResult();
if (CollectionUtils.isEmpty(result)) {
return RestResponse.success();
}
List<CategoryVO> list = EntityUtil.changeEntityListByOrika(CategoryVO.class, result);
return RestResponse.success(list);
}
}
package com.gic.plug.web.controller.goods;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.goods.api.dto.GoodsSkuDTO;
import com.gic.goods.api.service.GoodsApiService;
import com.gic.goods.api.util.Constant;
import com.gic.plug.web.vo.goods.GoodsVO;
import com.gic.search.business.api.constant.enums.OperateEnum;
import com.gic.search.business.api.dto.DynamicSearchDTO;
import com.gic.search.business.api.dto.ESResponseQueryBatchDTO;
import com.gic.search.business.api.service.EsBusinessOperaApiService;
import com.gic.search.business.api.utils.QueryConditionAssemblyUtil;
import com.gic.widget.screening.api.service.EsScreeningSearchService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.curator.shaded.com.google.common.collect.Lists;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @ClassName: GoodsTagController
* @Description: 商品标签相关接口
* @author xub
* @date 2019/8/29 上午10:03
*/
@RestController
public class GoodsController extends BaseGoodsController {
@Autowired
private EsBusinessOperaApiService esBusinessOperaApiService;
@Autowired
private EsScreeningSearchService esScreeningSearchService;
@Autowired
private GoodsApiService goodsApiService;
/**
* @Description: 查询所有(不分页)
* @author xub
*/
@GetMapping("list-goods")
public RestResponse ListGoods(@RequestParam(value = "currentPage", defaultValue = "1") Integer currentPage,
@RequestParam(value = "pageSize", defaultValue = "20") Integer pageSize, Long goodsDomainId,String search,String channelCode) {
ServiceResponse<ESResponseQueryBatchDTO> serviceResponse = searchES(currentPage,pageSize,goodsDomainId,search,channelCode);
if (serviceResponse.isSuccess()) {
return RestResponse.success(serviceResponse.getResult());
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
/**
* @Description: 查询所有(不分页)
* @author xub
*/
@GetMapping("list-sku")
public RestResponse ListSku(@RequestParam(value = "currentPage", defaultValue = "1") Integer currentPage,
@RequestParam(value = "pageSize", defaultValue = "20") Integer pageSize, Long goodsDomainId,String search,String channelCode) {
ServiceResponse<ESResponseQueryBatchDTO> serviceResponse = searchES(currentPage,pageSize,goodsDomainId,search ,channelCode);
if (!serviceResponse.isSuccess()) {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
//商品信息
List<JSONObject> list = serviceResponse.getResult().getRes();
if (CollectionUtils.isEmpty(list)) {
return RestResponse.success(Collections.EMPTY_LIST);
}
//1、获取商品信息
List<GoodsVO> goodsVOS = Lists.newArrayList();
for (JSONObject jsonObject : list) {
GoodsVO goodsVO = JSONObject.toJavaObject(jsonObject, GoodsVO.class);
goodsVOS.add(goodsVO);
}
//2、获取商品ID信息
List<Long> goodsIds = goodsVOS.stream().mapToLong(GoodsVO::getGoodsId).boxed().collect(Collectors.toList());
ServiceResponse<List<GoodsSkuDTO>> skuResponse = goodsApiService.listSku(goodsIds, channelCode, getEnterpriseId());
if (!skuResponse.isSuccess()) {
return RestResponse.failure(skuResponse.getCode(), skuResponse.getMessage());
}
//3、获取sku信息 同时存储在map中
List<GoodsSkuDTO> skuDTOList = skuResponse.getResult();
if (CollectionUtils.isEmpty(skuDTOList)) {
return RestResponse.success(serviceResponse.getResult());
}
Map<Long, List<GoodsSkuDTO>> goodsIdAndskuDto = skuDTOList.stream().collect(Collectors.groupingBy(GoodsSkuDTO::getGoodsId));
//4、商品信息中包含是sku信息
for (GoodsVO goodsVO : goodsVOS) {
if (goodsIdAndskuDto.containsKey(goodsVO.getGoodsId())) {
List<GoodsVO.SkuVO> skuVOList = EntityUtil.changeEntityListByOrika(GoodsVO.SkuVO.class,goodsIdAndskuDto.get(goodsVO.getGoodsId()));
goodsVO.setSkuVOList(skuVOList);
}
}
return RestResponse.success(goodsVOS);
}
private ServiceResponse<ESResponseQueryBatchDTO> searchES( Integer currentPage,Integer pageSize, Long goodsDomainId,String search,String channelCode) {
DynamicSearchDTO searchDTO = new DynamicSearchDTO();
String columnCategoryCode = Constant.ES_CODES_MAP.get(channelCode);
String esName = esScreeningSearchService.getCurrentEsName(getEnterpriseId() + "", columnCategoryCode);
searchDTO.setIndexName(esName);
searchDTO.setColumnCategoryCode(columnCategoryCode);
searchDTO.setEnterpriseId(getEnterpriseId() + "");
searchDTO.setType("mapper_type");
searchDTO.setBegin(currentPage);
searchDTO.setRecordNumber(pageSize);
JSONObject goodsCodeJson = QueryConditionAssemblyUtil.createSimpleQueryNode("goodsCode", OperateEnum.OPERATE_LIKE, search);
JSONObject goodsNameJson = QueryConditionAssemblyUtil.createSimpleQueryNode("goodsName", OperateEnum.OPERATE_LIKE, search);
JSONObject goodsDomainIdJson = QueryConditionAssemblyUtil.createSimpleQueryNode("goodsDomainId", OperateEnum.OPERATE_EQ, goodsDomainId);
JSONObject nameAndCodeJson = QueryConditionAssemblyUtil.addQueryNodeForSiblin(goodsCodeJson, goodsNameJson, OperateEnum.OPERATE_OR);
JSONObject json = QueryConditionAssemblyUtil.addQueryNodeForSiblin(nameAndCodeJson, goodsDomainIdJson, OperateEnum.OPERATE_AND);
searchDTO.setSearchJson(json);
ServiceResponse<ESResponseQueryBatchDTO> serviceResponse = esBusinessOperaApiService.queryDataBatch(searchDTO, false, null);
return serviceResponse;
}
}
package com.gic.plug.web.controller.goods;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.goods.api.dto.GoodsCordDTO;
import com.gic.goods.api.service.CordApiService;
import com.gic.plug.web.vo.goods.GoodsCordVO;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @ClassName: GoodsTagController
* @Description: 商品标签相关接口
* @author xub
* @date 2019/8/29 上午10:03
*/
@RestController
public class GoodsCordController extends BaseGoodsController {
@Autowired
private CordApiService cordApiService;
/**
* @Description: 查询所有(一级分组)
* @author xub
*/
@GetMapping("list-parent-cord")
public RestResponse listParentCord(Long goodsDomainId) {
ServiceResponse<List<GoodsCordDTO>> serviceResponse = cordApiService.listParentAll(goodsDomainId, getEnterpriseId());
List<GoodsCordDTO> result = serviceResponse.getResult();
if (CollectionUtils.isEmpty(result)) {
return RestResponse.success();
}
List<GoodsCordVO> list = EntityUtil.changeEntityListByOrika(GoodsCordVO.class, result);
for (GoodsCordVO goodsCordVO : list) {
goodsCordVO.setLeafNodeFlag(false);
}
return RestResponse.success(list);
}
/**
* @Description: 查询所有(二级分组)
* @author xub
*/
@GetMapping("list-child-cord")
public RestResponse listChildAll(Long specParentId) {
ServiceResponse<List<GoodsCordDTO>> serviceResponse = cordApiService.listChildAll(specParentId, getEnterpriseId());
List<GoodsCordDTO> result = serviceResponse.getResult();
if (CollectionUtils.isEmpty(result)) {
return RestResponse.success();
}
List<GoodsCordVO> list = EntityUtil.changeEntityListByOrika(GoodsCordVO.class, result);
for (GoodsCordVO goodsCordVO : list) {
goodsCordVO.setLeafNodeFlag(true);
}
return RestResponse.success(list);
}
}
package com.gic.plug.web.controller.goods;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.goods.api.dto.GoodsDomainDTO;
import com.gic.goods.api.dto.GoodsRightsSelectorDTO;
import com.gic.goods.api.service.GoodsDomainApiService;
import com.gic.goods.api.service.GoodsRightsSelectorApiService;
import com.gic.goods.api.util.Constant;
import com.gic.plug.web.vo.goods.GoodsChannelVO;
import com.gic.plug.web.vo.goods.GoodsDomainVO;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.*;
@RestController
public class GoodsDomainController extends BaseGoodsController {
@Autowired
private GoodsDomainApiService goodsDomainApiService;
@Autowired
private GoodsRightsSelectorApiService goodsRightsSelectorApiService;
/**
* @Title: getAllGoodsDomianListWith
* @Description: 权限筛选器选择权限
* @author majia
* @return com.gic.commons.webapi.reponse.RestResponse
* @throws
*/
@RequestMapping("/get-all-goods-domain-list-for-rights")
public RestResponse getAllGoodsDomainListForRights() {
ServiceResponse<List<GoodsDomainDTO>> serviceResponse = goodsDomainApiService.listAll(getEnterpriseId(), null);
if (!serviceResponse.isSuccess()) {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
return listGoodsDomain(true, serviceResponse.getResult(), null);
}
/**
* @Title: getAllGoodsDomianListWith
* @Description: 查询企业下所有的域,拼接成channelVO返回
* @author majia
* @return com.gic.commons.webapi.reponse.RestResponse
* @throws
*/
@RequestMapping("/get-all-goods-domain-list")
public RestResponse getAllGoodsDomianList() {
Long resourceId = UserDetailUtils.getUserDetail().getUserResourceInfo() == null ? null :
UserDetailUtils.getUserDetail().getUserResourceInfo().getGoodsResourceId();
ServiceResponse<GoodsRightsSelectorDTO> selectorDTOServiceResponse = goodsRightsSelectorApiService.getGoodsRightsSelector(resourceId,
getEnterpriseId(), UserDetailUtils.getUserDetail().getUserInfo().getSuperAdmin());
if (!selectorDTOServiceResponse.isSuccess() || selectorDTOServiceResponse.getResult() == null ||
selectorDTOServiceResponse.getResult().getHasRights() == Constant.NO) {
return RestResponse.success(Collections.EMPTY_LIST);
}
ServiceResponse<List<GoodsDomainDTO>> serviceResponse = goodsDomainApiService.listAll(getEnterpriseId(), null);
// 是否最高权限
boolean isHighestRights = true;
JSONObject json = null;
if (UserDetailUtils.getUserDetail().getUserInfo().getSuperAdmin() != 1) {
isHighestRights = false;
if (selectorDTOServiceResponse.isSuccess()) {
GoodsRightsSelectorDTO goodsRightsSelectorDTO = selectorDTOServiceResponse.getResult();
if (goodsRightsSelectorDTO != null) {
if (goodsRightsSelectorDTO.getHasRights() == 0) {
json = JSONObject.parseObject(JSONObject.toJSONString(Collections.EMPTY_LIST));
} else {
json = JSONObject.parseObject(goodsRightsSelectorDTO.getGoodsRightsDomains());
if (json.isEmpty()) {
isHighestRights = true;
}
}
}
}
}
if (!serviceResponse.isSuccess()) {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
return listGoodsDomain(isHighestRights, serviceResponse.getResult(), json);
}
private RestResponse listGoodsDomain(boolean isHighestRights, List<GoodsDomainDTO> goodsDomainDTOList, JSONObject json) {
Map<String, List<GoodsDomainDTO>> map = new TreeMap<>();
if (CollectionUtils.isEmpty(goodsDomainDTOList)) {
return RestResponse.success(Collections.EMPTY_LIST);
}
for (GoodsDomainDTO goodsDomainDTO : goodsDomainDTOList) {
if (CollectionUtils.isNotEmpty(goodsDomainDTO.getChannels())){
for (String channelCode : goodsDomainDTO.getChannels()) {
if (isHighestRights) { // 最高权限所有都显示
map.putIfAbsent(channelCode, new ArrayList<>());
map.get(channelCode).add(goodsDomainDTO);
} else { //非最高权限按权限下有什么就刷什么来
if (json != null && json.containsKey(channelCode)) {
map.putIfAbsent(channelCode, new ArrayList<>());
JSONArray array = json.getJSONArray(channelCode);
if (CollectionUtils.isNotEmpty(array) && array.contains(goodsDomainDTO.getGoodsDomainId())) {
map.get(channelCode).add(goodsDomainDTO);
}
}
}
}
}
}
List<GoodsChannelVO> resultList = new ArrayList<>();
for (Map.Entry<String, List<GoodsDomainDTO>> entry : map.entrySet()) {
GoodsChannelVO goodsChannelVO = new GoodsChannelVO();
goodsChannelVO.setChannelCode(entry.getKey());
goodsChannelVO.setChannelName(Constant.CHANNEL_CODE_AND_NAME.get(entry.getKey()));
goodsChannelVO.setSceneCode(Constant.CHANNEL_CODE_AND_SCENE.get(entry.getKey()));
goodsChannelVO.setGoodsDomainList(new ArrayList<>());
for (GoodsDomainDTO goodsDomainDTO : entry.getValue()) {
GoodsDomainVO goodsDomainVO = new GoodsDomainVO();
goodsDomainVO.setDomainCode(goodsDomainDTO.getCode());
goodsDomainVO.setDomainId(goodsDomainDTO.getGoodsDomainId());
goodsDomainVO.setDomainName(goodsDomainDTO.getName());
goodsChannelVO.getGoodsDomainList().add(goodsDomainVO);
}
resultList.add(goodsChannelVO);
}
return RestResponse.success(resultList);
}
}
package com.gic.plug.web.controller.goods;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.contants.SortType;
import com.gic.commons.util.PageHelperUtils;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.goods.api.dto.FullPropertyDTO;
import com.gic.goods.api.dto.PropertyValueDTO;
import com.gic.goods.api.service.PropertyApiService;
import com.gic.goods.api.service.PropertyValueApiService;
import com.gic.goods.api.util.Constant;
import com.gic.plug.web.vo.goods.GoodsPropertyVO;
import com.gic.plug.web.vo.goods.GoodsPropertyValueVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.List;
@RestController
public class GoodsPropertyController extends BaseGoodsController {
@Autowired
private PropertyApiService propertyApiService;
@Autowired
private PropertyValueApiService propertyValueApiService;
@RequestMapping("/property-list")
public RestResponse propertyList(int pageSize, int currentPage, String search, Long goodsDomainId) {
List<String> arrayList = new ArrayList<>();
arrayList.add(Constant.PROPERTY_TYPE_TEXT);
arrayList.add(Constant.PROPERTY_TYPE_TIME);
arrayList.add(Constant.PROPERTY_TYPE_CURRENCY);
arrayList.add(Constant.PROPERTY_TYPE_PERCENT);
arrayList.add(Constant.PROPERTY_TYPE_NUM);
arrayList.add(Constant.PROPERTY_TYPE_REAL_NUM);
ServiceResponse<Page<FullPropertyDTO>> serviceResponse = propertyApiService.findPropertyExceptType(currentPage, pageSize, goodsDomainId, arrayList,search, getEnterpriseId());
if (!serviceResponse.isSuccess()) {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
Page<GoodsPropertyVO> page = PageHelperUtils.changePageToCurrentPage(serviceResponse.getResult(), GoodsPropertyVO.class);
return RestResponse.success(page);
}
@RequestMapping("/property-value-list")
public RestResponse propertyValueList(int pageSize, int currentPage, String search, Long specPropertyId) {
ServiceResponse<Page<PropertyValueDTO>> serviceResponse = propertyValueApiService
.pagePropertyValue(currentPage, pageSize, specPropertyId, search, SortType.sortDescType, getEnterpriseId());
if (!serviceResponse.isSuccess()) {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
Page<GoodsPropertyValueVO> page = PageHelperUtils.changePageToCurrentPage(serviceResponse.getResult(), GoodsPropertyValueVO.class);
return RestResponse.success(page);
}
}
package com.gic.plug.web.controller.goods;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.goods.api.dto.GoodsRightsSelectorDTO;
import com.gic.goods.api.service.GoodsRightsSelectorApiService;
import com.gic.goods.api.util.Constant;
import com.gic.plug.web.qo.goods.GoodsRightsSelectorSaveQO;
import com.gic.plug.web.qo.goods.GoodsRightsSelectorUpdateQO;
import com.gic.plug.web.vo.goods.GoodsRightsSelectorVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class GoodsRightsSelectorController extends BaseGoodsController {
@Autowired
private GoodsRightsSelectorApiService goodsRightsSelectorApiService;
/**
* @Title: BaseGoodsController
* @Description: 保存商品选择器权限版
* @author majia
* @param goodsRightsSelectorSaveQO
* @return com.gic.commons.webapi.reponse.RestResponse
* @throws
*/
@RequestMapping("/goods-rights-selector-save")
public RestResponse goodsRightsSelectorSave(GoodsRightsSelectorSaveQO goodsRightsSelectorSaveQO) {
GoodsRightsSelectorDTO goodsRightsSelectorDTO = EntityUtil.changeEntityByOrika(GoodsRightsSelectorDTO.class, goodsRightsSelectorSaveQO);
if (goodsRightsSelectorDTO.getHasRights() == null) {
goodsRightsSelectorDTO.setHasRights(Constant.NO);
}
goodsRightsSelectorDTO.setEnterpriseId(getEnterpriseId());
ServiceResponse<GoodsRightsSelectorDTO> serviceResponse = goodsRightsSelectorApiService.saveGoodsRightsSelector(goodsRightsSelectorDTO);
if (serviceResponse.isSuccess()) {
goodsRightsSelectorDTO = serviceResponse.getResult();
return RestResponse.success(EntityUtil.changeEntityByOrika(GoodsRightsSelectorVO.class, goodsRightsSelectorDTO));
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
/**
* @Title: goodsRightsSelectorSave
* @Description: 商品选择器选择后的预览
* @author majia
* @param goodsRightsSelectorSaveQO
* @return com.gic.commons.webapi.reponse.RestResponse
* @throws
*/
@RequestMapping("/goods-rights-selector-show")
public RestResponse goodsRightsSelectorShow(GoodsRightsSelectorSaveQO goodsRightsSelectorSaveQO) {
GoodsRightsSelectorDTO goodsRightsSelectorDTO = EntityUtil.changeEntityByOrika(GoodsRightsSelectorDTO.class, goodsRightsSelectorSaveQO);
if (goodsRightsSelectorDTO.getHasRights() == null) {
goodsRightsSelectorDTO.setHasRights(Constant.NO);
}
goodsRightsSelectorDTO.setEnterpriseId(getEnterpriseId());
ServiceResponse<GoodsRightsSelectorDTO> serviceResponse = goodsRightsSelectorApiService.showGoodsRightsSelectorResult(goodsRightsSelectorDTO);
if (serviceResponse.isSuccess()) {
goodsRightsSelectorDTO = serviceResponse.getResult();
return RestResponse.success(EntityUtil.changeEntityByOrika(GoodsRightsSelectorVO.class, goodsRightsSelectorDTO));
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping("/goods-rights-selector-update")
public RestResponse goodsRightsSelectorSave(GoodsRightsSelectorUpdateQO goodsRightsSelectorUpdateQO) {
GoodsRightsSelectorDTO goodsRightsSelectorDTO = EntityUtil.changeEntityByOrika(GoodsRightsSelectorDTO.class, goodsRightsSelectorUpdateQO);
goodsRightsSelectorDTO.setEnterpriseId(getEnterpriseId());
ServiceResponse<GoodsRightsSelectorDTO> serviceResponse = goodsRightsSelectorApiService.updateGoodsRightsSelector(goodsRightsSelectorDTO);
if (serviceResponse.isSuccess()) {
goodsRightsSelectorDTO = serviceResponse.getResult();
return RestResponse.success(EntityUtil.changeEntityByOrika(GoodsRightsSelectorVO.class, goodsRightsSelectorDTO));
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping("/get-goods-rights-selector")
public RestResponse getGoodsRightsSelector(Long goodsRightsSelectorId) {
ServiceResponse<GoodsRightsSelectorDTO> serviceResponse = goodsRightsSelectorApiService.getGoodsRightsSelector(goodsRightsSelectorId,
getEnterpriseId(), UserDetailUtils.getUserDetail().getUserInfo().getSuperAdmin());
if (serviceResponse.isSuccess()) {
GoodsRightsSelectorDTO goodsRightsSelectorDTO = serviceResponse.getResult();
return RestResponse.success(EntityUtil.changeEntityByOrika(GoodsRightsSelectorVO.class, goodsRightsSelectorDTO));
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
}
package com.gic.plug.web.controller.goods;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.goods.api.dto.GoodsRightsSelectorDTO;
import com.gic.goods.api.dto.GoodsSelectorDTO;
import com.gic.goods.api.service.GoodsRightsSelectorApiService;
import com.gic.goods.api.service.GoodsSelectorApiService;
import com.gic.mall.base.api.enums.ErrorCodeEnums;
import com.gic.plug.web.qo.goods.GoodsSelectorSaveQO;
import com.gic.plug.web.qo.goods.GoodsSelectorUpdateQO;
import com.gic.plug.web.vo.goods.GoodsSelectorVO;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class GoodsSelectorController extends BaseGoodsController {
@Autowired
private GoodsSelectorApiService goodsSelectorApiService;
@Autowired
private GoodsRightsSelectorApiService goodsRightsSelectorApiService;
private Logger log = LogManager.getLogger(GoodsSelectorController.class);
@RequestMapping("goods-selector-show-back")
public RestResponse goodsSelectorShowBack(Long goodsSelectorId) {
ServiceResponse<GoodsSelectorDTO> serviceResponse = goodsSelectorApiService.getGoodsSelector(goodsSelectorId, getEnterpriseId());
if (serviceResponse.isSuccess()) {
return RestResponse.success(serviceResponse.getResult().getGoodsSearchValue());
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping("get-goods-selector")
public RestResponse getGoodsSelector(Long goodsSelectorId) {
ServiceResponse<GoodsSelectorDTO> serviceResponse = goodsSelectorApiService.getGoodsSelector(goodsSelectorId, getEnterpriseId());
if (serviceResponse.isSuccess()) {
GoodsSelectorVO goodsSelectorVO = EntityUtil.changeEntityByOrika(GoodsSelectorVO.class, serviceResponse.getResult());
return RestResponse.success(goodsSelectorVO);
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping("goods-selector-edit-show-back")
public RestResponse goodsSelectorEditShowBack(Long goodsSelectorId) {
ServiceResponse<GoodsSelectorDTO> serviceResponse = goodsSelectorApiService.getGoodsSelector(goodsSelectorId, getEnterpriseId());
if (serviceResponse.isSuccess()) {
return RestResponse.success(serviceResponse.getResult().getGoodsSearchEdit());
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping("goods-selector-save")
public RestResponse goodsSelectorSave(GoodsSelectorSaveQO goodsSelectorSaveQO) {
GoodsSelectorDTO goodsSelectorDTO = EntityUtil.changeEntityByOrika(GoodsSelectorDTO.class, goodsSelectorSaveQO);
goodsSelectorDTO.setEnterpriseId(getEnterpriseId());
Long resourceId = UserDetailUtils.getUserDetail().getUserResourceInfo() == null ? null :
UserDetailUtils.getUserDetail().getUserResourceInfo().getGoodsResourceId();
ServiceResponse<GoodsRightsSelectorDTO> goodsRightsSelectorDTOServiceResponse = goodsRightsSelectorApiService.getGoodsRightsSelector(resourceId,
getEnterpriseId(), UserDetailUtils.getUserDetail().getUserInfo().getSuperAdmin());
if (!goodsRightsSelectorDTOServiceResponse.isSuccess()) {
return RestResponse.failure(goodsRightsSelectorDTOServiceResponse.getCode(), goodsRightsSelectorDTOServiceResponse.getMessage());
}
GoodsRightsSelectorDTO goodsRightsSelectorDTO = goodsRightsSelectorDTOServiceResponse.getResult();
goodsSelectorDTO.setHasRights(goodsRightsSelectorDTO.getHasRights());
goodsSelectorDTO.setGoodsSearchRightValue(goodsRightsSelectorDTO.getGoodsRightsSearchValue());
goodsSelectorDTO.setGoodsSearchRightText(goodsRightsSelectorDTO.getGoodsRightsSearchText());
ServiceResponse<GoodsSelectorDTO> serviceResponse = goodsSelectorApiService.saveGoodsSelector(goodsSelectorDTO);
if (serviceResponse.isSuccess()) {
goodsSelectorDTO = serviceResponse.getResult();
GoodsSelectorVO goodsSelectorVO = EntityUtil.changeEntityByOrika(GoodsSelectorVO.class, goodsSelectorDTO);
return RestResponse.success(goodsSelectorVO);
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping("goods-selector-show")
public RestResponse goodsSelectorShow(GoodsSelectorSaveQO goodsSelectorSaveQO) {
GoodsSelectorDTO goodsSelectorDTO = EntityUtil.changeEntityByOrika(GoodsSelectorDTO.class, goodsSelectorSaveQO);
goodsSelectorDTO.setEnterpriseId(getEnterpriseId());
Long resourceId = UserDetailUtils.getUserDetail().getUserResourceInfo() == null ? null :
UserDetailUtils.getUserDetail().getUserResourceInfo().getGoodsResourceId();
ServiceResponse<GoodsRightsSelectorDTO> goodsRightsSelectorDTOServiceResponse = goodsRightsSelectorApiService.getGoodsRightsSelector(resourceId,
getEnterpriseId(), UserDetailUtils.getUserDetail().getUserInfo().getSuperAdmin());
if (!goodsRightsSelectorDTOServiceResponse.isSuccess()) {
return RestResponse.failure(goodsRightsSelectorDTOServiceResponse.getCode(), goodsRightsSelectorDTOServiceResponse.getMessage());
}
GoodsRightsSelectorDTO goodsRightsSelectorDTO = goodsRightsSelectorDTOServiceResponse.getResult();
goodsSelectorDTO.setHasRights(goodsRightsSelectorDTO.getHasRights());
goodsSelectorDTO.setGoodsSearchRightValue(goodsRightsSelectorDTO.getGoodsRightsSearchValue());
goodsSelectorDTO.setGoodsSearchRightText(goodsRightsSelectorDTO.getGoodsRightsSearchText());
ServiceResponse<GoodsSelectorDTO> serviceResponse = goodsSelectorApiService.showGoodsSelector(goodsSelectorDTO);
if (serviceResponse.isSuccess()) {
goodsSelectorDTO = serviceResponse.getResult();
GoodsSelectorVO goodsSelectorVO = EntityUtil.changeEntityByOrika(GoodsSelectorVO.class, goodsSelectorDTO);
return RestResponse.success(goodsSelectorVO);
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping("change-goods-rights-for-selector")
public RestResponse changeGoodsRightsForSelector(Long goodsSelectorId) {
if (goodsSelectorId == null) {
Long resourceId = UserDetailUtils.getUserDetail().getUserResourceInfo() == null ? null:UserDetailUtils.getUserDetail().getUserResourceInfo().getGoodsResourceId();
ServiceResponse<GoodsRightsSelectorDTO> serviceResponse = goodsRightsSelectorApiService.getGoodsRightsSelector(resourceId,
getEnterpriseId(), UserDetailUtils.getUserDetail().getUserInfo().getSuperAdmin());
if (serviceResponse.getResult() == null) {
return RestResponse.failure(ErrorCodeEnums.MAll_ERR.getCode(), "没有权限");
}
GoodsRightsSelectorDTO goodsRightsSelectorDTO = new GoodsRightsSelectorDTO();
goodsRightsSelectorDTO.setHasRights(serviceResponse.getResult().getHasRights());
goodsRightsSelectorDTO.setGoodsRightsSearchText(serviceResponse.getResult().getGoodsRightsSearchText());
goodsRightsSelectorDTO.setGoodsRightsSearchValue(serviceResponse.getResult().getGoodsRightsSearchValue());
return RestResponse.success(goodsRightsSelectorDTO);
}
Long resourceId = UserDetailUtils.getUserDetail().getUserResourceInfo() == null ? null :
UserDetailUtils.getUserDetail().getUserResourceInfo().getGoodsResourceId();
ServiceResponse<GoodsRightsSelectorDTO> goodsRightsSelectorDTOServiceResponse = goodsRightsSelectorApiService.getGoodsRightsSelector(resourceId,
getEnterpriseId(), UserDetailUtils.getUserDetail().getUserInfo().getSuperAdmin());
if (!goodsRightsSelectorDTOServiceResponse.isSuccess()) {
return RestResponse.failure(goodsRightsSelectorDTOServiceResponse.getCode(), goodsRightsSelectorDTOServiceResponse.getMessage());
}
if (goodsSelectorId == null) {
GoodsRightsSelectorDTO goodsRightsSelectorDTO = new GoodsRightsSelectorDTO();
goodsRightsSelectorDTO.setGoodsRightsSearchText(goodsRightsSelectorDTOServiceResponse.getResult().getGoodsRightsSearchText());
goodsRightsSelectorDTO.setGoodsRightsSearchValue(goodsRightsSelectorDTOServiceResponse.getResult().getGoodsRightsSearchValue());
goodsRightsSelectorDTO.setHasRights(goodsRightsSelectorDTOServiceResponse.getResult().getHasRights());
return RestResponse.success(goodsRightsSelectorDTO);
}
GoodsRightsSelectorDTO goodsRightsSelectorDTO = goodsRightsSelectorDTOServiceResponse.getResult();
ServiceResponse<GoodsSelectorDTO> serviceResponse = goodsSelectorApiService.updateGoodsSelectorRights(goodsSelectorId,
goodsRightsSelectorDTO.getGoodsRightsSearchText(), goodsRightsSelectorDTO.getGoodsRightsSearchValue(), goodsRightsSelectorDTO.getHasRights(), getEnterpriseId());
if (!serviceResponse.isSuccess()) {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
return RestResponse.success(serviceResponse.getResult());
}
@RequestMapping("goods-selector-update")
public RestResponse goodsSelectorUpdate(GoodsSelectorUpdateQO goodsSelectorUpdateQO) {
GoodsSelectorDTO goodsSelectorDTO = EntityUtil.changeEntityByOrika(GoodsSelectorDTO.class, goodsSelectorUpdateQO);
goodsSelectorDTO.setEnterpriseId(getEnterpriseId());
ServiceResponse<GoodsSelectorDTO> serviceResponse = goodsSelectorApiService.updateGoodsSelector(goodsSelectorDTO);
if (serviceResponse.isSuccess()) {
goodsSelectorDTO = serviceResponse.getResult();
GoodsSelectorVO goodsSelectorVO = EntityUtil.changeEntityByOrika(GoodsSelectorVO.class, goodsSelectorDTO);
return RestResponse.success(goodsSelectorVO);
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping("check-selector-goods-hit")
public RestResponse checkSelectorGoodsHit(Long goodsSelectorId, String goodsCode, String skuCode) {
ServiceResponse<Boolean> serviceResponse =
goodsSelectorApiService.isSelectorHitGoods(goodsSelectorId, skuCode, goodsCode, 1129);
return RestResponse.success(serviceResponse.getResult());
}
}
package com.gic.plug.web.controller.goods;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.contants.SortType;
import com.gic.commons.util.PageHelperUtils;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.goods.api.dto.StandardDTO;
import com.gic.goods.api.dto.StandardValueDTO;
import com.gic.goods.api.dto.StandardValueGroupDTO;
import com.gic.goods.api.service.StandardApiService;
import com.gic.goods.api.service.StandardValueApiService;
import com.gic.goods.api.service.StandardValueGroupApiService;
import com.gic.plug.web.vo.goods.GoodsStandardVO;
import com.gic.plug.web.vo.goods.GoodsStandardValueGroupVO;
import com.gic.plug.web.vo.goods.GoodsStandardValueVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class GoodsStandardController extends BaseGoodsController {
@Autowired
private StandardApiService standardApiService;
@Autowired
private StandardValueApiService standardValueApiService;
@Autowired
private StandardValueGroupApiService standardValueGroupApiService;
@RequestMapping("/list-standard")
public RestResponse listStandard(int currentPage, int pageSize, String search, Long goodsDomainId) {
ServiceResponse<Page<StandardDTO>> serviceResponse = standardApiService.listByPage(currentPage, pageSize, goodsDomainId, search, getEnterpriseId());
if (!serviceResponse.isSuccess()) {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
Page<GoodsStandardVO> page = PageHelperUtils.changePageToCurrentPage(serviceResponse.getResult(), GoodsStandardVO.class);
return RestResponse.success(page);
}
@RequestMapping("/list-standard-value-group")
public RestResponse listStandardValueGroup(int currentPage, int pageSize, Long specStandardId, String search) {
ServiceResponse<Page<StandardValueGroupDTO>> serviceResponse =
standardValueGroupApiService.listByPage(currentPage, pageSize, specStandardId, search, SortType.sortDescType, getEnterpriseId());
if (!serviceResponse.isSuccess()) {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
Page<GoodsStandardValueGroupVO> page = PageHelperUtils.changePageToCurrentPage(serviceResponse.getResult(), GoodsStandardValueGroupVO.class);
return RestResponse.success(page);
}
@RequestMapping("/list-standard-value")
public RestResponse listStandardValue(int currentPage, int pageSize, Long specStandardId, String search, Long specStandardValueGroupId) {
ServiceResponse<Page<StandardValueDTO>> serviceResponse =
standardValueApiService.listByPage(currentPage, pageSize, specStandardId, search, SortType.sortDescType, specStandardValueGroupId, getEnterpriseId());
if (!serviceResponse.isSuccess()) {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
Page<GoodsStandardValueVO> page = PageHelperUtils.changePageToCurrentPage(serviceResponse.getResult(), GoodsStandardValueVO.class);
return RestResponse.success(page);
}
}
package com.gic.plug.web.controller.goods;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.PageHelperUtils;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.goods.api.dto.ErrorCode;
import com.gic.goods.api.dto.GoodsTagDTO;
import com.gic.goods.api.service.TagApiService;
import com.gic.plug.web.vo.goods.GoodsTagVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
* @ClassName: GoodsTagController
* @Description: 商品标签相关接口
* @author xub
* @date 2019/8/29 上午10:03
*/
@RestController
public class GoodsTagController extends BaseGoodsController {
@Autowired
private TagApiService tagApiService;
/**
* @Description: 查询所有(不分页)
* @author xub
*/
@GetMapping("list-tag")
public RestResponse findList(@RequestParam(value = "currentPage", defaultValue = "1") Integer currentPage,
@RequestParam(value = "pageSize", defaultValue = "20") Integer pageSize, Long goodsDomainId) {
if (goodsDomainId == null) {
return RestResponse.failure(ErrorCode.UNKNOW_ERROR.getCode(), "参数不全");
}
ServiceResponse<Page<GoodsTagDTO>> serviceResponse = tagApiService.listByPage(currentPage, pageSize,
goodsDomainId, getEnterpriseId());
Page<GoodsTagVO> voPage = PageHelperUtils.changePageToCurrentPage(serviceResponse.getResult(),
GoodsTagVO.class);
return RestResponse.success(voPage);
}
}
package com.gic.store.web.exception;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.store.constant.StoreGroupErrorEnum;
import com.gic.store.exception.StoreGroupException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.validation.BindException;
import org.springframework.validation.FieldError;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletResponse;
import java.io.ByteArrayOutputStream;
import java.io.PrintWriter;
import java.util.List;
/**
* 全局异常处理类
*
* @author hua
*/
@ControllerAdvice
public class GlobalExceptionHandler {
private static Logger logger = LoggerFactory.getLogger(GlobalExceptionHandler.class);
@ResponseBody
@ExceptionHandler(Exception.class)
public RestResponse controllerException(HttpServletResponse response, Exception ex) {
logger.error("err", ex);
RestResponse failureResponse = getRestResponse(StoreGroupErrorEnum.Error.getCode(), StoreGroupErrorEnum.Error.getMessage());
StringBuilder sb = new StringBuilder();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
try (PrintWriter printWriter = new PrintWriter(baos)) {
ex.printStackTrace(printWriter);
}
try {
sb.append(baos.toString());
} catch (Exception ignored) {
}
if (sb.length() == 0) {
sb.append(ex.getMessage());
}
// 输出详细错误信息,便于调试
failureResponse.setDetailError(sb.toString());
return failureResponse;
}
/**
* 参数校验异常统一处理
* @param e
* @return
*/
@ResponseBody
@ExceptionHandler(BindException.class)
public RestResponse customException(BindException e) {
List<FieldError> fieldErrors = e.getFieldErrors();
StringBuilder errorMessage = new StringBuilder();
fieldErrors.forEach(fieldError -> {
errorMessage.append(fieldError.getField())
.append(":")
.append(fieldError.getDefaultMessage())
.append(",");
});
return getRestResponse(StoreGroupErrorEnum.Error.getCode(), errorMessage.toString());
}
/**
* 自定义异常统一处理
* @param e
* @return
*/
@ResponseBody
@ExceptionHandler(StoreGroupException.class)
public RestResponse customException(StoreGroupException e) {
return getRestResponse(e.getErrorCode(), e.getMessage());
}
private RestResponse getRestResponse(String errorCode, String message) {
return RestResponse.failure(errorCode, message);
}
}
package com.gic.plug.web.qo;
import java.io.Serializable;
public class StoreWidgetCountQO implements Serializable {
private String authSearchJson;
private String searchJson;
public String getAuthSearchJson() {
return authSearchJson;
}
public void setAuthSearchJson(String authSearchJson) {
this.authSearchJson = authSearchJson;
}
public String getSearchJson() {
return searchJson;
}
public void setSearchJson(String searchJson) {
this.searchJson = searchJson;
}
}
package com.gic.plug.web.qo;
import java.io.Serializable;
public class StoreWidgetQO implements Serializable {
private Integer storeWidgetId;
private String authSearchParam;
private String searchParam;
private String writeBackParam;
private Integer authMode;
public Integer getStoreWidgetId() {
return storeWidgetId;
}
public void setStoreWidgetId(Integer storeWidgetId) {
this.storeWidgetId = storeWidgetId;
}
public String getAuthSearchParam() {
return authSearchParam;
}
public void setAuthSearchParam(String authSearchParam) {
this.authSearchParam = authSearchParam;
}
public String getSearchParam() {
return searchParam;
}
public void setSearchParam(String searchParam) {
this.searchParam = searchParam;
}
public String getWriteBackParam() {
return writeBackParam;
}
public void setWriteBackParam(String writeBackParam) {
this.writeBackParam = writeBackParam;
}
public Integer getAuthMode() {
return authMode;
}
public void setAuthMode(Integer authMode) {
this.authMode = authMode;
}
}
package com.gic.plug.web.qo.goods;
public class GoodsQO {
}
package com.gic.plug.web.qo.goods;
public class GoodsRightsSelectorSaveQO {
/**
* 搜索时使用的值
*/
private String goodsRightsSearchValue;
/**
* 编辑回显的值
*/
private String goodsRightSearchEdit;
/**
* 是否有商品权限 0没有 1有
*/
private Integer hasRights;
public String getGoodsRightsSearchValue() {
return goodsRightsSearchValue;
}
public void setGoodsRightsSearchValue(String goodsRightsSearchValue) {
this.goodsRightsSearchValue = goodsRightsSearchValue;
}
public String getGoodsRightSearchEdit() {
return goodsRightSearchEdit;
}
public void setGoodsRightSearchEdit(String goodsRightSearchEdit) {
this.goodsRightSearchEdit = goodsRightSearchEdit;
}
public Integer getHasRights() {
return hasRights;
}
public void setHasRights(Integer hasRights) {
this.hasRights = hasRights;
}
}
package com.gic.plug.web.qo.goods;
public class GoodsRightsSelectorUpdateQO {
/**
*
*/
private Long goodsRightsSelectorId;
/**
* 搜索时使用的值
*/
private String goodsRightsSearchValue;
/**
* 是否有商品权限 0没有 1有
*/
private Integer hasRights;
/**
* 编辑回显的值
*/
private String goodsRightSearchEdit;
public Long getGoodsRightsSelectorId() {
return goodsRightsSelectorId;
}
public void setGoodsRightsSelectorId(Long goodsRightsSelectorId) {
this.goodsRightsSelectorId = goodsRightsSelectorId;
}
public String getGoodsRightsSearchValue() {
return goodsRightsSearchValue;
}
public void setGoodsRightsSearchValue(String goodsRightsSearchValue) {
this.goodsRightsSearchValue = goodsRightsSearchValue;
}
public String getGoodsRightSearchEdit() {
return goodsRightSearchEdit;
}
public void setGoodsRightSearchEdit(String goodsRightSearchEdit) {
this.goodsRightSearchEdit = goodsRightSearchEdit;
}
public Integer getHasRights() {
return hasRights;
}
public void setHasRights(Integer hasRights) {
this.hasRights = hasRights;
}
}
package com.gic.plug.web.qo.goods;
public class GoodsSelectorSaveQO {
private String goodsSearchValue;
private String goodsSearchEdit;
/**
* 使用业务
*/
private String useType;
public String getGoodsSearchValue() {
return goodsSearchValue;
}
public void setGoodsSearchValue(String goodsSearchValue) {
this.goodsSearchValue = goodsSearchValue;
}
public String getGoodsSearchEdit() {
return goodsSearchEdit;
}
public void setGoodsSearchEdit(String goodsSearchEdit) {
this.goodsSearchEdit = goodsSearchEdit;
}
public String getUseType() {
return useType;
}
public void setUseType(String useType) {
this.useType = useType;
}
}
package com.gic.plug.web.qo.goods;
public class GoodsSelectorUpdateQO {
private Long goodsSelectorId;
private String goodsSearchValue;
private String goodsSearchEdit;
public Long getGoodsSelectorId() {
return goodsSelectorId;
}
public void setGoodsSelectorId(Long goodsSelectorId) {
this.goodsSelectorId = goodsSelectorId;
}
public String getGoodsSearchValue() {
return goodsSearchValue;
}
public void setGoodsSearchValue(String goodsSearchValue) {
this.goodsSearchValue = goodsSearchValue;
}
public String getGoodsSearchEdit() {
return goodsSearchEdit;
}
public void setGoodsSearchEdit(String goodsSearchEdit) {
this.goodsSearchEdit = goodsSearchEdit;
}
}
package com.gic.plug.web.strategy;
public interface ScreenBackStrategy {
String screenBack(String compute, String value, String key, Integer enterpriseId) throws ClassNotFoundException;
}
package com.gic.plug.web.strategy.impl;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.plug.web.strategy.ScreenBackStrategy;
import com.gic.plug.web.utils.ComputeBackUtil;
import com.gic.store.constant.StoreESFieldsEnum;
import com.gic.store.dto.CityDTO;
import com.gic.store.dto.ProvinceDTO;
import com.gic.store.service.ProvincesApiService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public class StoreAreaBackImpl implements ScreenBackStrategy {
@Autowired
private ProvincesApiService provincesApiService;
@Override
public String screenBack(String compute, String value, String key, Integer enterpriseId) {
if(StringUtils.isNotBlank(value)){
ServiceResponse<List<CityDTO>> cityResponse = this.provincesApiService.selectAllCity();
StringBuilder stringBuilder = new StringBuilder(StoreESFieldsEnum.AREAIDS.getDesc()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
if(cityResponse.isSuccess()){
List<CityDTO> cityDTOList = cityResponse.getResult();
if(CollectionUtils.isNotEmpty(cityDTOList)){
String[] valueArr = value.split(" ");
for(CityDTO cityDTO : cityDTOList){
for(String s : valueArr){
if(s.equals(cityDTO.getCityId())){
String provinceName = "";
ServiceResponse<ProvinceDTO> provinceById = this.provincesApiService.getProvinceById(cityDTO.getProvinceId());
if(provinceById.isSuccess()){
provinceName = provinceById.getResult().getProvinceName();
}
stringBuilder.append("【").append(cityDTO.getCityName()).append("-").append(provinceName).append("】");
}
}
}
}
}
return stringBuilder.toString();
}
return null;
}
}
package com.gic.plug.web.strategy.impl;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.plug.web.strategy.ScreenBackStrategy;
import com.gic.plug.web.utils.ComputeBackUtil;
import com.gic.store.constant.StoreESFieldsEnum;
import com.gic.store.dto.StoreDTO;
import com.gic.store.dto.StoreSearchDTO;
import com.gic.store.service.StoreApiService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public class StoreBackImpl implements ScreenBackStrategy {
@Autowired
private StoreApiService storeApiService;
@Override
public String screenBack(String compute, String value, String key, Integer enterpriseId) {
if(StringUtils.isNotBlank(value)){
StringBuilder stringBuilder = new StringBuilder(StoreESFieldsEnum.STORENAME.getDesc()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
StoreSearchDTO storeSearchDTO = new StoreSearchDTO();
storeSearchDTO.setEnterpriseId(enterpriseId);
storeSearchDTO.setStoreIds(value);
ServiceResponse<Page<StoreDTO>> response = this.storeApiService.listStore(storeSearchDTO, 1, 50, StoreESFieldsEnum.STORENAME.getField());
if(response.isSuccess()){
List<StoreDTO> list = ((Page)response.getResult()).getResult();
if(CollectionUtils.isNotEmpty(list)){
for (StoreDTO storeDTO : list) {
JSONObject jsonObject = (JSONObject) JSONObject.toJSON(storeDTO);
stringBuilder.append("【").append(jsonObject.getString(StoreESFieldsEnum.STORENAME.getField())).append("】").append(" ");
}
}
}
return stringBuilder.toString();
}
return null;
}
}
package com.gic.plug.web.strategy.impl;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.plug.web.strategy.ScreenBackStrategy;
import com.gic.plug.web.utils.ComputeBackUtil;
import com.gic.store.constant.StoreESFieldsEnum;
import com.gic.store.dto.StoreBrandDTO;
import com.gic.store.service.StoreBrandApiService;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
@Component
public class StoreBrandBackImpl implements ScreenBackStrategy {
@Autowired
private StoreBrandApiService storeBrandApiService;
@Override
public String screenBack(String compute, String value, String key, Integer enterpriseId) {
if(StringUtils.isNotBlank(value)){
StringBuilder stringBuilder = new StringBuilder(StoreESFieldsEnum.STOREBRANDIDLIST.getDesc()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
List<Integer> storeBrandIdList = new ArrayList<>();
String[] valueArr = value.split(" ");
for(String s : valueArr){
storeBrandIdList.add(Integer.valueOf(s));
}
ServiceResponse<List<StoreBrandDTO>> listServiceResponse = this.storeBrandApiService.listStoreBrandByIds(storeBrandIdList);
if(listServiceResponse.isSuccess()){
List<StoreBrandDTO> list = listServiceResponse.getResult();
for(StoreBrandDTO storeBrandDTO : list){
stringBuilder.append("【").append(storeBrandDTO.getStoreBrandName()).append("】").append(" ");
}
}
return stringBuilder.toString();
}
return null;
}
}
package com.gic.plug.web.strategy.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.plug.web.strategy.ScreenBackStrategy;
import com.gic.plug.web.utils.ComputeBackUtil;
import com.gic.redis.data.util.RedisUtil;
import com.gic.store.constant.StoreFieldDateEnum;
import com.gic.store.constant.StoreFieldTypeEnum;
import com.gic.store.dto.StoreFieldDTO;
import com.gic.store.dto.StoreFieldSelectDTO;
import com.gic.store.service.StoreFieldApiService;
import com.gic.store.service.StoreFieldSelectApiService;
import com.gic.store.utils.StoreRedisKeyUtils;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Component
public class StoreCustomBackImpl implements ScreenBackStrategy {
@Autowired
private StoreFieldApiService storeFieldApiService;
@Autowired
private StoreFieldSelectApiService storeFieldSelectApiService;
private Map<Integer, String> methodMap = new HashMap<>();
@PostConstruct
public void init() {
methodMap.put(StoreFieldDateEnum.YMDHMS.getCode(), "yyyyMMddHHmmssBack");
methodMap.put(StoreFieldDateEnum.YMD.getCode(), "yyyyMMddBack");
methodMap.put(StoreFieldDateEnum.YM.getCode(), "yyyyMM");
methodMap.put(StoreFieldDateEnum.MD.getCode(), "mmddBack");
methodMap.put(StoreFieldDateEnum.Hms.getCode(), "hhmmssBack");
}
@Override
public String screenBack(String compute, String value, String key, Integer enterpriseId) {
if (StringUtils.isNotBlank(value)) {
Object cache = RedisUtil.getCache(StoreRedisKeyUtils.getStoreFieldKeyC(enterpriseId, key));
if (cache != null) {
ServiceResponse<StoreFieldDTO> storeField = this.storeFieldApiService.getStoreField(Integer.valueOf(cache.toString()));
if (storeField.isSuccess()) {
if (storeField.getResult() != null) {
if (storeField.getResult().getStoreFieldType() == StoreFieldTypeEnum.DATE.getCode()) {
return this.dateBack(compute, value, storeField.getResult());
} else if(storeField.getResult().getStoreFieldType() == StoreFieldTypeEnum.REAL_NUMBER.getCode()){
return this.numberBack(compute, value, storeField.getResult());
} else{
return this.selectBack(compute, value, enterpriseId, storeField.getResult());
}
}
}
}
}
return null;
}
private String dateBack(String compute, String value, StoreFieldDTO storeFieldDTO) {
StringBuilder stringBuilder = new StringBuilder(storeFieldDTO.getStoreFieldName()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
JSONObject jsonObject = JSON.parseObject(storeFieldDTO.getStoreFieldDetail());
int dateType = jsonObject.getIntValue("dateType");
String methodName = this.methodMap.get(dateType);
if (StringUtils.isNotBlank(methodName)) {
try {
try {
Method method = this.getClass().getMethod(methodName, Class.forName(value.getClass().getCanonicalName()));
try {
String message = (String) method.invoke(this, value);
return stringBuilder.append(message).toString();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
}
return null;
}
private String selectBack(String compute, String value, Integer enterpriseId, StoreFieldDTO storeFieldDTO) {
StringBuilder stringBuilder = new StringBuilder(storeFieldDTO.getStoreFieldName()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
List<Integer> list = new ArrayList<>();
String[] valueArr = value.split(" ");
for (String s : valueArr) {
list.add(Integer.valueOf(s));
}
ServiceResponse<List<StoreFieldSelectDTO>> listServiceResponse = this.storeFieldSelectApiService.listStoreFieldSelectByIds(enterpriseId, list);
if (listServiceResponse.isSuccess()) {
List<StoreFieldSelectDTO> selectDTOS = listServiceResponse.getResult();
if (CollectionUtils.isNotEmpty(selectDTOS)) {
for (StoreFieldSelectDTO dto : selectDTOS) {
stringBuilder.append("【").append(dto.getStoreFieldSelectName()).append("】").append(" ");
}
}
}
return stringBuilder.toString();
}
private String numberBack(String compute, String value, StoreFieldDTO storeFieldDTO){
StringBuilder stringBuilder = new StringBuilder(storeFieldDTO.getStoreFieldName()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
if(StringUtils.isNotBlank(value)){
String[] valueArr = value.split(" ");
stringBuilder.append(valueArr[0]);
if(valueArr.length > 1){
stringBuilder.append(" 至 ").append(valueArr[1]);
}
}
return stringBuilder.toString();
}
public String yyyyMMddHHmmssBack(String value) throws ParseException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return this.dateBack(value, simpleDateFormat, simpleDateFormat1);
}
public String yyyyMMddBack(String value) throws ParseException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
return this.dateBack(value, simpleDateFormat, simpleDateFormat1);
}
public String yyyyMM(String value) throws ParseException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMM");
SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM");
return this.dateBack(value, simpleDateFormat, simpleDateFormat1);
}
public String mmddBack(String value) throws ParseException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MMdd");
SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("MM-dd");
return this.dateBack(value, simpleDateFormat, simpleDateFormat1);
}
public String hhmmssBack(String value) throws ParseException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HHmmss");
SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("HH:mm:ss");
return this.dateBack(value, simpleDateFormat, simpleDateFormat1);
}
private String dateBack(String value, SimpleDateFormat simpleDateFormat, SimpleDateFormat simpleDateFormat1) throws ParseException {
String[] valueArr = value.split(" ");
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("【").append(simpleDateFormat1.format(simpleDateFormat.parse(valueArr[0]))).append("】").append(" ");
if (valueArr.length > 1) {
stringBuilder.append("至");
stringBuilder.append("【").append(simpleDateFormat1.format(simpleDateFormat.parse(valueArr[1]))).append("】").append(" ");
}
return stringBuilder.toString();
}
}
package com.gic.plug.web.strategy.impl;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.plug.web.strategy.ScreenBackStrategy;
import com.gic.plug.web.utils.ComputeBackUtil;
import com.gic.store.constant.StoreESFieldsEnum;
import com.gic.store.dto.StoreGroupDTO;
import com.gic.store.service.StoreGroupApiService;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
@Component
public class StoreGroupBackImpl implements ScreenBackStrategy {
@Autowired
private StoreGroupApiService storeGroupApiService;
@Override
public String screenBack(String compute, String value, String key, Integer enterpriseId) {
if(StringUtils.isNotBlank(value)){
StringBuilder stringBuilder = new StringBuilder(StoreESFieldsEnum.STOREGROUPIDLIST.getDesc()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
String[] valueArr = value.split(" ");
List<Integer> storeGroupIdList = new ArrayList<>();
for(String s : valueArr){
storeGroupIdList.add(Integer.valueOf(s));
}
ServiceResponse<List<StoreGroupDTO>> listServiceResponse = this.storeGroupApiService.listStoreGroupByIds(storeGroupIdList, enterpriseId);
if(listServiceResponse.isSuccess()){
if(listServiceResponse.getResult() != null){
for(StoreGroupDTO storeGroupDTO : listServiceResponse.getResult()){
stringBuilder.append("【").append(storeGroupDTO.getStoreGroupName()).append("】").append(" ");
}
}
}
return stringBuilder.toString();
}
return null;
}
}
package com.gic.plug.web.strategy.impl;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.plug.web.strategy.ScreenBackStrategy;
import com.gic.plug.web.utils.ComputeBackUtil;
import com.gic.store.constant.StoreESFieldsEnum;
import com.gic.store.dto.StoreRegionDTO;
import com.gic.store.service.StoreRegionApiService;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
@Component
public class StoreRegionBackImpl implements ScreenBackStrategy {
@Autowired
private StoreRegionApiService storeRegionApiService;
@Override
public String screenBack(String compute, String value, String key, Integer enterpriseId) {
if(StringUtils.isNotBlank(value)){
StringBuilder stringBuilder = new StringBuilder(StoreESFieldsEnum.REGIONID.getDesc()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
String[] valueArr = value.split(" ");
List<Integer> storeRegionIdList = new ArrayList<>();
for(String s : valueArr){
storeRegionIdList.add(Integer.valueOf(s));
}
ServiceResponse<List<StoreRegionDTO>> listServiceResponse = this.storeRegionApiService.listStoreRegionByIds(enterpriseId, storeRegionIdList);
if(listServiceResponse.isSuccess()){
if(listServiceResponse.getResult() != null){
for(StoreRegionDTO storeRegionDTO : listServiceResponse.getResult()){
stringBuilder.append("【").append(storeRegionDTO.getRegionName()).append("】").append(" ");
}
}
}
return stringBuilder.toString();
}
return null;
}
}
package com.gic.plug.web.strategy.impl;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.plug.web.strategy.ScreenBackStrategy;
import com.gic.plug.web.utils.ComputeBackUtil;
import com.gic.store.constant.CreateTypeEnum;
import com.gic.store.constant.StoreCompleteEnum;
import com.gic.store.constant.StoreESFieldsEnum;
import com.gic.store.constant.StoreStatusEnum;
import com.gic.store.dto.StoreDictDTO;
import com.gic.store.service.StoreDictApiService;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Component
public class StoreSelectBackImpl implements ScreenBackStrategy {
@Autowired
private StoreDictApiService storeDictApiService;
private Map<String, String> methodMap = new HashMap<>();
@PostConstruct
public void init(){
methodMap.put(StoreESFieldsEnum.STATUS.getField(), "storeStatusBack");
methodMap.put(StoreESFieldsEnum.COMPLETESTATUS.getField(), "storeCompleteBack");
methodMap.put(StoreESFieldsEnum.CREATETYPE.getField(), "storeCreateTypeBack");
methodMap.put(StoreESFieldsEnum.STORETYPE.getField(), "storeTypeBack");
methodMap.put(StoreESFieldsEnum.ERPSTATUS.getField(), "erpStatusBack");
}
@Override
public String screenBack(String compute, String value, String key, Integer enterpriseId){
String methodName = methodMap.get(key);
if(StringUtils.isNotBlank(methodName)){
try {
try {
Method method = this.getClass().getMethod(methodName, Class.forName(compute.getClass().getCanonicalName()),
Class.forName(value.getClass().getCanonicalName()),Class.forName(enterpriseId.getClass().getCanonicalName()));
try {
String message = (String)method.invoke(this, compute, value, enterpriseId);
return message;
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
}
return null;
}
//单选
public String storeStatusBack(String compute, String value, Integer enterpriseId){
if(StringUtils.isNotBlank(value)){
StringBuilder stringBuilder = new StringBuilder(StoreESFieldsEnum.STATUS.getDesc()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
for(StoreStatusEnum storeStatusEnum : StoreStatusEnum.values()){
if(storeStatusEnum.getCode() == Integer.valueOf(value)){
stringBuilder.append("【").append(storeStatusEnum.getMessage()).append("】 ");
}
}
return stringBuilder.toString();
}
return null;
}
//单选
public String storeCompleteBack(String compute, String value, Integer enterpriseId){
if(StringUtils.isNotBlank(value)){
StringBuilder stringBuilder = new StringBuilder(StoreESFieldsEnum.COMPLETESTATUS.getDesc()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
for(StoreCompleteEnum storeStatusEnum : StoreCompleteEnum.values()){
if(storeStatusEnum.getCode() == Integer.valueOf(value)){
stringBuilder.append("【").append(storeStatusEnum.getMessage()).append("】 ");
}
}
return stringBuilder.toString();
}
return null;
}
//多选
public String storeCreateTypeBack(String compute, String value, Integer enterpriseId){
if(StringUtils.isNotBlank(value)){
StringBuilder stringBuilder = new StringBuilder(StoreESFieldsEnum.CREATETYPE.getDesc()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
String[] valueArr = value.split(" ");
for(String v : valueArr){
for(CreateTypeEnum createTypeEnum : CreateTypeEnum.values()){
if(createTypeEnum.getCode() == Integer.valueOf(v)){
stringBuilder.append("【").append(createTypeEnum.getMessage()).append("】 ");
}
}
}
return stringBuilder.toString();
}
return null;
}
//多选
public String storeTypeBack(String compute, String value, Integer enterpriseId){
if(StringUtils.isNotBlank(value)){
String[] valueArr = value.split(" ");
ServiceResponse<List<StoreDictDTO>> serviceResponse = this.storeDictApiService.listStoreType(enterpriseId);
if(serviceResponse.isSuccess()){
List<StoreDictDTO> list = serviceResponse.getResult();
StringBuilder stringBuilder = new StringBuilder(StoreESFieldsEnum.STORETYPE.getDesc());
stringBuilder.append(" ").append(ComputeBackUtil.getComputeBack(compute));
for(StoreDictDTO dictDTO : list){
for(String v : valueArr){
if(dictDTO.getValue().equals(v)){
stringBuilder.append(" 【");
stringBuilder.append(dictDTO.getKey()).append("】 ");
}
}
}
return stringBuilder.toString();
}
}
return null;
}
//多选
public String erpStatusBack(String compute, String value, Integer enterpriseId){
if(StringUtils.isNotBlank(value)){
String[] valueArr = value.split(" ");
ServiceResponse<List<StoreDictDTO>> serviceResponse = this.storeDictApiService.listStoreStatus(enterpriseId);
if(serviceResponse.isSuccess()){
List<StoreDictDTO> list = serviceResponse.getResult();
StringBuilder stringBuilder = new StringBuilder(StoreESFieldsEnum.ERPSTATUS.getDesc());
stringBuilder.append(" ").append(ComputeBackUtil.getComputeBack(compute));
for(StoreDictDTO dictDTO : list){
for(String v : valueArr){
if(dictDTO.getValue().equals(v)){
stringBuilder.append(" 【");
stringBuilder.append(dictDTO.getKey()).append("】 ");
}
}
}
return stringBuilder.toString();
}
}
return null;
}
}
package com.gic.plug.web.strategy.impl;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.plug.web.strategy.ScreenBackStrategy;
import com.gic.plug.web.utils.ComputeBackUtil;
import com.gic.store.constant.StoreESFieldsEnum;
import com.gic.store.dto.StoreGroupDTO;
import com.gic.store.dto.StoreTagDTO;
import com.gic.store.service.StoreTagApiService;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
@Component
public class StoreTagBackImpl implements ScreenBackStrategy {
@Autowired
private StoreTagApiService storeTagApiService;
@Override
public String screenBack(String compute, String value, String key, Integer enterpriseId) {
if(StringUtils.isNotBlank(value)){
StringBuilder stringBuilder = new StringBuilder(StoreESFieldsEnum.STORETAG.getDesc()).append(" ");
stringBuilder.append(ComputeBackUtil.getComputeBack(compute)).append(" ");
String[] valueArr = value.split(" ");
for(String s : valueArr){
ServiceResponse<StoreTagDTO> response = this.storeTagApiService.getByStoreTagId(Integer.valueOf(s));
if(response.isSuccess() && response.getResult()!= null){
stringBuilder.append("【").append(response.getResult().getStoreTagName()).append("】").append(" ");
}
}
return stringBuilder.toString();
}
return null;
}
}
package com.gic.plug.web.strategy.init;
import com.gic.plug.web.strategy.ScreenBackStrategy;
import com.gic.plug.web.strategy.impl.*;
import com.gic.store.constant.StoreESFieldsEnum;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import java.util.HashMap;
import java.util.Map;
@Component
public class StrategyInit {
@Autowired
private StoreAreaBackImpl storeAreaBack;
@Autowired
private StoreBackImpl storeBack;
@Autowired
private StoreBrandBackImpl storeBrandBack;
@Autowired
private StoreCustomBackImpl storeCustomBack;
@Autowired
private StoreGroupBackImpl storeGroupBack;
@Autowired
private StoreRegionBackImpl storeRegionBack;
@Autowired
private StoreSelectBackImpl storeSelectBack;
@Autowired
private StoreTagBackImpl storeTagBack;
private Map<String, ScreenBackStrategy> strategyMap = new HashMap<>();
@PostConstruct
public void init(){
strategyMap.put(StoreESFieldsEnum.AREAIDS.getField(), this.getStoreAreaBack());
strategyMap.put(StoreESFieldsEnum.STOREID.getField(), this.getStoreBack());
strategyMap.put(StoreESFieldsEnum.STOREBRANDIDLIST.getField(), this.getStoreBrandBack());
strategyMap.put(StoreESFieldsEnum.STOREGROUPIDLIST.getField(), this.getStoreGroupBack());
strategyMap.put(StoreESFieldsEnum.REGIONID.getField(), this.getStoreRegionBack());
strategyMap.put(StoreESFieldsEnum.STATUS.getField(), this.getStoreSelectBack());
strategyMap.put(StoreESFieldsEnum.COMPLETESTATUS.getField(), this.getStoreSelectBack());
strategyMap.put(StoreESFieldsEnum.CREATETYPE.getField(), this.getStoreSelectBack());
strategyMap.put(StoreESFieldsEnum.STORETYPE.getField(), this.getStoreSelectBack());
strategyMap.put(StoreESFieldsEnum.ERPSTATUS.getField(), this.getStoreSelectBack());
strategyMap.put(StoreESFieldsEnum.STORETAG.getField(), this.getStoreTagBack());
strategyMap.put(StoreESFieldsEnum.C1.getField(), this.getStoreCustomBack());
strategyMap.put(StoreESFieldsEnum.C2.getField(), this.getStoreCustomBack());
strategyMap.put(StoreESFieldsEnum.C3.getField(), this.getStoreCustomBack());
strategyMap.put(StoreESFieldsEnum.C4.getField(), this.getStoreCustomBack());
strategyMap.put(StoreESFieldsEnum.C5.getField(), this.getStoreCustomBack());
strategyMap.put(StoreESFieldsEnum.C6.getField(), this.getStoreCustomBack());
strategyMap.put(StoreESFieldsEnum.C7.getField(), this.getStoreCustomBack());
strategyMap.put(StoreESFieldsEnum.C8.getField(), this.getStoreCustomBack());
strategyMap.put(StoreESFieldsEnum.C9.getField(), this.getStoreCustomBack());
strategyMap.put(StoreESFieldsEnum.C10.getField(), this.getStoreCustomBack());
System.out.println("对象初始化完成");
}
public StoreAreaBackImpl getStoreAreaBack() {
return storeAreaBack;
}
public StoreBackImpl getStoreBack() {
return storeBack;
}
public StoreBrandBackImpl getStoreBrandBack() {
return storeBrandBack;
}
public StoreCustomBackImpl getStoreCustomBack() {
return storeCustomBack;
}
public StoreGroupBackImpl getStoreGroupBack() {
return storeGroupBack;
}
public StoreRegionBackImpl getStoreRegionBack() {
return storeRegionBack;
}
public StoreSelectBackImpl getStoreSelectBack() {
return storeSelectBack;
}
public StoreTagBackImpl getStoreTagBack() {
return storeTagBack;
}
public Map<String, ScreenBackStrategy> getStrategyMap() {
return strategyMap;
}
}
package com.gic.plug.web.utils;
import org.apache.commons.lang.StringUtils;
import java.util.HashMap;
import java.util.Map;
public class ComputeBackUtil {
public static Map<String, String> computeMap = new HashMap<>();
static {
computeMap.put("=", "为");
computeMap.put(">", "大于");
computeMap.put(">=", "大于等于");
computeMap.put("<", "小于");
computeMap.put("<=", "小于等于");
computeMap.put("between", "为");
computeMap.put("contain", "为");
}
public static String getComputeBack(String compute){
String back = computeMap.get(compute);
if(StringUtils.isBlank(back)){
back = "为";
}
return back;
}
}
package com.gic.plug.web.vo;
import java.io.Serializable;
import java.util.Date;
/**
* tab_city
*/
public class CityVO implements Serializable {
/**
* 城市id
*/
private String cityId;
/**
* 城市名称
*/
private String cityName;
/**
* 省份id
*/
private String provinceId;
/**
* 城市拼音
*/
private String cityPy;
public String getCityId() {
return cityId;
}
public void setCityId(String cityId) {
this.cityId = cityId;
}
public String getCityName() {
return cityName;
}
public void setCityName(String cityName) {
this.cityName = cityName;
}
public String getProvinceId() {
return provinceId;
}
public void setProvinceId(String provinceId) {
this.provinceId = provinceId;
}
public String getCityPy() {
return cityPy;
}
public void setCityPy(String cityPy) {
this.cityPy = cityPy;
}
}
\ No newline at end of file
package com.gic.plug.web.vo;
import java.io.Serializable;
import java.util.Date;
/**
* tab_county
*/
public class CountyVO implements Serializable {
/**
*
*/
private String countyId;
/**
*
*/
private String countyName;
/**
*
*/
private String cityId;
/**
*
*/
private String provinceId;
/**
*
*/
private String fullName;
/**
* 拼音
*/
private String countyPy;
public String getCountyId() {
return countyId;
}
public void setCountyId(String countyId) {
this.countyId = countyId;
}
public String getCountyName() {
return countyName;
}
public void setCountyName(String countyName) {
this.countyName = countyName;
}
public String getCityId() {
return cityId;
}
public void setCityId(String cityId) {
this.cityId = cityId;
}
public String getProvinceId() {
return provinceId;
}
public void setProvinceId(String provinceId) {
this.provinceId = provinceId;
}
public String getFullName() {
return fullName;
}
public void setFullName(String fullName) {
this.fullName = fullName;
}
public String getCountyPy() {
return countyPy;
}
public void setCountyPy(String countyPy) {
this.countyPy = countyPy;
}
}
\ No newline at end of file
package com.gic.plug.web.vo;
import java.io.Serializable;
import java.util.Date;
/**
* tab_province
*/
public class ProvinceVO implements Serializable {
/**
* 省份id
*/
private String provinceId;
/**
* 省份名称
*/
private String provinceName;
/**
* 省份拼音
*/
private String provincePy;
public String getProvinceId() {
return provinceId;
}
public void setProvinceId(String provinceId) {
this.provinceId = provinceId;
}
public String getProvinceName() {
return provinceName;
}
public void setProvinceName(String provinceName) {
this.provinceName = provinceName;
}
public String getProvincePy() {
return provincePy;
}
public void setProvincePy(String provincePy) {
this.provincePy = provincePy;
}
}
\ No newline at end of file
package com.gic.plug.web.vo;
import java.io.Serializable;
/**
* @author guojx
* @date 2019/7/15 10:13 AM
*/
public class StoreFieldRegionVO implements Serializable{
private static final long serialVersionUID = -5515638740943494767L;
private Integer storeFieldId;
/**
* 属性名称
*/
private String storeFieldName;
private String storeFieldCode;
/**
* 字段类型;1文本 2单选 3多选 4实数 5时间
*/
private Integer storeFieldType;
private String storeFieldKey;
private int dateType;
/**
* 排序
*/
private Double sort;
public Integer getStoreFieldId() {
return storeFieldId;
}
public void setStoreFieldId(Integer storeFieldId) {
this.storeFieldId = storeFieldId;
}
public String getStoreFieldName() {
return storeFieldName;
}
public void setStoreFieldName(String storeFieldName) {
this.storeFieldName = storeFieldName;
}
public String getStoreFieldCode() {
return storeFieldCode;
}
public void setStoreFieldCode(String storeFieldCode) {
this.storeFieldCode = storeFieldCode;
}
public Integer getStoreFieldType() {
return storeFieldType;
}
public void setStoreFieldType(Integer storeFieldType) {
this.storeFieldType = storeFieldType;
}
public Double getSort() {
return sort;
}
public void setSort(Double sort) {
this.sort = sort;
}
public String getStoreFieldKey() {
return storeFieldKey;
}
public void setStoreFieldKey(String storeFieldKey) {
this.storeFieldKey = storeFieldKey;
}
public int getDateType() {
return dateType;
}
public void setDateType(int dateType) {
this.dateType = dateType;
}
}
package com.gic.plug.web.vo;
import java.io.Serializable;
/**
* @author guojx
* @date 2019/7/15 10:46 AM
*/
public class StoreFieldSelectVO implements Serializable{
private static final long serialVersionUID = -5800764730350439370L;
private Integer storeFieldSelectId;
private String storeFieldSelectName;
private String storeFieldSelectCode;
private Double sort;
public Integer getStoreFieldSelectId() {
return storeFieldSelectId;
}
public void setStoreFieldSelectId(Integer storeFieldSelectId) {
this.storeFieldSelectId = storeFieldSelectId;
}
public String getStoreFieldSelectName() {
return storeFieldSelectName;
}
public void setStoreFieldSelectName(String storeFieldSelectName) {
this.storeFieldSelectName = storeFieldSelectName;
}
public String getStoreFieldSelectCode() {
return storeFieldSelectCode;
}
public void setStoreFieldSelectCode(String storeFieldSelectCode) {
this.storeFieldSelectCode = storeFieldSelectCode;
}
public Double getSort() {
return sort;
}
public void setSort(Double sort) {
this.sort = sort;
}
}
package com.gic.plug.web.vo;
import java.io.Serializable;
/**
* @author zhiwj
* @date 2019/7/15
*/
public class StoreRegionVO implements Serializable {
private static final long serialVersionUID = -1075076662156877982L;
private Integer regionId;
private String regionCode;
private String regionName;
public Integer getRegionId() {
return regionId;
}
public void setRegionId(Integer regionId) {
this.regionId = regionId;
}
public String getRegionCode() {
return regionCode;
}
public void setRegionCode(String regionCode) {
this.regionCode = regionCode;
}
public String getRegionName() {
return regionName;
}
public void setRegionName(String regionName) {
this.regionName = regionName;
}
}
package com.gic.plug.web.vo;
public class StoreResourceVO {
private Integer authMode;
private String searchJson;
private String sceenBack;
public Integer getAuthMode() {
return authMode;
}
public void setAuthMode(Integer authMode) {
this.authMode = authMode;
}
public String getSearchJson() {
return searchJson;
}
public void setSearchJson(String searchJson) {
this.searchJson = searchJson;
}
public String getSceenBack() {
return sceenBack;
}
public void setSceenBack(String sceenBack) {
this.sceenBack = sceenBack;
}
}
package com.gic.plug.web.vo;
import java.io.Serializable;
/**
* @author zhiwj
* @date 2019/7/15
*/
public class StoreVO implements Serializable {
private static final long serialVersionUID = -7416111388932147780L;
private Integer storeId;
private String storeName;
private String storeCode;
public Integer getStoreId() {
return storeId;
}
public void setStoreId(Integer storeId) {
this.storeId = storeId;
}
public String getStoreName() {
return storeName;
}
public void setStoreName(String storeName) {
this.storeName = storeName;
}
public String getStoreCode() {
return storeCode;
}
public void setStoreCode(String storeCode) {
this.storeCode = storeCode;
}
}
package com.gic.plug.web.vo;
import java.io.Serializable;
/**
* tab_store_widget
*/
public class StoreWidgetVO implements Serializable {
/**
*
*/
private Integer storeWidgetId;
/**
*
*/
private String searchParam;
/**
*
*/
private String writeBackParam;
private String authSearchParam;
private Integer authMode = 1;
private String screenBack;
public Integer getStoreWidgetId() {
return storeWidgetId;
}
public void setStoreWidgetId(Integer storeWidgetId) {
this.storeWidgetId = storeWidgetId;
}
public String getSearchParam() {
return searchParam;
}
public void setSearchParam(String searchParam) {
this.searchParam = searchParam;
}
public String getWriteBackParam() {
return writeBackParam;
}
public void setWriteBackParam(String writeBackParam) {
this.writeBackParam = writeBackParam;
}
public String getAuthSearchParam() {
return authSearchParam;
}
public void setAuthSearchParam(String authSearchParam) {
this.authSearchParam = authSearchParam;
}
public Integer getAuthMode() {
return authMode;
}
public void setAuthMode(Integer authMode) {
this.authMode = authMode;
}
public String getScreenBack() {
return screenBack;
}
public void setScreenBack(String screenBack) {
this.screenBack = screenBack;
}
}
\ No newline at end of file
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serializable;
import java.util.Date;
public class CategoryVO implements Serializable {
private static final long serialVersionUID = -8126896401928702304L;
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specCategoryId;
/**
* 类目名称
*/
private String specCategoryName;
/**
* 类目code
*/
private String specCategoryCode;
/**
*
*/
private Date createTime;
/**
*
*/
private Date updateTime;
/**
* 0未删除 1删除
*/
private Integer deleteFlag;
/**
* 关联商品域id
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long goodsDomainId;
/**
* 排序
*/
private Integer sort;
/**
* 关联品类组的id
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specCategoryGroupId;
/**
*
*/
private Integer enterpriseId;
/**
* 关联将来统一的品类id
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long gicCategoryId;
/**
* 关联将来统一的品类code
*/
private String gicCategoryCode;
/**
* 关联将来统一的品类id
*/
private String gicCategoryName;
/**
* 是否是传入父品类的子类
*/
private Boolean isSelected;
/**
* ture代表有没有子类 false代表有
*/
private Boolean nextChild;
public Long getSpecCategoryId() {
return specCategoryId;
}
public void setSpecCategoryId(Long specCategoryId) {
this.specCategoryId = specCategoryId;
}
public String getSpecCategoryName() {
return specCategoryName;
}
public void setSpecCategoryName(String specCategoryName) {
this.specCategoryName = specCategoryName;
}
public String getSpecCategoryCode() {
return specCategoryCode;
}
public void setSpecCategoryCode(String specCategoryCode) {
this.specCategoryCode = specCategoryCode;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
public Long getGoodsDomainId() {
return goodsDomainId;
}
public void setGoodsDomainId(Long goodsDomainId) {
this.goodsDomainId = goodsDomainId;
}
public Integer getSort() {
return sort;
}
public void setSort(Integer sort) {
this.sort = sort;
}
public Long getSpecCategoryGroupId() {
return specCategoryGroupId;
}
public void setSpecCategoryGroupId(Long specCategoryGroupId) {
this.specCategoryGroupId = specCategoryGroupId;
}
public Integer getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(Integer enterpriseId) {
this.enterpriseId = enterpriseId;
}
public Long getGicCategoryId() {
return gicCategoryId;
}
public void setGicCategoryId(Long gicCategoryId) {
this.gicCategoryId = gicCategoryId;
}
public String getGicCategoryCode() {
return gicCategoryCode;
}
public void setGicCategoryCode(String gicCategoryCode) {
this.gicCategoryCode = gicCategoryCode;
}
public String getGicCategoryName() {
return gicCategoryName;
}
public void setGicCategoryName(String gicCategoryName) {
this.gicCategoryName = gicCategoryName;
}
public Boolean getSelected() {
return isSelected;
}
public void setSelected(Boolean selected) {
isSelected = selected;
}
public Boolean getNextChild() {
return nextChild;
}
public void setNextChild(Boolean nextChild) {
this.nextChild = nextChild;
}
}
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
public class GoodsBrandVO {
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specBrandId;
private String brandName;
private String brandCode;
public Long getSpecBrandId() {
return specBrandId;
}
public void setSpecBrandId(Long specBrandId) {
this.specBrandId = specBrandId;
}
public String getBrandName() {
return brandName;
}
public void setBrandName(String brandName) {
this.brandName = brandName;
}
public String getBrandCode() {
return brandCode;
}
public void setBrandCode(String brandCode) {
this.brandCode = brandCode;
}
}
package com.gic.plug.web.vo.goods;
public class GoodsCategoryVO {
/**
*
*/
private Long specCategoryId;
/**
* 类目名称
*/
private String specCategoryName;
/**
* 类目code
*/
private String specCategoryCode;
private boolean hasChild;
public Long getSpecCategoryId() {
return specCategoryId;
}
public void setSpecCategoryId(Long specCategoryId) {
this.specCategoryId = specCategoryId;
}
public String getSpecCategoryName() {
return specCategoryName;
}
public void setSpecCategoryName(String specCategoryName) {
this.specCategoryName = specCategoryName;
}
public String getSpecCategoryCode() {
return specCategoryCode;
}
public void setSpecCategoryCode(String specCategoryCode) {
this.specCategoryCode = specCategoryCode;
}
public boolean isHasChild() {
return hasChild;
}
public void setHasChild(boolean hasChild) {
this.hasChild = hasChild;
}
}
package com.gic.plug.web.vo.goods;
import java.util.List;
public class GoodsChannelVO {
private String channelCode;
private String channelName;
private String sceneCode;
private List<GoodsDomainVO> goodsDomainList;
public String getChannelCode() {
return channelCode;
}
public void setChannelCode(String channelCode) {
this.channelCode = channelCode;
}
public String getChannelName() {
return channelName;
}
public void setChannelName(String channelName) {
this.channelName = channelName;
}
public List<GoodsDomainVO> getGoodsDomainList() {
return goodsDomainList;
}
public void setGoodsDomainList(List<GoodsDomainVO> goodsDomainList) {
this.goodsDomainList = goodsDomainList;
}
public String getSceneCode() {
return sceneCode;
}
public void setSceneCode(String sceneCode) {
this.sceneCode = sceneCode;
}
}
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* @author xub
* @ClassName: GoodsCordVO
* @Description: 商品分组表
* @date 2019/8/29 上午10:16
*/
public class GoodsCordVO {
/**
* 主键ID
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specCordId;
/**
* 商户ID
*/
private Integer enterpriseId;
/**
* 域ID
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long goodsDomainId;
/**
* 分类名称
*/
private String specCordName;
/**
* 分类code
*/
private String specCordCode;
/**
* 父级分类ID
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specParentId;
/**
* 分类ID链 格式: _ID_ID_..父级ID_自身ID_
*/
private String specTagChain;
/**
* 是否叶子节点 false:不是叶子节点 true:是叶子节点
*/
private Boolean leafNodeFlag;
/**
* 是否在小程序上显示 0否 1是
*/
private Integer displayAppFlag;
/**
* 排序
*/
private Integer sort;
public Long getSpecCordId() {
return specCordId;
}
public void setSpecCordId(Long specCordId) {
this.specCordId = specCordId;
}
public Integer getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(Integer enterpriseId) {
this.enterpriseId = enterpriseId;
}
public Long getGoodsDomainId() {
return goodsDomainId;
}
public void setGoodsDomainId(Long goodsDomainId) {
this.goodsDomainId = goodsDomainId;
}
public String getSpecCordName() {
return specCordName;
}
public void setSpecCordName(String specCordName) {
this.specCordName = specCordName;
}
public String getSpecCordCode() {
return specCordCode;
}
public void setSpecCordCode(String specCordCode) {
this.specCordCode = specCordCode;
}
public Long getSpecParentId() {
return specParentId;
}
public void setSpecParentId(Long specParentId) {
this.specParentId = specParentId;
}
public String getSpecTagChain() {
return specTagChain;
}
public void setSpecTagChain(String specTagChain) {
this.specTagChain = specTagChain;
}
public Boolean getLeafNodeFlag() {
return leafNodeFlag;
}
public void setLeafNodeFlag(Boolean leafNodeFlag) {
this.leafNodeFlag = leafNodeFlag;
}
public Integer getDisplayAppFlag() {
return displayAppFlag;
}
public void setDisplayAppFlag(Integer displayAppFlag) {
this.displayAppFlag = displayAppFlag;
}
public Integer getSort() {
return sort;
}
public void setSort(Integer sort) {
this.sort = sort;
}
}
\ No newline at end of file
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
public class GoodsDomainVO {
private String domainCode;
private String domainName;
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long domainId;
public String getDomainCode() {
return domainCode;
}
public void setDomainCode(String domainCode) {
this.domainCode = domainCode;
}
public String getDomainName() {
return domainName;
}
public void setDomainName(String domainName) {
this.domainName = domainName;
}
public Long getDomainId() {
return domainId;
}
public void setDomainId(Long domainId) {
this.domainId = domainId;
}
}
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
public class GoodsPropertyVO {
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specPropertyId;
/**
* 属性名
*/
private String specPropertyName;
/**
* 属性code
*/
private String specPropertyCode;
/**
* 属性类型
*/
private String specPropertyType;
/**
* 小数点位数
*/
private Integer points;
public Long getSpecPropertyId() {
return specPropertyId;
}
public void setSpecPropertyId(Long specPropertyId) {
this.specPropertyId = specPropertyId;
}
public String getSpecPropertyName() {
return specPropertyName;
}
public void setSpecPropertyName(String specPropertyName) {
this.specPropertyName = specPropertyName;
}
public String getSpecPropertyCode() {
return specPropertyCode;
}
public void setSpecPropertyCode(String specPropertyCode) {
this.specPropertyCode = specPropertyCode;
}
public String getSpecPropertyType() {
return specPropertyType;
}
public void setSpecPropertyType(String specPropertyType) {
this.specPropertyType = specPropertyType;
}
public Integer getPoints() {
return points;
}
public void setPoints(Integer points) {
this.points = points;
}
}
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
public class GoodsPropertyValueVO {
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specPropertyValueId;
/**
* 属性值名称
*/
private String specPropertyValueName;
/**
* 属性值code
*/
private String specPropertyValueCode;
public Long getSpecPropertyValueId() {
return specPropertyValueId;
}
public void setSpecPropertyValueId(Long specPropertyValueId) {
this.specPropertyValueId = specPropertyValueId;
}
public String getSpecPropertyValueName() {
return specPropertyValueName;
}
public void setSpecPropertyValueName(String specPropertyValueName) {
this.specPropertyValueName = specPropertyValueName;
}
public String getSpecPropertyValueCode() {
return specPropertyValueCode;
}
public void setSpecPropertyValueCode(String specPropertyValueCode) {
this.specPropertyValueCode = specPropertyValueCode;
}
}
package com.gic.plug.web.vo.goods;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
public class GoodsRightsSelectorVO {
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long goodsRightsSelectorId;
/**
* 企业id
*/
private Integer enterpriseId;
/**
* 是否删除
*/
private Integer deleteFlag;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
/**
* 搜索时使用的值
*/
private String goodsRightsSearchValue;
/**
* 默认状态回显的值
*/
private String goodsRightsSearchText;
/**
* 编辑回显的值
*/
private String goodsRightSearchEdit;
/**
* 权限内的domainid{"channelCode":[domainId1,domainId2]}
*/
private String goodsRightsDomains;
/**
* 权限内的brandId{"channelCode_domainId":[brandId1,brandId2]}
*/
private String goodsRightsBrands;
/**
* 是否有商品权限 0没有 1有
*/
private Integer hasRights;
private Long findCount;
public Long getGoodsRightsSelectorId() {
return goodsRightsSelectorId;
}
public void setGoodsRightsSelectorId(Long goodsRightsSelectorId) {
this.goodsRightsSelectorId = goodsRightsSelectorId;
}
public Integer getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(Integer enterpriseId) {
this.enterpriseId = enterpriseId;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public String getGoodsRightsSearchValue() {
return goodsRightsSearchValue;
}
public void setGoodsRightsSearchValue(String goodsRightsSearchValue) {
this.goodsRightsSearchValue = goodsRightsSearchValue;
}
public String getGoodsRightsSearchText() {
return goodsRightsSearchText;
}
public void setGoodsRightsSearchText(String goodsRightsSearchText) {
this.goodsRightsSearchText = goodsRightsSearchText;
}
public String getGoodsRightSearchEdit() {
return goodsRightSearchEdit;
}
public void setGoodsRightSearchEdit(String goodsRightSearchEdit) {
this.goodsRightSearchEdit = goodsRightSearchEdit;
}
public String getGoodsRightsDomains() {
return goodsRightsDomains;
}
public void setGoodsRightsDomains(String goodsRightsDomains) {
this.goodsRightsDomains = goodsRightsDomains;
}
public String getGoodsRightsBrands() {
return goodsRightsBrands;
}
public void setGoodsRightsBrands(String goodsRightsBrands) {
this.goodsRightsBrands = goodsRightsBrands;
}
public Integer getHasRights() {
return hasRights;
}
public void setHasRights(Integer hasRights) {
this.hasRights = hasRights;
}
public Long getFindCount() {
return findCount;
}
public void setFindCount(Long findCount) {
this.findCount = findCount;
}
}
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
public class GoodsSelectorVO {
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long goodsSelectorId;
private String goodsSearchValue;
private String goodsSearchText;
private String goodsSearchEdit;
private String goodsSearchRightValue;
private String goodsSearchRightText;
private Integer enterpriseId;
/**
* 使用业务
*/
private String useType;
private Long findCount;
/**
* 是否有商品权限 0没有 1有
*/
private Integer hasRights;
public Long getGoodsSelectorId() {
return goodsSelectorId;
}
public void setGoodsSelectorId(Long goodsSelectorId) {
this.goodsSelectorId = goodsSelectorId;
}
public String getGoodsSearchValue() {
return goodsSearchValue;
}
public void setGoodsSearchValue(String goodsSearchValue) {
this.goodsSearchValue = goodsSearchValue;
}
public String getGoodsSearchText() {
return goodsSearchText;
}
public void setGoodsSearchText(String goodsSearchText) {
this.goodsSearchText = goodsSearchText;
}
public String getGoodsSearchEdit() {
return goodsSearchEdit;
}
public void setGoodsSearchEdit(String goodsSearchEdit) {
this.goodsSearchEdit = goodsSearchEdit;
}
public String getGoodsSearchRightValue() {
return goodsSearchRightValue;
}
public void setGoodsSearchRightValue(String goodsSearchRightValue) {
this.goodsSearchRightValue = goodsSearchRightValue;
}
public String getGoodsSearchRightText() {
return goodsSearchRightText;
}
public void setGoodsSearchRightText(String goodsSearchRightText) {
this.goodsSearchRightText = goodsSearchRightText;
}
public Integer getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(Integer enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getUseType() {
return useType;
}
public void setUseType(String useType) {
this.useType = useType;
}
public Long getFindCount() {
return findCount;
}
public void setFindCount(Long findCount) {
this.findCount = findCount;
}
public Integer getHasRights() {
return hasRights;
}
public void setHasRights(Integer hasRights) {
this.hasRights = hasRights;
}
}
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
public class GoodsStandardVO {
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specStandardId;
/**
*
*/
private String specStandardName;
/**
*
*/
private String specStandardCode;
public Long getSpecStandardId() {
return specStandardId;
}
public void setSpecStandardId(Long specStandardId) {
this.specStandardId = specStandardId;
}
public String getSpecStandardName() {
return specStandardName;
}
public void setSpecStandardName(String specStandardName) {
this.specStandardName = specStandardName;
}
public String getSpecStandardCode() {
return specStandardCode;
}
public void setSpecStandardCode(String specStandardCode) {
this.specStandardCode = specStandardCode;
}
}
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
public class GoodsStandardValueGroupVO {
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specStandardValueGroupId;
/**
* 规格值组名称
*/
private String specStandardValueGroupName;
/**
* 规格值组code
*/
private String specStandardValueGroupCode;
public Long getSpecStandardValueGroupId() {
return specStandardValueGroupId;
}
public void setSpecStandardValueGroupId(Long specStandardValueGroupId) {
this.specStandardValueGroupId = specStandardValueGroupId;
}
public String getSpecStandardValueGroupName() {
return specStandardValueGroupName;
}
public void setSpecStandardValueGroupName(String specStandardValueGroupName) {
this.specStandardValueGroupName = specStandardValueGroupName;
}
public String getSpecStandardValueGroupCode() {
return specStandardValueGroupCode;
}
public void setSpecStandardValueGroupCode(String specStandardValueGroupCode) {
this.specStandardValueGroupCode = specStandardValueGroupCode;
}
}
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
public class GoodsStandardValueVO {
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specStandardValueId;
/**
* 规格值名称
*/
private String specStandardValueName;
/**
* 规格值code
*/
private String specStandardValueCode;
public Long getSpecStandardValueId() {
return specStandardValueId;
}
public void setSpecStandardValueId(Long specStandardValueId) {
this.specStandardValueId = specStandardValueId;
}
public String getSpecStandardValueName() {
return specStandardValueName;
}
public void setSpecStandardValueName(String specStandardValueName) {
this.specStandardValueName = specStandardValueName;
}
public String getSpecStandardValueCode() {
return specStandardValueCode;
}
public void setSpecStandardValueCode(String specStandardValueCode) {
this.specStandardValueCode = specStandardValueCode;
}
}
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* @ClassName: GoodsTagVO
* @Description: 标签VO
* @author xub
* @date 2019/8/29 上午10:06
*/
public class GoodsTagVO {
/**
* 标签ID
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specTagId;
/**
* 企业ID
*/
private Integer enterpriseId;
/**
* 域ID
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long goodsDomainId;
/**
* 标签名称
*/
private String specTagName;
/**
* 标签code
*/
private String specTagCode;
public Long getSpecTagId() {
return specTagId;
}
public void setSpecTagId(Long specTagId) {
this.specTagId = specTagId;
}
public Integer getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(Integer enterpriseId) {
this.enterpriseId = enterpriseId;
}
public Long getGoodsDomainId() {
return goodsDomainId;
}
public void setGoodsDomainId(Long goodsDomainId) {
this.goodsDomainId = goodsDomainId;
}
public String getSpecTagName() {
return specTagName;
}
public void setSpecTagName(String specTagName) {
this.specTagName = specTagName;
}
public String getSpecTagCode() {
return specTagCode;
}
public void setSpecTagCode(String specTagCode) {
this.specTagCode = specTagCode;
}
}
\ No newline at end of file
package com.gic.plug.web.vo.goods;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.List;
/**
* @author xub
* @ClassName: GoodsSkuDTO
* @Description: sku部分商品查询
* @date 2019/9/16 下午2:01
*/
public class GoodsVO {
/**
* 商品ID
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long goodsId;
/**
* 商品名称
*/
private String goodsName;
/**
* 域ID
*/
private Long goodsDomainId;
/**
* 货号
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private String goodsCode;
/**
* SKU 信息
*/
private List<SkuVO> skuVOList;
public Long getGoodsId() {
return goodsId;
}
public void setGoodsId(Long goodsId) {
this.goodsId = goodsId;
}
public String getGoodsName() {
return goodsName;
}
public void setGoodsName(String goodsName) {
this.goodsName = goodsName;
}
public Long getGoodsDomainId() {
return goodsDomainId;
}
public void setGoodsDomainId(Long goodsDomainId) {
this.goodsDomainId = goodsDomainId;
}
public String getGoodsCode() {
return goodsCode;
}
public void setGoodsCode(String goodsCode) {
this.goodsCode = goodsCode;
}
public List<SkuVO> getSkuVOList() {
return skuVOList;
}
public void setSkuVOList(List<SkuVO> skuVOList) {
this.skuVOList = skuVOList;
}
public static class SkuVO {
/**
* ID
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long goodsSkuId;
/**
* sku数据
*/
private String goodsSkuInfo;
/**
* code
*/
private String goodsSkuCode;
public Long getGoodsSkuId() {
return goodsSkuId;
}
public void setGoodsSkuId(Long goodsSkuId) {
this.goodsSkuId = goodsSkuId;
}
public String getGoodsSkuInfo() {
return goodsSkuInfo;
}
public void setGoodsSkuInfo(String goodsSkuInfo) {
this.goodsSkuInfo = goodsSkuInfo;
}
public String getGoodsSkuCode() {
return goodsSkuCode;
}
public void setGoodsSkuCode(String goodsSkuCode) {
this.goodsSkuCode = goodsSkuCode;
}
}
}
\ No newline at end of file
package com.gic.plug.web.vo.goods;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
public class MallGoodsCordVO {
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specCordId;
/**
*
*/
private Integer enterpriseId;
/**
*
*/
private Long goodsDomainId;
/**
* 分类名称
*/
private String specCordName;
/**
* 父级分类ID
*/
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long specParentId;
/**
* 是否叶子节点 0:不是叶子节点 1:是叶子节点
*/
private Integer leafNodeFlag;
/**
* 是否在小程序上显示 0否 1是
*/
private Integer displayAppFlag;
/**
* 排序
*/
private Integer sort;
/**
* 关联商品数量
*/
private Integer cordGoodsCount;
/**
* 二级分类
*/
private List<MallGoodsCordVO> childSpecCordDTOList;
public Long getSpecCordId() {
return specCordId;
}
public void setSpecCordId(Long specCordId) {
this.specCordId = specCordId;
}
public Integer getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(Integer enterpriseId) {
this.enterpriseId = enterpriseId;
}
public Long getGoodsDomainId() {
return goodsDomainId;
}
public void setGoodsDomainId(Long goodsDomainId) {
this.goodsDomainId = goodsDomainId;
}
public String getSpecCordName() {
return specCordName;
}
public void setSpecCordName(String specCordName) {
this.specCordName = specCordName;
}
public Long getSpecParentId() {
return specParentId;
}
public void setSpecParentId(Long specParentId) {
this.specParentId = specParentId;
}
public Integer getLeafNodeFlag() {
return leafNodeFlag;
}
public void setLeafNodeFlag(Integer leafNodeFlag) {
this.leafNodeFlag = leafNodeFlag;
}
public Integer getDisplayAppFlag() {
return displayAppFlag;
}
public void setDisplayAppFlag(Integer displayAppFlag) {
this.displayAppFlag = displayAppFlag;
}
public Integer getSort() {
return sort;
}
public void setSort(Integer sort) {
this.sort = sort;
}
public Integer getCordGoodsCount() {
return cordGoodsCount;
}
public void setCordGoodsCount(Integer cordGoodsCount) {
this.cordGoodsCount = cordGoodsCount;
}
public List<MallGoodsCordVO> getChildSpecCordDTOList() {
return childSpecCordDTOList;
}
public void setChildSpecCordDTOList(List<MallGoodsCordVO> childSpecCordDTOList) {
this.childSpecCordDTOList = childSpecCordDTOList;
}
}
server: server:
port: 9010 port: 8310
servlet: servlet:
context-path: /api-plug context-path: /api-plug
tomcat: tomcat:
uri-encoding: UTF-8 uri-encoding: UTF-8
basedir: /tmp/tomcat
spring: spring:
jackson: jackson:
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
<dubbo:application name="gic-webapp-plug"/> <dubbo:application name="gic-webapp-plug"/>
<dubbo:reference interface="com.gic.store.service.StoreRegionApiService" id="storeRegionApiService" timeout="6000" retries="0"/> <dubbo:reference interface="com.gic.store.service.StoreRegionApiService" id="storeRegionApiService" timeout="6000" retries="0"/>
<dubbo:reference interface="com.gic.store.service.StoreApiService" id="storeApiService" timeout="6000" retries="0"/>
<dubbo:reference interface="com.gic.store.service.StoreBrandApiService" id="storeBrandApiService" timeout="60000" retries="0"/> <dubbo:reference interface="com.gic.store.service.StoreBrandApiService" id="storeBrandApiService" timeout="60000" retries="0"/>
<dubbo:reference interface="com.gic.store.service.StoreDictApiService" id="storeDictApiService" timeout="6000" retries="0"/> <dubbo:reference interface="com.gic.store.service.StoreDictApiService" id="storeDictApiService" timeout="6000" retries="0"/>
...@@ -22,5 +23,41 @@ ...@@ -22,5 +23,41 @@
<dubbo:reference interface="com.gic.store.service.StoreGroupApiService" id="storeGroupApiService" timeout="60000" retries="0"/> <dubbo:reference interface="com.gic.store.service.StoreGroupApiService" id="storeGroupApiService" timeout="60000" retries="0"/>
<!--自定义域字段--> <!--自定义域字段-->
<dubbo:reference interface="com.gic.store.service.StoreFieldApiService" id="storeFieldApiService" timeout="60000" retries="0"/> <dubbo:reference interface="com.gic.store.service.StoreFieldApiService" id="storeFieldApiService" timeout="60000" retries="0"/>
<dubbo:reference interface="com.gic.store.service.StoreFieldSelectApiService" id="storeFieldSelectApiService" timeout="60000" retries="0"/>
<dubbo:reference interface="com.gic.store.service.ProvincesApiService" id="provincesApiService" timeout="60000" retries="0"/> <dubbo:reference interface="com.gic.store.service.ProvincesApiService" id="provincesApiService" timeout="60000" retries="0"/>
<!--分组策略-->
<dubbo:reference interface="com.gic.store.service.StoreStrategyApiService" id="storeStrategyApiService" timeout="60000" retries="0"/>
<dubbo:reference interface="com.gic.widget.screening.api.service.EsScreeningInitService" id="esScreeningInitService" timeout="60000" retries="0"/>
<dubbo:reference interface="com.gic.widget.screening.api.service.EsScreeningTemplateService" id="esScreeningTemplateService" timeout="60000" retries="0"/>
<!-- 商品 -->
<dubbo:reference interface="com.gic.goods.api.service.GoodsDomainApiService" id="goodsDomainApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.goods.api.service.StandardApiService" id="standardApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.goods.api.service.StandardValueApiService" id="standardValueApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.goods.api.service.StandardValueGroupApiService" id="standardValueGroupApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.goods.api.service.CategoryApiService" id="categoryApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.goods.api.service.PropertyValueApiService" id="propertyValueApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.goods.api.service.PropertyApiService" id="propertyApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.goods.api.service.BrandApiService" id="brandApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.goods.api.service.GoodsSelectorApiService" id="goodsSelectorApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.goods.api.service.GoodsRightsSelectorApiService" id="goodsRightsSelectorApiService" timeout="60000" retries="0" />
<!-- -->
<dubbo:reference id="tagApiService" interface="com.gic.goods.api.service.TagApiService" timeout="60000" retries="0" check="false" />
<dubbo:reference id="cordApiService" interface="com.gic.goods.api.service.CordApiService" timeout="60000" retries="0" check="false"/>
<dubbo:reference id="goodsApiService" interface="com.gic.goods.api.service.GoodsApiService" timeout="60000" retries="0" check="false"/>
<dubbo:reference interface="com.gic.goods.api.service.MallGoodsBusinessApiService" id="mallGoodsBusinessApiService" timeout="60000" retries="0" check="false"/>
<dubbo:reference interface="com.gic.search.business.api.service.EsBusinessOperaApiService" id="esBusinessOperaApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.search.business.api.service.EsBusinessManageApiService" id="esBusinessManageApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.widget.screening.api.service.EsScreeningSearchService" id="esScreeningSearchService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.store.service.StoreWidgetApiService" id="storeWidgetApiService" timeout="60000" retries="0" />
<dubbo:reference interface="com.gic.mall.share.api.service.ShopApiService" id="shopApiService" timeout="10000" retries="0" />
<dubbo:reference interface="com.gic.member.config.api.service.AppletsConfigApiService" id="appletsConfigApiService" timeout="10000" retries="0" />
<dubbo:reference interface="com.gic.auth.service.UserResourceApiService" id="userResourceApiService" timeout="10000" retries="0" />
<dubbo:reference interface="com.gic.auth.service.ResourceApiService" id="resourceApiService" timeout="10000" retries="0" />
<dubbo:reference interface="com.gic.store.service.StoreTagApiService" id="storeTagApiService" timeout="10000" retries="0" />
</beans> </beans>
\ No newline at end of file
...@@ -5,4 +5,10 @@ ...@@ -5,4 +5,10 @@
<mvc:interceptors> <mvc:interceptors>
<bean class="com.gic.commons.interceptor.HeaderTagInterceptor"/> <bean class="com.gic.commons.interceptor.HeaderTagInterceptor"/>
</mvc:interceptors> </mvc:interceptors>
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8"></property>
<property name="maxUploadSize" value="-1"></property>
</bean>
</beans> </beans>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment