6 Commit-ok 7e4ed4245c ... a1a2d7be2b

Szerző SHA1 Üzenet Dátum
  2297027248@qq.com a1a2d7be2b 添加汇付的退款 2 éve
  2297027248@qq.com 0d91a69882 针对退款时将所有的订单信息进行退款2021-10-15 2 éve
  2297027248@qq.com dd3a257811 针对退款时将所有的订单信息进行退款2021-10-15 3 éve
  2297027248@qq.com 7cbc25e079 退款信息修改,班结统计的方式,退款审核2021-10-15 3 éve
  2297027248@qq.com b4755f3623 退款信息修改,班结统计的方式,退款审核2021-10-15 3 éve
  2297027248@qq.com cae886350f 退款信息修改,班结统计的方式,退款审核2021-10-15 3 éve
100 módosított fájl, 4174 hozzáadás és 1137 törlés
  1. 136 0
      .idea/artifacts/SAAS_AFTEREND2_jar.xml
  2. 13 0
      .idea/libraries/Maven__com_huifu_adapay_adapay_java_sdk_1_2_10.xml
  3. 13 0
      .idea/libraries/Maven__com_huifu_adapay_core_adapay_core_sdk_1_2_10.xml
  4. 13 0
      .idea/libraries/Maven__com_huifu_dg_demo_3_0_1_sources_3_0_1.xml
  5. 13 0
      .idea/libraries/Maven__com_huifu_dg_java_sdk_3_0_1_3_0_1.xml
  6. 13 0
      .idea/libraries/Maven__com_huifu_dg_java_sdk_3_0_1_sources_3_0_1.xml
  7. 13 0
      .idea/libraries/Maven__junit_junit_4_12.xml
  8. 13 0
      .idea/libraries/Maven__org_apache_httpcomponents_httpmime_4_5_12.xml
  9. 13 0
      .idea/libraries/Maven__org_eclipse_paho_org_eclipse_paho_client_mqttv3_1_2_0.xml
  10. 13 0
      .idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml
  11. 13 0
      .idea/libraries/Maven__org_saobei_saobeiopen_1_0.xml
  12. 0 9
      .idea/libraries/yijia_station_1_0_1.xml
  13. 602 557
      .idea/workspace.xml
  14. BIN
      out/artifacts/SAAS_AFTEREND2_jar/SAAS-AFTEREND2.jar
  15. 12 0
      pom.xml
  16. 5 5
      yijia-admin/src/main/resources/application-druid.yml
  17. 29 8
      yijia-admin/src/main/resources/application.yml
  18. 2 2
      yijia-admin/src/main/resources/logback.xml
  19. 5 5
      yijia-admin/target/classes/application-druid.yml
  20. 25 4
      yijia-admin/target/classes/application.yml
  21. 1 1
      yijia-admin/target/classes/logback.xml
  22. 1 1
      yijia-admin/target/maven-archiver/pom.properties
  23. BIN
      yijia-admin/target/yijia-admin.jar
  24. BIN
      yijia-admin/target/yijia-admin.jar.original
  25. 10 0
      yijia-admin/yijia-admin.iml
  26. 39 6
      yijia-common/src/main/java/com/yijia/common/core/domain/entity/SysDept.java
  27. BIN
      yijia-common/target/classes/com/yijia/common/core/domain/entity/SysDept.class
  28. 1 1
      yijia-common/target/maven-archiver/pom.properties
  29. BIN
      yijia-common/target/yijia-common-1.0.1.jar
  30. 19 24
      yijia-coupon/src/main/java/com/yijia/coupon/controller/CouponIssueController.java
  31. 16 10
      yijia-coupon/src/main/java/com/yijia/coupon/controller/CouponUserController.java
  32. 4 4
      yijia-coupon/src/main/resources/mapper/coupon/CouponUserMapper.xml
  33. BIN
      yijia-coupon/target/classes/com/yijia/coupon/controller/CouponIssueController.class
  34. BIN
      yijia-coupon/target/classes/com/yijia/coupon/controller/CouponUserController.class
  35. 4 4
      yijia-coupon/target/classes/mapper/coupon/CouponUserMapper.xml
  36. 1 1
      yijia-coupon/target/maven-archiver/pom.properties
  37. BIN
      yijia-coupon/target/yijia-coupon-1.0.1.jar
  38. 48 12
      yijia-customer/src/main/java/com/yijia/customer/controller/CardExcelImportController.java
  39. 52 3
      yijia-customer/src/main/java/com/yijia/customer/domain/CardExcelImport.java
  40. 48 0
      yijia-customer/src/main/java/com/yijia/customer/domain/CardListImport.java
  41. 26 1
      yijia-customer/src/main/java/com/yijia/customer/mapper/CardExcelImportMapper.java
  42. 26 2
      yijia-customer/src/main/java/com/yijia/customer/service/ICardExcelImportService.java
  43. 232 18
      yijia-customer/src/main/java/com/yijia/customer/service/impl/CardExcelImportServiceImpl.java
  44. 41 3
      yijia-customer/src/main/resources/mapper/customer/CardExcelImportMapper.xml
  45. 4 4
      yijia-customer/src/main/resources/mapper/customer/CustomerManageMapper.xml
  46. BIN
      yijia-customer/target/classes/com/yijia/customer/controller/CardExcelImportController.class
  47. BIN
      yijia-customer/target/classes/com/yijia/customer/domain/CardExcelImport.class
  48. BIN
      yijia-customer/target/classes/com/yijia/customer/domain/CardListImport.class
  49. BIN
      yijia-customer/target/classes/com/yijia/customer/mapper/CardExcelImportMapper.class
  50. BIN
      yijia-customer/target/classes/com/yijia/customer/service/ICardExcelImportService.class
  51. BIN
      yijia-customer/target/classes/com/yijia/customer/service/impl/CardExcelImportServiceImpl.class
  52. 41 3
      yijia-customer/target/classes/mapper/customer/CardExcelImportMapper.xml
  53. 4 4
      yijia-customer/target/classes/mapper/customer/CustomerManageMapper.xml
  54. 1 1
      yijia-customer/target/maven-archiver/pom.properties
  55. 1 0
      yijia-customer/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
  56. 1 0
      yijia-customer/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
  57. BIN
      yijia-customer/target/yijia-customer-1.0.1.jar
  58. 1 1
      yijia-framework/target/maven-archiver/pom.properties
  59. BIN
      yijia-framework/target/yijia-framework-1.0.1.jar
  60. 1 1
      yijia-generator/target/maven-archiver/pom.properties
  61. BIN
      yijia-generator/target/yijia-generator-1.0.1.jar
  62. 2 2
      yijia-integral/pom.xml
  63. 5 6
      yijia-integral/src/main/java/com/yijia/integral/domain/IntegralRuleDetail.java
  64. 7 16
      yijia-integral/src/main/java/com/yijia/integral/service/impl/IntegralRuleServiceImpl.java
  65. 1 0
      yijia-integral/src/main/resources/mapper/integral/CustomerPointsRecordMapper.xml
  66. BIN
      yijia-integral/target/classes/com/yijia/integral/domain/IntegralRuleDetail.class
  67. BIN
      yijia-integral/target/classes/com/yijia/integral/service/impl/IntegralRuleServiceImpl.class
  68. 1 0
      yijia-integral/target/classes/mapper/integral/CustomerPointsRecordMapper.xml
  69. 1 1
      yijia-integral/target/maven-archiver/pom.properties
  70. BIN
      yijia-integral/target/yijia-integral-1.0.1.jar
  71. 2 6
      yijia-integral/yijia-integral.iml
  72. 37 11
      yijia-label/src/main/resources/mapper/label/CustomerLabelDemoMapper.xml
  73. 37 11
      yijia-label/target/classes/mapper/label/CustomerLabelDemoMapper.xml
  74. 1 1
      yijia-label/target/maven-archiver/pom.properties
  75. BIN
      yijia-label/target/yijia-label-1.0.1.jar
  76. 15 18
      yijia-market/src/main/java/com/yijia/markert/controller/MarkertPlanController.java
  77. BIN
      yijia-market/target/classes/com/yijia/markert/controller/MarkertPlanController.class
  78. 1 1
      yijia-market/target/maven-archiver/pom.properties
  79. BIN
      yijia-market/target/yijia-market-1.0.1.jar
  80. 1 1
      yijia-quartz/target/maven-archiver/pom.properties
  81. BIN
      yijia-quartz/target/yijia-quartz-1.0.1.jar
  82. 42 3
      yijia-station/pom.xml
  83. 302 128
      yijia-station/src/main/java/com/yijia/station/controller/PayOrderController.java
  84. 753 190
      yijia-station/src/main/java/com/yijia/station/controller/StationClassStructureController.java
  85. 13 20
      yijia-station/src/main/java/com/yijia/station/controller/StationSettlementPriceController.java
  86. 47 0
      yijia-station/src/main/java/com/yijia/station/controller/SysAppUserInfoController.java
  87. 187 7
      yijia-station/src/main/java/com/yijia/station/domain/PayOrder.java
  88. 38 4
      yijia-station/src/main/java/com/yijia/station/domain/StationClassStructure.java
  89. 17 6
      yijia-station/src/main/java/com/yijia/station/domain/StationClassesSummary.java
  90. 11 0
      yijia-station/src/main/java/com/yijia/station/domain/StationSettlementPrice.java
  91. 14 3
      yijia-station/src/main/java/com/yijia/station/domain/StationSettlementPriceAdjust.java
  92. 77 1
      yijia-station/src/main/java/com/yijia/station/mapper/PayOrderMapper.java
  93. 86 1
      yijia-station/src/main/java/com/yijia/station/service/IPayOrderService.java
  94. 451 4
      yijia-station/src/main/java/com/yijia/station/service/impl/PayOrderServiceImpl.java
  95. 22 0
      yijia-station/src/main/java/com/yijia/station/utils/ConsumeType.java
  96. 123 0
      yijia-station/src/main/java/com/yijia/station/utils/HFparam.java
  97. 54 1
      yijia-station/src/main/java/com/yijia/station/utils/HttpUtils.java
  98. 88 0
      yijia-station/src/main/java/com/yijia/station/utils/HuiFuUtils.java
  99. 130 0
      yijia-station/src/main/java/com/yijia/station/utils/Request.java
  100. 39 0
      yijia-station/src/main/java/com/yijia/station/utils/SignUtils.java

+ 136 - 0
.idea/artifacts/SAAS_AFTEREND2_jar.xml

@@ -0,0 +1,136 @@
+<component name="ArtifactManager">
+  <artifact type="jar" build-on-make="true" name="SAAS-AFTEREND2:jar">
+    <output-path>$PROJECT_DIR$/out/artifacts/SAAS_AFTEREND2_jar</output-path>
+    <root id="archive" name="SAAS-AFTEREND2.jar">
+      <element id="module-output" name="yijia-admin" />
+      <element id="module-output" name="yijia-framework" />
+      <element id="module-output" name="yijia-system" />
+      <element id="module-output" name="yijia-quartz" />
+      <element id="module-output" name="yijia-common" />
+      <element id="module-output" name="yijia-generator" />
+      <element id="module-output" name="yijia-station" />
+      <element id="module-output" name="yijia-customer" />
+      <element id="module-output" name="yijia-market" />
+      <element id="module-output" name="yijia-integral" />
+      <element id="module-output" name="yijia-coupon" />
+      <element id="module-output" name="yijia-label" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-web/2.1.17.RELEASE/spring-boot-starter-web-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/netty/netty-codec/4.1.52.Final/netty-codec-4.1.52.Final.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/mybatis/mybatis-spring/2.0.5/mybatis-spring-2.0.5.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.9.10/jackson-datatype-jsr310-2.9.10.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/mysql/mysql-connector-java/8.0.21/mysql-connector-java-8.0.21.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/plugin/spring-plugin-core/1.2.0.RELEASE/spring-plugin-core-1.2.0.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/net/java/dev/jna/jna/5.5.0/jna-5.5.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/projectreactor/reactor-core/3.2.20.RELEASE/reactor-core-3.2.20.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/netty/netty-resolver/4.1.52.Final/netty-resolver-4.1.52.Final.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-context/5.1.18.RELEASE/spring-context-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/lettuce/lettuce-core/5.1.8.RELEASE/lettuce-core-5.1.8.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-to-slf4j/2.11.2/log4j-to-slf4j-2.11.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-websocket/9.0.38/tomcat-embed-websocket-9.0.38.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/netty/netty-transport/4.1.52.Final/netty-transport-4.1.52.Final.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/springfox/springfox-swagger-ui/2.9.2/springfox-swagger-ui-2.9.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/google/guava/guava/20.0/guava-20.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/security/spring-security-core/5.1.12.RELEASE/spring-security-core-5.1.12.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/ch/qos/logback/logback-core/1.2.3/logback-core-1.2.3.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/springfox/springfox-spi/2.9.2/springfox-spi-2.9.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/net/java/dev/jna/jna-platform/5.5.0/jna-platform-5.5.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/springfox/springfox-swagger2/2.9.2/springfox-swagger2-2.9.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/data/spring-data-redis/2.1.20.RELEASE/spring-data-redis-2.1.20.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/swagger/swagger-models/1.5.21/swagger-models-1.5.21.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/poi/poi-ooxml/3.17/poi-ooxml-3.17.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-web/5.1.18.RELEASE/spring-web-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/yaml/snakeyaml/1.23/snakeyaml-1.23.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-devtools/2.1.17.RELEASE/spring-boot-devtools-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/javax/validation/validation-api/2.0.1.Final/validation-api-2.0.1.Final.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/commons-lang/commons-lang/2.4/commons-lang-2.4.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/github/penggle/kaptcha/2.3.2/kaptcha-2.3.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/javax/servlet/javax.servlet-api/4.0.1/javax.servlet-api-4.0.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/github/pagehelper/pagehelper-spring-boot-starter/1.3.0/pagehelper-spring-boot-starter-1.3.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-beans/5.1.18.RELEASE/spring-beans-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-databind/2.9.10.6/jackson-databind-2.9.10.6.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/mybatis/spring/boot/mybatis-spring-boot-starter/2.1.3/mybatis-spring-boot-starter-2.1.3.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/security/spring-security-config/5.1.12.RELEASE/spring-security-config-5.1.12.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-security/2.1.17.RELEASE/spring-boot-starter-security-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpcore/4.4.6/httpcore-4.4.6.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/data/spring-data-keyvalue/2.1.20.RELEASE/spring-data-keyvalue-2.1.20.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-jdbc/5.1.18.RELEASE/spring-jdbc-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/plugin/spring-plugin-metadata/1.2.0.RELEASE/spring-plugin-metadata-1.2.0.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-autoconfigure/2.1.17.RELEASE/spring-boot-autoconfigure-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/hibernate/validator/hibernate-validator/6.0.20.Final/hibernate-validator-6.0.20.Final.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/springfox/springfox-swagger-common/2.9.2/springfox-swagger-common-2.9.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/2.9.10/jackson-datatype-jdk8-2.9.10.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/stax/stax-api/1.0.1/stax-api-1.0.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/data/spring-data-commons/2.1.20.RELEASE/spring-data-commons-2.1.20.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/netty/netty-buffer/4.1.52.Final/netty-buffer-4.1.52.Final.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-jdbc/2.1.17.RELEASE/spring-boot-starter-jdbc-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpclient/4.5.5/httpclient-4.5.5.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-expression/5.1.18.RELEASE/spring-expression-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-webmvc/5.1.18.RELEASE/spring-webmvc-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/aspectj/aspectjweaver/1.9.6/aspectjweaver-1.9.6.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-aop/5.1.18.RELEASE/spring-aop-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/logging/log4j/log4j-api/2.11.2/log4j-api-2.11.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/commons-codec/commons-codec/1.11/commons-codec-1.11.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/xmlbeans/xmlbeans/2.6.0/xmlbeans-2.6.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-oxm/5.1.18.RELEASE/spring-oxm-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-core/9.0.38/tomcat-embed-core-9.0.38.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/springfox/springfox-schema/2.9.2/springfox-schema-2.9.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-json/2.1.17.RELEASE/spring-boot-starter-json-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/commons-logging/commons-logging/1.2/commons-logging-1.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/github/pagehelper/pagehelper/5.2.0/pagehelper-5.2.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/eu/bitwalker/UserAgentUtils/1.19/UserAgentUtils-1.19.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/fasterxml/jackson/module/jackson-module-parameter-names/2.9.10/jackson-module-parameter-names-2.9.10.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-aop/2.1.17.RELEASE/spring-boot-starter-aop-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/security/spring-security-web/5.1.12.RELEASE/spring-security-web-5.1.12.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-annotations/2.9.10/jackson-annotations-2.9.10.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/jhlabs/filters/2.0.235-1/filters-2.0.235-1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/mybatis/mybatis/3.5.5/mybatis-3.5.5.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot/2.1.17.RELEASE/spring-boot-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-data-redis/2.1.17.RELEASE/spring-boot-starter-data-redis-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-core/5.1.18.RELEASE/spring-core-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/commons-fileupload/commons-fileupload/1.3.3/commons-fileupload-1.3.3.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/alibaba/druid-spring-boot-starter/1.2.1/druid-spring-boot-starter-1.2.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/alibaba/druid/1.2.1/druid-1.2.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/commons-io/commons-io/2.5/commons-io-2.5.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/tomcat/embed/tomcat-embed-el/9.0.38/tomcat-embed-el-9.0.38.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/jsonwebtoken/jjwt/0.9.1/jjwt-0.9.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/fasterxml/jackson/core/jackson-core/2.9.10/jackson-core-2.9.10.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/quartz-scheduler/quartz/2.3.2/quartz-2.3.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/poi/poi-ooxml-schemas/3.17/poi-ooxml-schemas-3.17.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/fasterxml/classmate/1.4.0/classmate-1.4.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/poi/poi/3.17/poi-3.17.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/springfox/springfox-core/2.9.2/springfox-core-2.9.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/slf4j/jul-to-slf4j/1.7.30/jul-to-slf4j-1.7.30.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-logging/2.1.17.RELEASE/spring-boot-starter-logging-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter-tomcat/2.1.17.RELEASE/spring-boot-starter-tomcat-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/github/oshi/oshi-core/5.2.5/oshi-core-5.2.5.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/commons/commons-pool2/2.6.2/commons-pool2-2.6.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/mapstruct/mapstruct/1.2.0.Final/mapstruct-1.2.0.Final.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/github/pagehelper/pagehelper-spring-boot-autoconfigure/1.3.0/pagehelper-spring-boot-autoconfigure-1.3.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$USER_HOME$/Desktop/document_JavaSDK/saobei-open-sdk-1.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/swagger/swagger-annotations/1.5.21/swagger-annotations-1.5.21.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/jboss/logging/jboss-logging/3.3.3.Final/jboss-logging-3.3.3.Final.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/github/jsqlparser/jsqlparser/3.2/jsqlparser-3.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/reactivestreams/reactive-streams/1.0.3/reactive-streams-1.0.3.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/netty/netty-common/4.1.52.Final/netty-common-4.1.52.Final.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/netty/netty-handler/4.1.52.Final/netty-handler-4.1.52.Final.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/mchange/mchange-commons-java/0.2.15/mchange-commons-java-0.2.15.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/io/springfox/springfox-spring-web/2.9.2/springfox-spring-web-2.9.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-context-support/5.1.18.RELEASE/spring-context-support-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/boot/spring-boot-starter/2.1.17.RELEASE/spring-boot-starter-2.1.17.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/zaxxer/HikariCP/3.2.0/HikariCP-3.2.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/github/virtuald/curvesapi/1.04/curvesapi-1.04.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-tx/5.1.18.RELEASE/spring-tx-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/springframework/spring-jcl/5.1.18.RELEASE/spring-jcl-5.1.18.RELEASE.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/mybatis/spring/boot/mybatis-spring-boot-autoconfigure/2.1.3/mybatis-spring-boot-autoconfigure-2.1.3.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/net/bytebuddy/byte-buddy/1.9.16/byte-buddy-1.9.16.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/commons/commons-collections4/4.1/commons-collections4-4.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/com/alibaba/fastjson/1.2.74/fastjson-1.2.74.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/velocity/velocity/1.7/velocity-1.7.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$MAVEN_REPOSITORY$/org/apache/commons/commons-lang3/3.11/commons-lang3-3.11.jar" path-in-jar="/" />
+    </root>
+  </artifact>
+</component>

+ 13 - 0
.idea/libraries/Maven__com_huifu_adapay_adapay_java_sdk_1_2_10.xml

@@ -0,0 +1,13 @@
+<component name="libraryTable">
+  <library name="Maven: com.huifu.adapay:adapay-java-sdk:1.2.10">
+    <CLASSES>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/adapay/adapay-java-sdk/1.2.10/adapay-java-sdk-1.2.10.jar!/" />
+    </CLASSES>
+    <JAVADOC>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/adapay/adapay-java-sdk/1.2.10/adapay-java-sdk-1.2.10-javadoc.jar!/" />
+    </JAVADOC>
+    <SOURCES>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/adapay/adapay-java-sdk/1.2.10/adapay-java-sdk-1.2.10-sources.jar!/" />
+    </SOURCES>
+  </library>
+</component>

+ 13 - 0
.idea/libraries/Maven__com_huifu_adapay_core_adapay_core_sdk_1_2_10.xml

@@ -0,0 +1,13 @@
+<component name="libraryTable">
+  <library name="Maven: com.huifu.adapay.core:adapay-core-sdk:1.2.10">
+    <CLASSES>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/adapay/core/adapay-core-sdk/1.2.10/adapay-core-sdk-1.2.10.jar!/" />
+    </CLASSES>
+    <JAVADOC>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/adapay/core/adapay-core-sdk/1.2.10/adapay-core-sdk-1.2.10-javadoc.jar!/" />
+    </JAVADOC>
+    <SOURCES>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/adapay/core/adapay-core-sdk/1.2.10/adapay-core-sdk-1.2.10-sources.jar!/" />
+    </SOURCES>
+  </library>
+</component>

+ 13 - 0
.idea/libraries/Maven__com_huifu_dg_demo_3_0_1_sources_3_0_1.xml

@@ -0,0 +1,13 @@
+<component name="libraryTable">
+  <library name="Maven: com.huifu:dg-demo-3.0.1-sources:3.0.1">
+    <CLASSES>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/dg-demo-3.0.1-sources/3.0.1/dg-demo-3.0.1-sources-3.0.1.jar!/" />
+    </CLASSES>
+    <JAVADOC>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/dg-demo-3.0.1-sources/3.0.1/dg-demo-3.0.1-sources-3.0.1-javadoc.jar!/" />
+    </JAVADOC>
+    <SOURCES>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/dg-demo-3.0.1-sources/3.0.1/dg-demo-3.0.1-sources-3.0.1-sources.jar!/" />
+    </SOURCES>
+  </library>
+</component>

+ 13 - 0
.idea/libraries/Maven__com_huifu_dg_java_sdk_3_0_1_3_0_1.xml

@@ -0,0 +1,13 @@
+<component name="libraryTable">
+  <library name="Maven: com.huifu:dg-java-sdk-3.0.1:3.0.1">
+    <CLASSES>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/dg-java-sdk-3.0.1/3.0.1/dg-java-sdk-3.0.1-3.0.1.jar!/" />
+    </CLASSES>
+    <JAVADOC>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/dg-java-sdk-3.0.1/3.0.1/dg-java-sdk-3.0.1-3.0.1-javadoc.jar!/" />
+    </JAVADOC>
+    <SOURCES>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/dg-java-sdk-3.0.1/3.0.1/dg-java-sdk-3.0.1-3.0.1-sources.jar!/" />
+    </SOURCES>
+  </library>
+</component>

+ 13 - 0
.idea/libraries/Maven__com_huifu_dg_java_sdk_3_0_1_sources_3_0_1.xml

@@ -0,0 +1,13 @@
+<component name="libraryTable">
+  <library name="Maven: com.huifu:dg-java-sdk-3.0.1-sources:3.0.1">
+    <CLASSES>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/dg-java-sdk-3.0.1-sources/3.0.1/dg-java-sdk-3.0.1-sources-3.0.1.jar!/" />
+    </CLASSES>
+    <JAVADOC>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/dg-java-sdk-3.0.1-sources/3.0.1/dg-java-sdk-3.0.1-sources-3.0.1-javadoc.jar!/" />
+    </JAVADOC>
+    <SOURCES>
+      <root url="jar://$MAVEN_REPOSITORY$/com/huifu/dg-java-sdk-3.0.1-sources/3.0.1/dg-java-sdk-3.0.1-sources-3.0.1-sources.jar!/" />
+    </SOURCES>
+  </library>
+</component>

+ 13 - 0
.idea/libraries/Maven__junit_junit_4_12.xml

@@ -0,0 +1,13 @@
+<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>

+ 13 - 0
.idea/libraries/Maven__org_apache_httpcomponents_httpmime_4_5_12.xml

@@ -0,0 +1,13 @@
+<component name="libraryTable">
+  <library name="Maven: org.apache.httpcomponents:httpmime:4.5.12">
+    <CLASSES>
+      <root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpmime/4.5.12/httpmime-4.5.12.jar!/" />
+    </CLASSES>
+    <JAVADOC>
+      <root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpmime/4.5.12/httpmime-4.5.12-javadoc.jar!/" />
+    </JAVADOC>
+    <SOURCES>
+      <root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpmime/4.5.12/httpmime-4.5.12-sources.jar!/" />
+    </SOURCES>
+  </library>
+</component>

+ 13 - 0
.idea/libraries/Maven__org_eclipse_paho_org_eclipse_paho_client_mqttv3_1_2_0.xml

@@ -0,0 +1,13 @@
+<component name="libraryTable">
+  <library name="Maven: org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.0">
+    <CLASSES>
+      <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/paho/org.eclipse.paho.client.mqttv3/1.2.0/org.eclipse.paho.client.mqttv3-1.2.0.jar!/" />
+    </CLASSES>
+    <JAVADOC>
+      <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/paho/org.eclipse.paho.client.mqttv3/1.2.0/org.eclipse.paho.client.mqttv3-1.2.0-javadoc.jar!/" />
+    </JAVADOC>
+    <SOURCES>
+      <root url="jar://$MAVEN_REPOSITORY$/org/eclipse/paho/org.eclipse.paho.client.mqttv3/1.2.0/org.eclipse.paho.client.mqttv3-1.2.0-sources.jar!/" />
+    </SOURCES>
+  </library>
+</component>

+ 13 - 0
.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml

@@ -0,0 +1,13 @@
+<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>

+ 13 - 0
.idea/libraries/Maven__org_saobei_saobeiopen_1_0.xml

@@ -0,0 +1,13 @@
+<component name="libraryTable">
+  <library name="Maven: org.saobei:saobeiopen:1.0">
+    <CLASSES>
+      <root url="jar://$MAVEN_REPOSITORY$/org/saobei/saobeiopen/1.0/saobeiopen-1.0.jar!/" />
+    </CLASSES>
+    <JAVADOC>
+      <root url="jar://$MAVEN_REPOSITORY$/org/saobei/saobeiopen/1.0/saobeiopen-1.0-javadoc.jar!/" />
+    </JAVADOC>
+    <SOURCES>
+      <root url="jar://$MAVEN_REPOSITORY$/org/saobei/saobeiopen/1.0/saobeiopen-1.0-sources.jar!/" />
+    </SOURCES>
+  </library>
+</component>

+ 0 - 9
.idea/libraries/yijia_station_1_0_1.xml

@@ -1,9 +0,0 @@
-<component name="libraryTable">
-  <library name="yijia-station-1.0.1">
-    <CLASSES>
-      <root url="jar://$PROJECT_DIR$/yijia-station/target/yijia-station-1.0.1.jar!/" />
-    </CLASSES>
-    <JAVADOC />
-    <SOURCES />
-  </library>
-</component>

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 602 - 557
.idea/workspace.xml


BIN
out/artifacts/SAAS_AFTEREND2_jar/SAAS-AFTEREND2.jar


+ 12 - 0
pom.xml

@@ -85,6 +85,18 @@
                 <version>${jna.version}</version>
             </dependency>
 
+            <dependency>
+                <groupId>com.huifu</groupId>
+                <artifactId>dg-demo-3.0.1-sources</artifactId>
+                <version>3.0.1</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.huifu</groupId>
+                <artifactId>dg-java-sdk-3.0.1</artifactId>
+                <version>3.0.1</version>
+            </dependency>
+
             <!-- swagger2-->
             <dependency>
                 <groupId>io.springfox</groupId>

+ 5 - 5
yijia-admin/src/main/resources/application-druid.yml

@@ -7,13 +7,13 @@ spring:
             # 主库数据源
             master:
                 #url: jdbc:mysql://47.105.116.204:3306/jiaduoduo_db_prod?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-                url: jdbc:mysql://115.28.211.17:3306/jiaduoduo_db_test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-                #url: jdbc:mysql://115.28.211.17:3306/jiaduoduo_db_demo?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-                username: develop
-                password: 1234.Abcd
+                #url: jdbc:mysql://115.28.211.17:3306/jiaduoduo_db_test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+                url: jdbc:mysql://39.101.135.83:33306/jiaduoduo_db_prod?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+                username: yunwei
+                password: yunwei1qaz
                 #url: jdbc:mysql://localhost:3306/jiaduoduo_db?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
                 # username: zgc
-            #password: 123456
+                #password: 123456
             # 从库数据源
             slave:
                 # 从数据源开关/默认关闭

+ 29 - 8
yijia-admin/src/main/resources/application.yml

@@ -10,11 +10,11 @@ yijia:
   demoEnabled: true
   # 文件路径
   #正式服务器
-  #profile: /home/uploadfile/images
-  #imageurl: http://image.huijy.net:8088/images
-  #测试服务器
   profile: /home/uploadfile/images
-  imageurl: http://upload.huijy.net:8088/images
+  imageurl: http://image.huijy.net:8088/images
+  #测试服务器
+  #profile: /home/uploadfile/images
+  #imageurl: http://upload.huijy.net:8088/images
   #本地测试服务
   # profile: D:/img
   #图片地址
@@ -68,13 +68,35 @@ spring:
       # 热部署开关
       enabled: true
   # redis 配置
+#  redis:
+#    # 地址
+#    host: localhost
+#    # 端口,默认为6379
+#    port: 6379
+#    # 密码
+#    password:
+#    # 连接超时时间
+#    timeout: 10s
+#    lettuce:
+#      pool:
+#        # 连接池中的最小空闲连接
+#        min-idle: 0
+#        # 连接池中的最大空闲连接
+#        max-idle: 8
+#        # 连接池的最大数据库连接数
+#        max-active: 8
+#        # #连接池最大阻塞等待时间(使用负值表示没有限制)
+#        max-wait: -1ms
   redis:
     # 地址
-    host: localhost
+    host: 39.101.135.83
+    #host: localhost
     # 端口,默认为6379
-    port: 6379
+    port: 6399
+    #port: 6379
     # 密码
-    password:
+    password: oFKUqwahRDriBnYX
+    #password:
     # 连接超时时间
     timeout: 10s
     lettuce:
@@ -87,7 +109,6 @@ spring:
         max-active: 8
         # #连接池最大阻塞等待时间(使用负值表示没有限制)
         max-wait: -1ms
-
 # token配置
 token:
     # 令牌自定义标识

+ 2 - 2
yijia-admin/src/main/resources/logback.xml

@@ -2,9 +2,9 @@
 <configuration>
     <!-- 日志存放路径 -->
    <!--<property name="log.path" value="/home/testDemo/logs" />-->
-    <property name="log.path" value="/home/devnote/deBugJar/logs" />
+   <!--<property name="log.path" value="/home/devnote/deBugJar/logs" />-->
     <!--<property name="log.path" value="/home/devnote/demoJar/logs" />-->
-   <!-- <property name="log.path" value="/home/prodJar/logs" />-->
+    <property name="log.path" value="/home/prodJar/logs" />
 
      <!-- 日志输出格式 -->
 	<property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />

+ 5 - 5
yijia-admin/target/classes/application-druid.yml

@@ -6,14 +6,14 @@ spring:
         druid:
             # 主库数据源
             master:
-                url: jdbc:mysql://47.105.116.204:3306/jiaduoduo_db_prod?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+                #url: jdbc:mysql://47.105.116.204:3306/jiaduoduo_db_prod?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
                 #url: jdbc:mysql://115.28.211.17:3306/jiaduoduo_db_test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-                #url: jdbc:mysql://115.28.211.17:3306/jiaduoduo_db_demo?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-                username: develop
-                password: 1234.Abcd
+                url: jdbc:mysql://39.101.135.83:33306/jiaduoduo_db_prod?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+                username: yunwei
+                password: yunwei1qaz
                 #url: jdbc:mysql://localhost:3306/jiaduoduo_db?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
                 # username: zgc
-            #password: 123456
+                #password: 123456
             # 从库数据源
             slave:
                 # 从数据源开关/默认关闭

+ 25 - 4
yijia-admin/target/classes/application.yml

@@ -68,13 +68,35 @@ spring:
       # 热部署开关
       enabled: true
   # redis 配置
+#  redis:
+#    # 地址
+#    host: localhost
+#    # 端口,默认为6379
+#    port: 6379
+#    # 密码
+#    password:
+#    # 连接超时时间
+#    timeout: 10s
+#    lettuce:
+#      pool:
+#        # 连接池中的最小空闲连接
+#        min-idle: 0
+#        # 连接池中的最大空闲连接
+#        max-idle: 8
+#        # 连接池的最大数据库连接数
+#        max-active: 8
+#        # #连接池最大阻塞等待时间(使用负值表示没有限制)
+#        max-wait: -1ms
   redis:
     # 地址
-    host: localhost
+    host: 39.101.135.83
+    #host: localhost
     # 端口,默认为6379
-    port: 6379
+    port: 6399
+    #port: 6379
     # 密码
-    password:
+    password: oFKUqwahRDriBnYX
+    #password:
     # 连接超时时间
     timeout: 10s
     lettuce:
@@ -87,7 +109,6 @@ spring:
         max-active: 8
         # #连接池最大阻塞等待时间(使用负值表示没有限制)
         max-wait: -1ms
-
 # token配置
 token:
     # 令牌自定义标识

+ 1 - 1
yijia-admin/target/classes/logback.xml

@@ -2,7 +2,7 @@
 <configuration>
     <!-- 日志存放路径 -->
    <!--<property name="log.path" value="/home/testDemo/logs" />-->
-    <!--<property name="log.path" value="/home/devnote/deBugJar/logs" />-->
+   <!--<property name="log.path" value="/home/devnote/deBugJar/logs" />-->
     <!--<property name="log.path" value="/home/devnote/demoJar/logs" />-->
     <property name="log.path" value="/home/prodJar/logs" />
 

+ 1 - 1
yijia-admin/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Fri Sep 24 09:53:33 CST 2021
+#Thu Sep 22 11:14:54 CST 2022
 version=1.0.1
 groupId=com.yijia
 artifactId=yijia-admin

BIN
yijia-admin/target/yijia-admin.jar


BIN
yijia-admin/target/yijia-admin.jar.original


+ 10 - 0
yijia-admin/yijia-admin.iml

@@ -142,6 +142,16 @@
     <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.5" level="project" />
     <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
     <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.11" level="project" />
+    <orderEntry type="library" name="Maven: org.saobei:saobeiopen:1.0" level="project" />
+    <orderEntry type="library" name="Maven: com.huifu.adapay.core:adapay-core-sdk:1.2.10" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpmime:4.5.12" level="project" />
+    <orderEntry type="library" name="Maven: org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.0" level="project" />
+    <orderEntry type="library" name="Maven: com.huifu.adapay:adapay-java-sdk:1.2.10" level="project" />
+    <orderEntry type="library" name="Maven: junit:junit:4.12" level="project" />
+    <orderEntry type="library" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
+    <orderEntry type="library" name="Maven: com.huifu:dg-demo-3.0.1-sources:3.0.1" level="project" />
+    <orderEntry type="library" name="Maven: com.huifu:dg-java-sdk-3.0.1:3.0.1" level="project" />
+    <orderEntry type="library" name="Maven: com.huifu:dg-java-sdk-3.0.1-sources:3.0.1" level="project" />
     <orderEntry type="module" module-name="yijia-customer" />
     <orderEntry type="module" module-name="yijia-market" />
     <orderEntry type="module" module-name="yijia-integral" />

+ 39 - 6
yijia-common/src/main/java/com/yijia/common/core/domain/entity/SysDept.java

@@ -1,14 +1,15 @@
 package com.yijia.common.core.domain.entity;
 
-import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.List;
+import com.yijia.common.core.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
 import javax.validation.constraints.Email;
 import javax.validation.constraints.NotBlank;
 import javax.validation.constraints.Size;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
-import com.yijia.common.core.domain.BaseEntity;
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * 部门表 sys_dept
@@ -252,6 +253,38 @@ public class SysDept extends BaseEntity
     /**云闪付密钥*/
     private String  yunKey;
 
+    /*退款的审核状态*/
+    private String  refundExaminStatus;
+
+    /*退款的审核状态*/
+    private String  isAlipayFlag;
+
+    /*退款的审核状态*/
+    private String  thirdPayment;
+
+    public String getIsAlipayFlag() {
+        return isAlipayFlag;
+    }
+
+    public void setIsAlipayFlag(String isAlipayFlag) {
+        this.isAlipayFlag = isAlipayFlag;
+    }
+
+    public String getThirdPayment() {
+        return thirdPayment;
+    }
+
+    public void setThirdPayment(String thirdPayment) {
+        this.thirdPayment = thirdPayment;
+    }
+
+    public String getRefundExaminStatus() {
+        return refundExaminStatus;
+    }
+
+    public void setRefundExaminStatus(String refundExaminStatus) {
+        this.refundExaminStatus = refundExaminStatus;
+    }
 
     public BigDecimal getBalance() {
         return balance;

BIN
yijia-common/target/classes/com/yijia/common/core/domain/entity/SysDept.class


+ 1 - 1
yijia-common/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Fri Sep 24 09:53:18 CST 2021
+#Thu Sep 22 11:14:46 CST 2022
 version=1.0.1
 groupId=com.yijia
 artifactId=yijia-common

BIN
yijia-common/target/yijia-common-1.0.1.jar


+ 19 - 24
yijia-coupon/src/main/java/com/yijia/coupon/controller/CouponIssueController.java

@@ -1,36 +1,29 @@
 package com.yijia.coupon.controller;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Random;
-
+import com.yijia.common.annotation.Log;
+import com.yijia.common.core.controller.BaseController;
+import com.yijia.common.core.domain.AjaxResult;
 import com.yijia.common.core.domain.entity.SysDept;
 import com.yijia.common.core.domain.model.LoginUser;
+import com.yijia.common.core.page.TableDataInfo;
+import com.yijia.common.enums.BusinessType;
 import com.yijia.common.utils.SecurityUtils;
+import com.yijia.common.utils.poi.ExcelUtil;
 import com.yijia.coupon.domain.CouponInfo;
+import com.yijia.coupon.domain.CouponIssue;
 import com.yijia.coupon.domain.CouponIssueRelation;
 import com.yijia.coupon.service.ICouponInfoService;
 import com.yijia.coupon.service.ICouponIssueRelationService;
+import com.yijia.coupon.service.ICouponIssueService;
 import com.yijia.system.service.impl.SysDeptServiceImpl;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.yijia.common.annotation.Log;
-import com.yijia.common.core.controller.BaseController;
-import com.yijia.common.core.domain.AjaxResult;
-import com.yijia.common.enums.BusinessType;
-import com.yijia.coupon.domain.CouponIssue;
-import com.yijia.coupon.service.ICouponIssueService;
-import com.yijia.common.utils.poi.ExcelUtil;
-import com.yijia.common.core.page.TableDataInfo;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Random;
 
 /**
  * 优惠劵发放方式Controller
@@ -177,6 +170,9 @@ public class CouponIssueController extends BaseController
 
         String ordNo = ""+result1+TempTime.substring(5)+result;
         couponIssue.setId(ordNo);
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        couponIssue.setCreateBy(String.valueOf(currentUser.getUser().getUserId()));
+        couponIssue.setStationId(currentUser.getUser().getDeptId());
         if(couponIssue!=null &&couponIssue.getShowIdList()!=null && couponIssue.getShowIdList().size()>0){
             String verification= StringUtils.join( couponIssue.getShowIdList(),",");
             couponIssue.setShowId(verification);
@@ -191,14 +187,13 @@ public class CouponIssueController extends BaseController
             CouponIssue couponIssue1=new CouponIssue();
             couponIssue1.setIssueType("3");
             couponIssue1.setStatus("1");
+            couponIssue1.setStationId(currentUser.getUser().getDeptId());
             List<CouponIssue> couponIssues=couponIssueService.selectCouponIssueList(couponIssue1);
             if(couponIssues.size()>0){
                 return AjaxResult.error("支付成功后的展示位,只能设置一个!");
             }
         }
-        LoginUser currentUser = SecurityUtils.getLoginUser();
-        couponIssue.setCreateBy(String.valueOf(currentUser.getUser().getUserId()));
-        couponIssue.setStationId(currentUser.getUser().getDeptId());
+
         couponIssue.setStatus("1");
         i=couponIssueService.insertCouponIssue(couponIssue);
         List<Integer> list = couponIssue.getCouponIssueRelationList();

+ 16 - 10
yijia-coupon/src/main/java/com/yijia/coupon/controller/CouponUserController.java

@@ -3,30 +3,22 @@ package com.yijia.coupon.controller;
 import com.yijia.common.annotation.Log;
 import com.yijia.common.core.controller.BaseController;
 import com.yijia.common.core.domain.AjaxResult;
-import com.yijia.common.core.domain.entity.SysDept;
-import com.yijia.common.core.domain.model.LoginUser;
 import com.yijia.common.core.page.TableDataInfo;
 import com.yijia.common.enums.BusinessType;
-import com.yijia.common.utils.SecurityUtils;
 import com.yijia.common.utils.poi.ExcelUtil;
-import com.yijia.coupon.domain.CouponInfo;
-import com.yijia.coupon.domain.CouponIssue;
-import com.yijia.coupon.domain.CouponIssueRelation;
 import com.yijia.coupon.domain.CouponUser;
 import com.yijia.coupon.service.ICouponIssueService;
 import com.yijia.coupon.service.ICouponUserService;
+import com.yijia.system.domain.SysAppUserInfo;
+import com.yijia.system.service.ISysAppUserInfoService;
 import com.yijia.system.service.ISysDeptService;
-import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.List;
-import java.util.Random;
 
 /**
  * 优惠劵Controller
@@ -45,6 +37,9 @@ public class CouponUserController extends BaseController
     private ICouponUserService couponUserService;
     @Autowired
     private ISysDeptService deptService;
+    @Autowired
+    private ISysAppUserInfoService appUserInfoService;
+
 
     /**
      * 查询人员优惠劵发放方式列表
@@ -60,6 +55,17 @@ public class CouponUserController extends BaseController
         }
         startPage();
         List<CouponUser> couponUserlist = couponUserService.selectCouponUserList(couponUser);
+        for(int m=0;m<couponUserlist.size();m++){
+            SysAppUserInfo sysAppUserInfo=new SysAppUserInfo();
+            sysAppUserInfo.setUnionId(couponUserlist.get(m).getUnionId());
+            List<SysAppUserInfo> appUserInfos=appUserInfoService.selectSysAppUserInfoList(sysAppUserInfo);
+            if(appUserInfos!=null&&appUserInfos.size()>0){
+                couponUserlist.get(m).setUserId( Integer.parseInt(appUserInfos.get(0).getUserId()+""));
+                couponUserlist.get(m).setBlogNickName(appUserInfos.get(0).getBlogNickName() );
+                couponUserlist.get(m).setMobilePhone(appUserInfos.get(0).getMobilePhone());
+            }
+
+        }
         return getDataTable(couponUserlist);
     }
 

+ 4 - 4
yijia-coupon/src/main/resources/mapper/coupon/CouponUserMapper.xml

@@ -31,12 +31,12 @@
            SELECT a.union_id,a.station_id,
             a.issue_id,a.id,a.get_coupon_time,a.coupon_id,
             a.coupon_is_used,a.coupon_is_effective,a.coupon_effective_time,
-            b.coupon_name,c.issue_name,d.user_id,d.mobile_phone,d.blog_nick_name,
+            b.coupon_name,c.issue_name,
             b.coupon_remark,c.issue_remark,b.coupon_type,b.coupon_amt,a.verification_user_phone
             from  coupon_user a
-            left join coupon_info b on a.coupon_id=b.id
-            left join coupon_issue c  on  a.issue_id=c.id
-	        left  join app_user_info d  on a.union_id=d.union_id
+             join coupon_info b on a.coupon_id=b.id
+             join coupon_issue c  on  a.issue_id=c.id
+	         -- join app_user_info d  on a.union_id=d.union_id
     </sql>
 
     <select id="selectCouponUserList" parameterType="CouponUser" resultMap="CouponUserResult">

BIN
yijia-coupon/target/classes/com/yijia/coupon/controller/CouponIssueController.class


BIN
yijia-coupon/target/classes/com/yijia/coupon/controller/CouponUserController.class


+ 4 - 4
yijia-coupon/target/classes/mapper/coupon/CouponUserMapper.xml

@@ -31,12 +31,12 @@
            SELECT a.union_id,a.station_id,
             a.issue_id,a.id,a.get_coupon_time,a.coupon_id,
             a.coupon_is_used,a.coupon_is_effective,a.coupon_effective_time,
-            b.coupon_name,c.issue_name,d.user_id,d.mobile_phone,d.blog_nick_name,
+            b.coupon_name,c.issue_name,
             b.coupon_remark,c.issue_remark,b.coupon_type,b.coupon_amt,a.verification_user_phone
             from  coupon_user a
-            left join coupon_info b on a.coupon_id=b.id
-            left join coupon_issue c  on  a.issue_id=c.id
-	        left  join app_user_info d  on a.union_id=d.union_id
+             join coupon_info b on a.coupon_id=b.id
+             join coupon_issue c  on  a.issue_id=c.id
+	         -- join app_user_info d  on a.union_id=d.union_id
     </sql>
 
     <select id="selectCouponUserList" parameterType="CouponUser" resultMap="CouponUserResult">

+ 1 - 1
yijia-coupon/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Fri Sep 24 09:53:27 CST 2021
+#Thu Sep 22 11:14:50 CST 2022
 version=1.0.1
 groupId=com.yijia
 artifactId=yijia-coupon

BIN
yijia-coupon/target/yijia-coupon-1.0.1.jar


+ 48 - 12
yijia-customer/src/main/java/com/yijia/customer/controller/CardExcelImportController.java

@@ -4,23 +4,19 @@ package com.yijia.customer.controller;
 import com.yijia.common.annotation.Log;
 import com.yijia.common.core.controller.BaseController;
 import com.yijia.common.core.domain.AjaxResult;
-import com.yijia.common.core.domain.entity.SysDept;
 import com.yijia.common.core.domain.model.LoginUser;
 import com.yijia.common.core.page.TableDataInfo;
 import com.yijia.common.enums.BusinessType;
 import com.yijia.common.utils.SecurityUtils;
 import com.yijia.common.utils.poi.ExcelUtil;
 import com.yijia.customer.domain.CardExcelImport;
-import com.yijia.customer.domain.CustomerCardUseRecord;
+import com.yijia.customer.domain.CardListImport;
 import com.yijia.customer.service.ICardExcelImportService;
-import com.yijia.customer.service.ICustomerCardUseRecordService;
 import com.yijia.system.service.ISysDeptService;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
-
 import java.util.List;
 
 /**
@@ -62,6 +58,9 @@ public class CardExcelImportController extends BaseController
     @GetMapping("/list")
     public TableDataInfo selectCardExcelImportList(CardExcelImport  cardExcelImport)
     {
+        LoginUser loginUser = SecurityUtils.getLoginUser();
+        cardExcelImport.setStationId(Integer.parseInt(loginUser.getUser().getDeptId()+""));
+        cardExcelImport.setDelFlag("0");
         startPage();
         List<CardExcelImport> recordList = cardExcelImportService.selectCardExcelImportList(cardExcelImport);
         return getDataTable(recordList);
@@ -90,7 +89,7 @@ public class CardExcelImportController extends BaseController
         ExcelUtil<CardExcelImport> util = new ExcelUtil<CardExcelImport>(CardExcelImport.class);
         List<CardExcelImport> studentList = util.importExcel(file.getInputStream());
         LoginUser loginUser = SecurityUtils.getLoginUser();
-        String message = cardExcelImportService.importData(studentList,loginUser.getUser().getDeptId());
+        String message = cardExcelImportService.importData(studentList,loginUser.getUser().getDeptId(),loginUser.getUser().getUserId());
         return AjaxResult.success(message);
     }
 
@@ -105,9 +104,28 @@ public class CardExcelImportController extends BaseController
 
         LoginUser loginUser = SecurityUtils.getLoginUser();
 
-        String message = cardExcelImportService.importData(cardExcelImports,loginUser.getUser().getDeptId() );
+        String message = cardExcelImportService.importData(cardExcelImports,loginUser.getUser().getDeptId(),loginUser.getUser().getUserId() );
         return AjaxResult.success(message);
     }
+
+
+    /**
+     * 批量修改信息
+     */
+    @PostMapping("/updateCardList")
+    @ResponseBody
+    public AjaxResult updateCardList( @RequestBody CardListImport cardListImport)
+    {
+
+        LoginUser loginUser = SecurityUtils.getLoginUser();
+        String message= null;
+        try {
+            message = cardExcelImportService.updatListData(cardListImport,loginUser.getUser().getDeptId());
+        } catch (Exception e) {
+            return  AjaxResult.error(message);
+        }
+        return  AjaxResult.success(message);
+    }
     /**
      * 新增导入的信息
      *
@@ -129,8 +147,19 @@ public class CardExcelImportController extends BaseController
      */
     @Log(title = "修改导入信息", businessType = BusinessType.UPDATE)
     @PutMapping
-    public AjaxResult updateCardExcelImport(CardExcelImport cardExcelImport)
+    public AjaxResult updateCardExcelImport( @RequestBody CardExcelImport cardExcelImport)
     {
+        CardExcelImport cardExcelImport1=new CardExcelImport();
+        cardExcelImport1.setPhoneNumber(cardExcelImport.getPhoneNumber());
+        cardExcelImport1.setImportFlag("0");
+        cardExcelImport1.setDelFlag("0");
+        List<CardExcelImport> cardExcelImportList=cardExcelImportService.selectCardExcelImportList(cardExcelImport1);
+        if(cardExcelImportList.size()>0){
+            if(!cardExcelImport.getExcelId().equals(cardExcelImportList.get(0).getExcelId())){
+                return AjaxResult.error("手机号重复");
+            }
+        }
+
         return toAjax( cardExcelImportService.updateCardExcelImport(cardExcelImport));
     }
 
@@ -140,11 +169,18 @@ public class CardExcelImportController extends BaseController
      * @param ids 需要删除的客户电子会员卡充值消费记录ID
      * @return 结果
      */
-    @Log(title = "批量删除导入的信息", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult deleteCardExcelImportByIds(Long[] ids)
+    @PostMapping("/deleteIds")
+    @ResponseBody
+    public AjaxResult deleteCardExcelImportByIds(@RequestBody Long[] ids)
     {
-        return toAjax( cardExcelImportService.deleteCardExcelImportByIds(ids));
+        int i=0;
+        try {
+           i= cardExcelImportService.updateCardExcelImportDelFlag(ids);
+        } catch (Exception e) {
+            return AjaxResult.error("删除失败");
+        }
+
+        return toAjax(i);
     }
 
 

+ 52 - 3
yijia-customer/src/main/java/com/yijia/customer/domain/CardExcelImport.java

@@ -1,11 +1,13 @@
 package com.yijia.customer.domain;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.yijia.common.annotation.Excel;
 import com.yijia.common.core.domain.BaseEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 
 import java.math.BigDecimal;
+import java.util.Date;
 import java.util.List;
 
 public class CardExcelImport extends BaseEntity
@@ -14,7 +16,7 @@ public class CardExcelImport extends BaseEntity
     private static final long serialVersionUID = 1L;
 
     /** 导入excel的id */
-    private Long excelId;
+    private Integer excelId;
 
     /** 剩余可用余额 */
     @Excel(name = "可用的余额")
@@ -54,6 +56,53 @@ public class CardExcelImport extends BaseEntity
     @Excel(name = "发放方式的id")
     private String couponIssueId;
 
+    /** 导入状态*/
+
+    private String importFlag;
+
+    /** 删除标志*/
+
+    private String delFlag;
+
+    /** 导入状态*/
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date importExcelDate;
+
+    /** 删除标志*/
+    private Long importExcelUser;
+
+    public Date getImportExcelDate() {
+        return importExcelDate;
+    }
+
+    public void setImportExcelDate(Date importExcelDate) {
+        this.importExcelDate = importExcelDate;
+    }
+
+    public Long getImportExcelUser() {
+        return importExcelUser;
+    }
+
+    public void setImportExcelUser(Long importExcelUser) {
+        this.importExcelUser = importExcelUser;
+    }
+
+    public String getImportFlag() {
+        return importFlag;
+    }
+
+    public void setImportFlag(String importFlag) {
+        this.importFlag = importFlag;
+    }
+
+    public String getDelFlag() {
+        return delFlag;
+    }
+
+    public void setDelFlag(String delFlag) {
+        this.delFlag = delFlag;
+    }
+
     public Integer getLabelId() {
         return labelId;
     }
@@ -86,11 +135,11 @@ public class CardExcelImport extends BaseEntity
         this.stationName = stationName;
     }
 
-    public Long getExcelId() {
+    public Integer getExcelId() {
         return excelId;
     }
 
-    public void setExcelId(Long excelId) {
+    public void setExcelId(Integer excelId) {
         this.excelId = excelId;
     }
 

+ 48 - 0
yijia-customer/src/main/java/com/yijia/customer/domain/CardListImport.java

@@ -0,0 +1,48 @@
+package com.yijia.customer.domain;
+
+import com.yijia.common.annotation.Excel;
+import com.yijia.common.core.domain.BaseEntity;
+
+import java.util.List;
+
+public class CardListImport extends BaseEntity
+
+{
+
+
+    /** 剩余可用余额 */
+    @Excel(name = "类型")
+    private String type;
+
+    /** 剩余积分的值*/
+    @Excel(name = "信息手机号")
+    private List<String> phoneArr;
+
+    /** 用户手机号*/
+    @Excel(name = "传入的id信息")
+    private String id;
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
+    public List<String> getPhoneArr() {
+        return phoneArr;
+    }
+
+    public void setPhoneArr(List<String> phoneArr) {
+        this.phoneArr = phoneArr;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+}

+ 26 - 1
yijia-customer/src/main/java/com/yijia/customer/mapper/CardExcelImportMapper.java

@@ -1,7 +1,6 @@
 package com.yijia.customer.mapper;
 
 import com.yijia.customer.domain.CardExcelImport;
-import com.yijia.customer.domain.CustomerCardUseRecord;
 
 import java.util.List;
 
@@ -73,6 +72,32 @@ public interface CardExcelImportMapper
     public int deleteCardExcelImportByIds(Long[] ids);
 
 
+    /**
+     * 修改信息
+     *
+     * @param cardExcelImport 需要删除的数据ID
+     * @return 结果
+     */
+    public int updateCardExcelGrade(CardExcelImport cardExcelImport);
+
+
+
+    /**
+     * 修改信息
+     *
+     * @param cardExcelImport 需要删除的数据ID
+     * @return 结果
+     */
+    public int updateCardExcelLabel(CardExcelImport cardExcelImport);
+
+
+    /**
+     * 修改信息
+     *
+     * @param cardExcelImport 需要删除的数据ID
+     * @return 结果
+     */
+    public int updateCardExcelCoupon(CardExcelImport cardExcelImport);
 
 
 

+ 26 - 2
yijia-customer/src/main/java/com/yijia/customer/service/ICardExcelImportService.java

@@ -1,7 +1,7 @@
 package com.yijia.customer.service;
 
 import com.yijia.customer.domain.CardExcelImport;
-import com.yijia.customer.domain.CustomerCardUseRecord;
+import com.yijia.customer.domain.CardListImport;
 
 import java.util.List;
 
@@ -48,6 +48,15 @@ public interface ICardExcelImportService
      */
     public int insertCardExcelImport(CardExcelImport cardExcelImport);
 
+
+    /**
+     * 逻辑批量删除
+     *
+     * @param ids 删除信息
+     * @return 新增结果
+     */
+    public int updateCardExcelImportDelFlag(Long[] ids ) throws  Exception;
+
     /**
      * 修改导入的excel信息
      *
@@ -79,7 +88,22 @@ public interface ICardExcelImportService
      * @param dataManagementList 数据列表
      * @return 结果
      */
-    public String importData(List<CardExcelImport> dataManagementList,Long deptId);
+    public String importData(List<CardExcelImport> dataManagementList,Long deptId,Long userId);
+
+
+    public String updatListData(CardListImport cardListImport, Long deptId) throws  Exception;
+
+
+
+
+    //批量置空
+    public int updateCardExcelGrade(CardExcelImport cardExcelImport);
+
+    public int updateCardExcelLabel(CardExcelImport cardExcelImport);
+
+    public int updateCardExcelCoupon(CardExcelImport cardExcelImport);
+
+
 
 
 

+ 232 - 18
yijia-customer/src/main/java/com/yijia/customer/service/impl/CardExcelImportServiceImpl.java

@@ -1,24 +1,23 @@
 package com.yijia.customer.service.impl;
 
-import com.yijia.customer.mapper.CustomerGradeSettingMapper;
-import com.yijia.label.mapper.LabelRuleMapper;
-import com.yijia.label.domain.LabelRule;
-import com.yijia.coupon.domain.CouponIssue;
 import com.yijia.common.exception.CustomException;
-import com.yijia.common.utils.DateUtils;
 import com.yijia.common.utils.StringUtils;
-import com.yijia.coupon.mapper.CouponIssueMapper;
 import com.yijia.coupon.domain.CouponIssue;
+import com.yijia.coupon.mapper.CouponIssueMapper;
 import com.yijia.customer.domain.CardExcelImport;
-import com.yijia.customer.domain.CustomerCardUseRecord;
+import com.yijia.customer.domain.CardListImport;
+import com.yijia.customer.domain.CustomerGradeSetting;
 import com.yijia.customer.mapper.CardExcelImportMapper;
-import com.yijia.customer.mapper.CustomerCardUseRecordMapper;
+import com.yijia.customer.mapper.CustomerGradeSettingMapper;
 import com.yijia.customer.service.ICardExcelImportService;
-import com.yijia.customer.service.ICustomerCardUseRecordService;
+import com.yijia.label.domain.LabelRule;
+import com.yijia.label.mapper.LabelRuleMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
-
+import java.sql.SQLException;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -129,7 +128,7 @@ public class CardExcelImportServiceImpl implements ICardExcelImportService
 
 
     @Override
-    public String importData(List<CardExcelImport> dataManagementList,Long deptId)
+    public String importData(List<CardExcelImport> dataManagementList,Long deptId,Long userId)
     {
         if (StringUtils.isNull(dataManagementList) || dataManagementList.size() == 0)
         {
@@ -140,7 +139,11 @@ public class CardExcelImportServiceImpl implements ICardExcelImportService
 
         StringBuilder successMsg = new StringBuilder();
         StringBuilder failureMsg = new StringBuilder();
-        List<CardExcelImport> existList = selectCardExcelImportList(null);
+        CardExcelImport excelImport=new CardExcelImport();
+        excelImport.setStationId(Integer.parseInt(deptId+""));
+        excelImport.setDelFlag("0");
+        excelImport.setImportFlag("0");
+        List<CardExcelImport> existList = selectCardExcelImportList(excelImport);
         for (CardExcelImport importData : dataManagementList){
 
             try {
@@ -153,7 +156,7 @@ public class CardExcelImportServiceImpl implements ICardExcelImportService
                 for (CardExcelImport entry : existList) {
                     if (entry.getPhoneNumber().equals(importData.getPhoneNumber())) {
                         userFlag = true;
-                        erroMessage="已导入  ";
+                        erroMessage="  的手机号数据已存在";
                         break;
                     }
                 }
@@ -176,26 +179,28 @@ public class CardExcelImportServiceImpl implements ICardExcelImportService
                         erroMessage=erroMessage+"   客户等级不存在";
                     }
                 }
-                importData.setStationId(importData.getStationId());
+                importData.setStationId(Integer.parseInt(deptId+""));
+                importData.setImportExcelDate(new Date());
+                importData.setImportExcelUser(userId);
                 if (!userFlag&&!issue&&!label&&!grade) {
                     insertCardExcelImport(importData);
                     successNum++;
-                    successMsg.append("<br/>" + successNum + "、数据 " + importData.getPhoneNumber() + " 导入成功");
+                    successMsg.append("<br/>" + successNum + "、 " + importData.getPhoneNumber() + " 导入成功");
                 }  else  {
                     failureNum++;
-                    failureMsg.append("<br/>" + failureNum + "、数据 " + importData.getPhoneNumber() + erroMessage);
+                    failureMsg.append("<br/>" + failureNum + "、 " + importData.getPhoneNumber() + erroMessage);
                 }
             }catch (Exception e)
             {
                 failureNum++;
-                String msg = "<br/>" + failureNum + "、账号 " + importData.getPhoneNumber() + " 导入失败:";
+                String msg = "<br/>" + failureNum + "、 " + importData.getPhoneNumber() + " 导入失败:";
                 failureMsg.append(msg + e.getMessage());
 
             }
         }
         if (failureNum > 0)
         {
-            failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:");
+            failureMsg.insert(0, "很抱歉,部分导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:");
             return failureMsg.toString();
         }
         else
@@ -204,6 +209,215 @@ public class CardExcelImportServiceImpl implements ICardExcelImportService
         }
         return successMsg.toString();
     }
+    @Transactional
+    @Override
+    public String updatListData(CardListImport cardListImport,Long deptId) throws  Exception
+    {
+
+        int i=0;
+        if(cardListImport.getType()==null||cardListImport.getType()==""){
+            throw new SQLException("回滚事务");
+        }
+
+        if("0".equals(cardListImport.getType())){
+
+                if (cardListImport.getPhoneArr() == null || cardListImport.getPhoneArr().size() == 0) {
+                    throw new SQLException("回滚事务");
+                } else {
+                    if(cardListImport.getId()==null||"".equals(cardListImport.getId())) {
+
+                        for (String phone : cardListImport.getPhoneArr()) {
+                            CardExcelImport cardExcelImport = new CardExcelImport();
+                            cardExcelImport.setStationId(Integer.parseInt(deptId + ""));
+                            cardExcelImport.setPhoneNumber(phone);
+                            cardExcelImport.setImportFlag("0");
+                            cardExcelImport.setDelFlag("0");
+                            List<CardExcelImport> cardExcelImports = cardExcelImportMapper.selectCardExcelImportList(cardExcelImport);
+                            if (cardExcelImports == null || cardExcelImports.size() == 0) {
+                                throw new SQLException("回滚事务");
+                            }
+                            CardExcelImport cardExcelImport1 = cardExcelImports.get(0);
+                            if (cardListImport.getId() == null || cardListImport.getId() == null) {
+                                i = cardExcelImportMapper.updateCardExcelGrade(cardExcelImport1);
+                            }
+                            if (i <= 0) {
+                                throw new SQLException("回滚事务");
+                            }
+                        }
+                        }
+                    else{
+                            CustomerGradeSetting customerGradeSetting = customerGradeSettingMapper.selectCustomerGradeSettingById(Long.parseLong(cardListImport.getId()));
+                            if (customerGradeSetting == null) {
+                                throw new SQLException("回滚事务");
+                            }
+                            for (String phone : cardListImport.getPhoneArr()) {
+                                CardExcelImport cardExcelImport = new CardExcelImport();
+                                cardExcelImport.setStationId(Integer.parseInt(deptId + ""));
+                                cardExcelImport.setPhoneNumber(phone);
+                                cardExcelImport.setImportFlag("0");
+                                cardExcelImport.setDelFlag("0");
+                                List<CardExcelImport> cardExcelImports = cardExcelImportMapper.selectCardExcelImportList(cardExcelImport);
+                                if (cardExcelImports == null || cardExcelImports.size() == 0) {
+                                    return "当前手机号不存在";
+                                }
+                                CardExcelImport cardExcelImport1 = cardExcelImports.get(0);
+                                cardExcelImport1.setMemberGrade(cardListImport.getId());
+                                if (cardListImport.getId() == null || cardListImport.getId() == null) {
+                                    i = cardExcelImportMapper.updateCardExcelGrade(cardExcelImport1);
+                                } else {
+                                    i = cardExcelImportMapper.updateCardExcelImport(cardExcelImport1);
+                                }
+                                if (i <= 0) {
+                                    throw new SQLException("回滚事务");
+                                }
+                            }
+                        }
+                    }
+
+
+        }
+
+        if("1".equals(cardListImport.getType())){
+            if(cardListImport.getPhoneArr()==null||cardListImport.getPhoneArr().size()==0){
+                throw new SQLException("回滚事务");
+            }else {
+                if (cardListImport.getId() == null || "".equals(cardListImport.getId())) {
+                    for (String phone : cardListImport.getPhoneArr()) {
+                        CardExcelImport cardExcelImport = new CardExcelImport();
+                        cardExcelImport.setStationId(Integer.parseInt(deptId + ""));
+                        cardExcelImport.setPhoneNumber(phone);
+                        cardExcelImport.setImportFlag("0");
+                        cardExcelImport.setDelFlag("0");
+                        List<CardExcelImport> cardExcelImports = cardExcelImportMapper.selectCardExcelImportList(cardExcelImport);
+                        if (cardExcelImports == null || cardExcelImports.size() == 0) {
+                            throw new SQLException("回滚事务");
+                        }
+                        CardExcelImport cardExcelImport1 = cardExcelImports.get(0);
+                        if (cardListImport.getId() == null || cardListImport.getId() == null) {
+                            i = cardExcelImportMapper.updateCardExcelLabel(cardExcelImport1);
+                        }
+                        if (i <= 0) {
+                            throw new SQLException("回滚事务");
+                        }
+                    }
+                } else {
+                    LabelRule labelRule = labelRuleMapper.selectLabelRuleById(Integer.parseInt(cardListImport.getId()));
+                    if (labelRule == null) {
+                        throw new SQLException("回滚事务");
+                    }
+                    for (String phone : cardListImport.getPhoneArr()) {
+                        CardExcelImport cardExcelImport = new CardExcelImport();
+                        cardExcelImport.setStationId(Integer.parseInt(deptId + ""));
+                        cardExcelImport.setPhoneNumber(phone);
+                        cardExcelImport.setImportFlag("0");
+                        cardExcelImport.setDelFlag("0");
+                        List<CardExcelImport> cardExcelImports = cardExcelImportMapper.selectCardExcelImportList(cardExcelImport);
+                        if (cardExcelImports == null || cardExcelImports.size() == 0) {
+                            throw new SQLException("回滚事务");
+                        }
+                        CardExcelImport cardExcelImport1 = cardExcelImports.get(0);
+                        cardExcelImport1.setLabelId(Integer.parseInt(cardListImport.getId() + ""));
+                        if (cardListImport.getId() == null || cardListImport.getId() == null) {
+                            i = cardExcelImportMapper.updateCardExcelLabel(cardExcelImport1);
+                        } else {
+                            i = cardExcelImportMapper.updateCardExcelImport(cardExcelImport1);
+                        }
+                        if (i <= 0) {
+                            throw new SQLException("回滚事务");
+                        }
+                    }
+                }
+            }
+
+        }
+
+        if("2".equals(cardListImport.getType())){
+            if(cardListImport.getPhoneArr()==null||cardListImport.getPhoneArr().size()==0){
+                throw new SQLException("回滚事务");
+            }else {
+                if (cardListImport.getId() == null || "".equals(cardListImport.getId())) {
+                    for (String phone : cardListImport.getPhoneArr()) {
+                        CardExcelImport cardExcelImport = new CardExcelImport();
+                        cardExcelImport.setStationId(Integer.parseInt(deptId + ""));
+                        cardExcelImport.setPhoneNumber(phone);
+                        cardExcelImport.setImportFlag("0");
+                        cardExcelImport.setDelFlag("0");
+                        List<CardExcelImport> cardExcelImports = cardExcelImportMapper.selectCardExcelImportList(cardExcelImport);
+                        if (cardExcelImports == null || cardExcelImports.size() == 0) {
+                            throw new SQLException("回滚事务");
+                        }
+                        CardExcelImport cardExcelImport1 = cardExcelImports.get(0);
+                        if (cardListImport.getId() == null || cardListImport.getId() == null) {
+                            i = cardExcelImportMapper.updateCardExcelCoupon(cardExcelImport1);
+                        } else {
+                            i = cardExcelImportMapper.updateCardExcelImport(cardExcelImport1);
+                        }
+                        if (i <= 0) {
+                            throw new SQLException("回滚事务");
+                        }
+                    }
+                } else {
+                    CouponIssue couponIssue = couponIssueMapper.selectCouponIssueById(cardListImport.getId());
+                    if (couponIssue == null) {
+                        throw new SQLException("回滚事务");
+                    }
+                    for (String phone : cardListImport.getPhoneArr()) {
+                        CardExcelImport cardExcelImport = new CardExcelImport();
+                        cardExcelImport.setStationId(Integer.parseInt(deptId + ""));
+                        cardExcelImport.setPhoneNumber(phone);
+                        cardExcelImport.setImportFlag("0");
+                        cardExcelImport.setDelFlag("0");
+                        List<CardExcelImport> cardExcelImports = cardExcelImportMapper.selectCardExcelImportList(cardExcelImport);
+                        if (cardExcelImports == null || cardExcelImports.size() == 0) {
+                            throw new SQLException("回滚事务");
+                        }
+                        CardExcelImport cardExcelImport1 = cardExcelImports.get(0);
+                        cardExcelImport1.setCouponIssueId(cardListImport.getId());
+                        if (cardListImport.getId() == null || cardListImport.getId() == null) {
+                            i = cardExcelImportMapper.updateCardExcelCoupon(cardExcelImport1);
+                        } else {
+                            i = cardExcelImportMapper.updateCardExcelImport(cardExcelImport1);
+                        }
+                        if (i <= 0) {
+                            throw new SQLException("回滚事务");
+                        }
+                    }
+                }
+            }
+
+        }
+        return "成功";
+
+    }
+
+    @Transactional
+    @Override
+    public int updateCardExcelImportDelFlag(Long [] ids) throws Exception
+    {
+        int i=0;
+         for(Long id:ids){
+             CardExcelImport cardExcelImport=new CardExcelImport();
+             cardExcelImport.setExcelId(Integer.parseInt(id+""));
+             cardExcelImport.setDelFlag("1");
+            i= updateCardExcelImport(cardExcelImport);
+            if(i==0){
+                throw  new SQLException("逻辑删除失败");
+            }
+         }
 
+        return 1;
+    }
+    @Override
+    public int updateCardExcelGrade(CardExcelImport cardExcelImport){
+        return cardExcelImportMapper.updateCardExcelGrade(cardExcelImport);
+    }
+    @Override
+    public int updateCardExcelLabel(CardExcelImport cardExcelImport){
+        return cardExcelImportMapper.updateCardExcelLabel(cardExcelImport);
+    }
+    @Override
+    public int updateCardExcelCoupon(CardExcelImport cardExcelImport){
+        return cardExcelImportMapper.updateCardExcelCoupon(cardExcelImport);
+    }
 
 }

+ 41 - 3
yijia-customer/src/main/resources/mapper/customer/CardExcelImportMapper.xml

@@ -15,12 +15,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="stationName"    column="dept_name"    />
         <result property="labelId"    column="label_id"    />
         <result property="couponIssueId"    column="coupon_issue_id"    />
+        <result property="importExcelDate"    column="import_excel_date"    />
+        <result property="importExcelUser"    column="import_excel_user"    />
     </resultMap>
 
     <sql id="selectCardExcelImportVo">
           SELECT a.excel_id,a.station_id,a.phone_number,
         a.member_grade,a.integral,a.card_type,a.balance,b.dept_name,
-				a.label_id,a.coupon_issue_id
+				a.label_id,a.coupon_issue_id,a.import_excel_date,a.import_excel_user
         from  card_excel_import a
         left  join sys_dept b  on a.station_id=b.dept_id
     </sql>
@@ -36,9 +38,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="memberGrade != null  and memberGrade != ''"> and a.member_grade = #{memberGrade}</if>
             <if test="labelId != null  and labelId != ''"> and a.label_id = #{labelId}</if>
             <if test="couponIssueId != null  and couponIssueId != ''"> and a.coupon_issue_id = #{couponIssueId}</if>
-            <if test="stationIdList != null ">
+            <if test="importFlag != null  and importFlag != ''"> and a.import_flag = #{importFlag}</if>
+            <if test="delFlag != null  and delFlag != ''"> and a.del_flag = #{delFlag}</if>
+            <if test="importExcelUser != null  and importExcelUser != ''"> and a.import_excel_user = #{importExcelUser}</if>
+            <if test="stationList != null ">
                 and a.station_id in
-                <foreach item="item" index="index" collection="stationIdList"
+                <foreach item="item" index="index" collection="stationList"
                          open="(" separator="," close=")">
                     #{item}
                 </foreach>
@@ -71,6 +76,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="memberGrade != null">member_grade,</if>
             <if test="labelId != null">label_id,</if>
             <if test="couponIssueId != null">coupon_issue_id,</if>
+            <if test="importFlag != null">import_flag,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="importExcelDate != null">import_excel_date,</if>
+            <if test="importExcelUser != null">import_excel_user,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="balance != null">#{balance},</if>
@@ -81,6 +90,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="memberGrade != null">#{memberGrade},</if>
             <if test="labelId != null">#{labelId},</if>
             <if test="couponIssueId != null">#{couponIssueId},</if>
+            <if test="importFlag != null">#{importFlag},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="importExcelDate != null">#{importExcelDate},</if>
+            <if test="importExcelUser != null">#{importExcelUser},</if>
          </trim>
     </insert>
 
@@ -95,6 +108,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="memberGrade != null">member_grade = #{memberGrade},</if>
             <if test="labelId != null">label_id = #{labelId},</if>
             <if test="couponIssueId != null">coupon_issue_id = #{couponIssueId},</if>
+            <if test="importFlag != null">import_flag = #{importFlag},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+        </trim>
+        where excel_id = #{excelId}
+    </update>
+
+
+    <update id="updateCardExcelGrade" parameterType="CardExcelImport">
+        update card_excel_import
+        <trim prefix="SET" suffixOverrides=",">
+           member_grade = null,
+        </trim>
+        where excel_id = #{excelId}
+    </update>
+    <update id="updateCardExcelLabel" parameterType="CardExcelImport">
+        update card_excel_import
+        <trim prefix="SET" suffixOverrides=",">
+            label_id = null,
+        </trim>
+        where excel_id = #{excelId}
+    </update>
+    <update id="updateCardExcelCoupon" parameterType="CardExcelImport">
+        update card_excel_import
+        <trim prefix="SET" suffixOverrides=",">
+            coupon_issue_id = null,
         </trim>
         where excel_id = #{excelId}
     </update>

+ 4 - 4
yijia-customer/src/main/resources/mapper/customer/CustomerManageMapper.xml

@@ -32,9 +32,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </resultMap>
 
     <sql id="selectCustomerManageVo">
-        select id, member_id, customer_name, commend_man, phone_number, car_number, balance,
-        integral, special_car_type, regtime, station_id, mina_user_id, oil_name, grade,
-         liters, amt, union_id ,d.dept_name as station_name
+        select m.id, m.member_id, m.customer_name, m.commend_man, m.phone_number, m.car_number, m.balance,
+        m.integral, m.special_car_type, m.regtime, m.station_id, m.mina_user_id, m.oil_name, m.grade,
+         m.liters, m.amt, m.union_id ,d.dept_name as station_name
          from customer_manage m join  sys_dept d on m.station_id = d.dept_id
     </sql>
 
@@ -46,7 +46,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="commendMan != null  and commendMan != ''"> and commend_man = #{commendMan}</if>
             <if test="phoneNumber != null  and phoneNumber != ''"> and phone_number like concat('%', #{phoneNumber}, '%')</if>
             <if test="carNumber != null  and carNumber != ''"> and car_number = #{carNumber}</if>
-            <if test="balance != null "> and balance = #{balance}</if>
+            <if test="balance != null "> and m.balance = #{balance}</if>
             <if test="integral != null "> and integral = #{integral}</if>
             <if test="specialCarType != null  and specialCarType != ''"> and special_car_type = #{specialCarType}</if>
             <if test="regtime != null "> and regtime = #{regtime}</if>

BIN
yijia-customer/target/classes/com/yijia/customer/controller/CardExcelImportController.class


BIN
yijia-customer/target/classes/com/yijia/customer/domain/CardExcelImport.class


BIN
yijia-customer/target/classes/com/yijia/customer/domain/CardListImport.class


BIN
yijia-customer/target/classes/com/yijia/customer/mapper/CardExcelImportMapper.class


BIN
yijia-customer/target/classes/com/yijia/customer/service/ICardExcelImportService.class


BIN
yijia-customer/target/classes/com/yijia/customer/service/impl/CardExcelImportServiceImpl.class


+ 41 - 3
yijia-customer/target/classes/mapper/customer/CardExcelImportMapper.xml

@@ -15,12 +15,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="stationName"    column="dept_name"    />
         <result property="labelId"    column="label_id"    />
         <result property="couponIssueId"    column="coupon_issue_id"    />
+        <result property="importExcelDate"    column="import_excel_date"    />
+        <result property="importExcelUser"    column="import_excel_user"    />
     </resultMap>
 
     <sql id="selectCardExcelImportVo">
           SELECT a.excel_id,a.station_id,a.phone_number,
         a.member_grade,a.integral,a.card_type,a.balance,b.dept_name,
-				a.label_id,a.coupon_issue_id
+				a.label_id,a.coupon_issue_id,a.import_excel_date,a.import_excel_user
         from  card_excel_import a
         left  join sys_dept b  on a.station_id=b.dept_id
     </sql>
@@ -36,9 +38,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="memberGrade != null  and memberGrade != ''"> and a.member_grade = #{memberGrade}</if>
             <if test="labelId != null  and labelId != ''"> and a.label_id = #{labelId}</if>
             <if test="couponIssueId != null  and couponIssueId != ''"> and a.coupon_issue_id = #{couponIssueId}</if>
-            <if test="stationIdList != null ">
+            <if test="importFlag != null  and importFlag != ''"> and a.import_flag = #{importFlag}</if>
+            <if test="delFlag != null  and delFlag != ''"> and a.del_flag = #{delFlag}</if>
+            <if test="importExcelUser != null  and importExcelUser != ''"> and a.import_excel_user = #{importExcelUser}</if>
+            <if test="stationList != null ">
                 and a.station_id in
-                <foreach item="item" index="index" collection="stationIdList"
+                <foreach item="item" index="index" collection="stationList"
                          open="(" separator="," close=")">
                     #{item}
                 </foreach>
@@ -71,6 +76,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="memberGrade != null">member_grade,</if>
             <if test="labelId != null">label_id,</if>
             <if test="couponIssueId != null">coupon_issue_id,</if>
+            <if test="importFlag != null">import_flag,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="importExcelDate != null">import_excel_date,</if>
+            <if test="importExcelUser != null">import_excel_user,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="balance != null">#{balance},</if>
@@ -81,6 +90,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="memberGrade != null">#{memberGrade},</if>
             <if test="labelId != null">#{labelId},</if>
             <if test="couponIssueId != null">#{couponIssueId},</if>
+            <if test="importFlag != null">#{importFlag},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="importExcelDate != null">#{importExcelDate},</if>
+            <if test="importExcelUser != null">#{importExcelUser},</if>
          </trim>
     </insert>
 
@@ -95,6 +108,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="memberGrade != null">member_grade = #{memberGrade},</if>
             <if test="labelId != null">label_id = #{labelId},</if>
             <if test="couponIssueId != null">coupon_issue_id = #{couponIssueId},</if>
+            <if test="importFlag != null">import_flag = #{importFlag},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+        </trim>
+        where excel_id = #{excelId}
+    </update>
+
+
+    <update id="updateCardExcelGrade" parameterType="CardExcelImport">
+        update card_excel_import
+        <trim prefix="SET" suffixOverrides=",">
+           member_grade = null,
+        </trim>
+        where excel_id = #{excelId}
+    </update>
+    <update id="updateCardExcelLabel" parameterType="CardExcelImport">
+        update card_excel_import
+        <trim prefix="SET" suffixOverrides=",">
+            label_id = null,
+        </trim>
+        where excel_id = #{excelId}
+    </update>
+    <update id="updateCardExcelCoupon" parameterType="CardExcelImport">
+        update card_excel_import
+        <trim prefix="SET" suffixOverrides=",">
+            coupon_issue_id = null,
         </trim>
         where excel_id = #{excelId}
     </update>

+ 4 - 4
yijia-customer/target/classes/mapper/customer/CustomerManageMapper.xml

@@ -32,9 +32,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </resultMap>
 
     <sql id="selectCustomerManageVo">
-        select id, member_id, customer_name, commend_man, phone_number, car_number, balance,
-        integral, special_car_type, regtime, station_id, mina_user_id, oil_name, grade,
-         liters, amt, union_id ,d.dept_name as station_name
+        select m.id, m.member_id, m.customer_name, m.commend_man, m.phone_number, m.car_number, m.balance,
+        m.integral, m.special_car_type, m.regtime, m.station_id, m.mina_user_id, m.oil_name, m.grade,
+         m.liters, m.amt, m.union_id ,d.dept_name as station_name
          from customer_manage m join  sys_dept d on m.station_id = d.dept_id
     </sql>
 
@@ -46,7 +46,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="commendMan != null  and commendMan != ''"> and commend_man = #{commendMan}</if>
             <if test="phoneNumber != null  and phoneNumber != ''"> and phone_number like concat('%', #{phoneNumber}, '%')</if>
             <if test="carNumber != null  and carNumber != ''"> and car_number = #{carNumber}</if>
-            <if test="balance != null "> and balance = #{balance}</if>
+            <if test="balance != null "> and m.balance = #{balance}</if>
             <if test="integral != null "> and integral = #{integral}</if>
             <if test="specialCarType != null  and specialCarType != ''"> and special_car_type = #{specialCarType}</if>
             <if test="regtime != null "> and regtime = #{regtime}</if>

+ 1 - 1
yijia-customer/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Fri Sep 24 09:53:29 CST 2021
+#Thu Sep 22 11:14:51 CST 2022
 version=1.0.1
 groupId=com.yijia
 artifactId=yijia-customer

+ 1 - 0
yijia-customer/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst

@@ -9,6 +9,7 @@ com\yijia\customer\controller\CustomerManageController.class
 com\yijia\customer\controller\CustomerCardSettingDetailController.class
 com\yijia\customer\controller\CustomerCardRecordRechargeController.class
 com\yijia\customer\service\ICustomerElectronicCardService.class
+com\yijia\customer\domain\CardListImport.class
 com\yijia\customer\domain\CustomerCardSettingDetail.class
 com\yijia\customer\mapper\CustomerGradeSettingMapper.class
 com\yijia\customer\service\ICustomerCardRecordRechargeService.class

+ 1 - 0
yijia-customer/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

@@ -2,6 +2,7 @@ D:\java项目\SAAS-AFTEREND2\yijia-customer\src\main\java\com\yijia\customer\map
 D:\java项目\SAAS-AFTEREND2\yijia-customer\src\main\java\com\yijia\customer\mapper\CustomerManageMapper.java
 D:\java项目\SAAS-AFTEREND2\yijia-customer\src\main\java\com\yijia\customer\domain\CustomerCardRecordRecharge.java
 D:\java项目\SAAS-AFTEREND2\yijia-customer\src\main\java\com\yijia\customer\service\impl\CustomerCardRecordRechargeServiceImpl.java
+D:\java项目\SAAS-AFTEREND2\yijia-customer\src\main\java\com\yijia\customer\domain\CardListImport.java
 D:\java项目\SAAS-AFTEREND2\yijia-customer\src\main\java\com\yijia\customer\mapper\CustomerCardRecordConsumptionMapper.java
 D:\java项目\SAAS-AFTEREND2\yijia-customer\src\main\java\com\yijia\customer\mapper\CustomerElectronicCardMapper.java
 D:\java项目\SAAS-AFTEREND2\yijia-customer\src\main\java\com\yijia\customer\domain\CardExcelImport.java

BIN
yijia-customer/target/yijia-customer-1.0.1.jar


+ 1 - 1
yijia-framework/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Fri Sep 24 09:53:22 CST 2021
+#Thu Sep 22 11:14:48 CST 2022
 version=1.0.1
 groupId=com.yijia
 artifactId=yijia-framework

BIN
yijia-framework/target/yijia-framework-1.0.1.jar


+ 1 - 1
yijia-generator/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Fri Sep 24 09:53:24 CST 2021
+#Thu Sep 22 11:14:49 CST 2022
 version=1.0.1
 groupId=com.yijia
 artifactId=yijia-generator

BIN
yijia-generator/target/yijia-generator-1.0.1.jar


+ 2 - 2
yijia-integral/pom.xml

@@ -23,10 +23,10 @@
             <groupId>com.yijia</groupId>
             <artifactId>yijia-system</artifactId>
         </dependency>
-        <dependency>
+        <!--<dependency>
             <groupId>com.yijia</groupId>
             <artifactId>yijia-station</artifactId>
-        </dependency>
+        </dependency>-->
         <dependency>
             <groupId>com.yijia</groupId>
             <artifactId>yijia-customer</artifactId>

+ 5 - 6
yijia-integral/src/main/java/com/yijia/integral/domain/IntegralRuleDetail.java

@@ -1,14 +1,13 @@
 package com.yijia.integral.domain;
 
-import java.math.BigDecimal;
-import java.util.List;
-
+import com.yijia.common.annotation.Excel;
+import com.yijia.common.core.domain.BaseEntity;
 import com.yijia.customer.domain.CustomerGradeSetting;
-import com.yijia.station.domain.StationOilPrice;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
-import com.yijia.common.annotation.Excel;
-import com.yijia.common.core.domain.BaseEntity;
+
+import java.math.BigDecimal;
+import java.util.List;
 
 /**
  * 【请填写功能名称】对象 integral_rule_detail

+ 7 - 16
yijia-integral/src/main/java/com/yijia/integral/service/impl/IntegralRuleServiceImpl.java

@@ -1,31 +1,22 @@
 package com.yijia.integral.service.impl;
 
-import java.math.BigDecimal;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.List;
-
-import com.yijia.common.core.domain.entity.SysDictData;
 import com.yijia.common.core.domain.model.LoginUser;
 import com.yijia.common.utils.SecurityUtils;
-import com.yijia.customer.domain.CustomerCardSetting;
 import com.yijia.customer.domain.CustomerGradeSetting;
-import com.yijia.customer.mapper.CustomerCardSettingMapper;
 import com.yijia.customer.mapper.CustomerGradeSettingMapper;
+import com.yijia.integral.domain.IntegralRule;
 import com.yijia.integral.domain.IntegralRuleDetail;
 import com.yijia.integral.domain.IntegralShopPic;
 import com.yijia.integral.mapper.IntegralRuleDetailMapper;
-import com.yijia.integral.mapper.IntegralShopPicMapper;
-import com.yijia.station.domain.StationOilPrice;
-import com.yijia.station.mapper.StationOilPriceMapper;
-import com.yijia.station.service.impl.StationOilPriceServiceImpl;
+import com.yijia.integral.mapper.IntegralRuleMapper;
+import com.yijia.integral.service.IIntegralRuleService;
 import com.yijia.system.mapper.SysDictDataMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import com.yijia.integral.mapper.IntegralRuleMapper;
-import com.yijia.integral.domain.IntegralRule;
-import com.yijia.integral.service.IIntegralRuleService;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * 积分规则Service业务层处理

+ 1 - 0
yijia-integral/src/main/resources/mapper/integral/CustomerPointsRecordMapper.xml

@@ -28,6 +28,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="recordType != null  and recordType != ''"> and record_type = #{recordType}</if>
             <if test="integral != null "> and integral = #{integral}</if>
             <if test="stationId != null "> and station_id = #{stationId}</if>
+            <if test="orderNo != null "> and order_no = #{orderNo}</if>
             <if test="stationIdList != null ">
                 and station_id in
                 <foreach item="item" index="index" collection="stationIdList"

BIN
yijia-integral/target/classes/com/yijia/integral/domain/IntegralRuleDetail.class


BIN
yijia-integral/target/classes/com/yijia/integral/service/impl/IntegralRuleServiceImpl.class


+ 1 - 0
yijia-integral/target/classes/mapper/integral/CustomerPointsRecordMapper.xml

@@ -28,6 +28,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="recordType != null  and recordType != ''"> and record_type = #{recordType}</if>
             <if test="integral != null "> and integral = #{integral}</if>
             <if test="stationId != null "> and station_id = #{stationId}</if>
+            <if test="orderNo != null "> and order_no = #{orderNo}</if>
             <if test="stationIdList != null ">
                 and station_id in
                 <foreach item="item" index="index" collection="stationIdList"

+ 1 - 1
yijia-integral/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Fri Sep 24 09:53:31 CST 2021
+#Thu Sep 22 11:14:52 CST 2022
 version=1.0.1
 groupId=com.yijia
 artifactId=yijia-integral

BIN
yijia-integral/target/yijia-integral-1.0.1.jar


+ 2 - 6
yijia-integral/yijia-integral.iml

@@ -59,6 +59,7 @@
     <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.3" level="project" />
     <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.17" level="project" />
     <orderEntry type="library" name="Maven: org.apache.poi:poi:3.17" level="project" />
+    <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.11" level="project" />
     <orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.1" level="project" />
     <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.17" level="project" />
     <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" level="project" />
@@ -86,15 +87,10 @@
     <orderEntry type="library" name="Maven: eu.bitwalker:UserAgentUtils:1.19" level="project" />
     <orderEntry type="library" name="Maven: javax.servlet:javax.servlet-api:4.0.1" level="project" />
     <orderEntry type="module" module-name="yijia-system" />
-    <orderEntry type="module" module-name="yijia-station" />
-    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.6" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.5" level="project" />
-    <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
-    <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.11" level="project" />
+    <orderEntry type="module" module-name="yijia-customer" />
     <orderEntry type="module" module-name="yijia-quartz" />
     <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.3.2" level="project" />
     <orderEntry type="library" name="Maven: com.mchange:mchange-commons-java:0.2.15" level="project" />
-    <orderEntry type="module" module-name="yijia-customer" />
     <orderEntry type="module" module-name="yijia-coupon" />
     <orderEntry type="module" module-name="yijia-label" />
   </component>

+ 37 - 11
yijia-label/src/main/resources/mapper/label/CustomerLabelDemoMapper.xml

@@ -33,7 +33,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         left join customer_label l on zq.station_id = l.station_id and zq.phone = l.phone and l.del_flag ="0"
         left join label_rule r on r.id = l.label_id and r.del_flag ="0"
         <where>
-            <if test="labelId != null "> and l.label_id >= #{labelId}</if>
+            <if test="labelId != null "> and l.label_id = #{labelId}</if>
             <if test="startCountNum != null "> and zq.count_num >= #{startCountNum}</if>
             <if test="endCountNum != null "> and zq.count_num &lt; #{endCountNum}</if>
             <if test="amtFlag != null and amtFlag=='2'.toString()">
@@ -117,7 +117,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
 
     <select id="secondCustomerLabelDemoList" parameterType="CustomerLabelDemo" resultMap="CustomerLabelDemoResult">
-        SELECT  zh.*,r.label_name,r.id as label_id from (
+        SELECT  zh.*,r.label_name,r.id as label_id from (select * from (
         SELECT consumer_id,sum(order_liters) order_liters,sum(amt) as amt,count(1) count_num,p.station_id,max(created_date) as create_date,
         a.mobile_phone as phone,blog_nick_name as customer_name
         from pay_order p
@@ -125,13 +125,35 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         where `status` = "1"
         <if test="stationId != null "> and p.station_id = #{stationId}</if>
         <if test="oilName != null "> and oil_name = #{oilName} </if>
-        <if test="secondBeginDate != null and beginDate != ''"><!-- 开始时间检索 -->
-            AND date_format(created_date,'%Y-%m-%d %H:%i:%s') &gt;= date_format(#{secondBeginDate},'%Y-%m-%d %H:%i:%s')
+        <if test="secondEndCountNum != 0 and secondEndAmt!=0 and secondEndLiters!=0 ">
+            <if test="secondBeginDate != null and secondBeginDate != ''"><!-- 开始时间检索 -->
+                and  date_format(created_date,'%Y-%m-%d %H:%i:%s') &gt;= date_format(#{secondBeginDate},'%Y-%m-%d %H:%i:%s')
+            </if>
+            <if test="secondEndDate != null and secondEndDate != ''"><!-- 结束时间检索 -->
+                AND date_format(created_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{secondEndDate},'%Y-%m-%d %H:%i:%s')
+            </if>
+        </if>
+        group by consumer_id,p.station_id,a.mobile_phone,blog_nick_name ) ff  where 1=1
+        <if test="secondEndCountNum == 0  and  (secondStartCountNum=='' or secondStartCountNum==null  )  and secondEndAmt !=0 and secondEndLiters!=0">
+            <if test="secondBeginDate != null  and secondEndDate!=null "><!-- 开始时间检索 -->
+               and  (date_format(create_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{secondBeginDate},'%Y-%m-%d %H:%i:%s')
+                or   date_format(create_date,'%Y-%m-%d %H:%i:%s') >= date_format(#{secondEndDate},'%Y-%m-%d %H:%i:%s'))
+            </if>
         </if>
-        <if test="secondEndDate != null and secondEndDate != ''"><!-- 结束时间检索 -->
-            AND date_format(created_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{secondEndDate},'%Y-%m-%d %H:%i:%s')
+        <if test="secondEndAmt==0 and (secondStartAmt==null or secondStartAmt=='')  and secondEndCountNum != 0 and secondEndLiters!=0">
+            <if test="secondBeginDate != null  and secondEndDate!=null "><!-- 开始时间检索 -->
+                and (date_format(create_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{secondBeginDate},'%Y-%m-%d %H:%i:%s')
+                or   date_format(create_date,'%Y-%m-%d %H:%i:%s') >= date_format(#{secondEndDate},'%Y-%m-%d %H:%i:%s'))
+            </if>
+
         </if>
-        group by consumer_id,p.station_id,a.mobile_phone,blog_nick_name
+        <if test="secondEndLiters==0 and (secondStartLiters==null or secondStartLiters=='') and secondEndAmt!=0 and secondEndCountNum != 0 ">
+            <if test="secondBeginDate != null  and secondEndDate!=null "><!-- 开始时间检索 -->
+                and (ff.date_format(create_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{secondBeginDate},'%Y-%m-%d %H:%i:%s')
+                or   date_format(create_date,'%Y-%m-%d %H:%i:%s') >= date_format(#{secondEndDate},'%Y-%m-%d %H:%i:%s'))
+            </if>
+        </if>
+
         ORDER BY create_date desc) zh
         left join customer_label l on zh.station_id = l.station_id and zh.phone = l.phone and l.del_flag ="0"
         left join label_rule r on r.id = l.label_id
@@ -139,7 +161,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="labelId != null "> and l.label_id = #{labelId}</if>
         <if test="stationId != null "> and zh.station_id = #{stationId}</if>
         <if test="secondStartCountNum != null "> and zh.count_num > #{secondStartCountNum}</if>
-        <if test="secondEndCountNum != null "> and  zh.count_num &lt;=#{secondEndCountNum} </if>
+        <if test="secondEndCountNum != null  and secondEndCountNum !=0"> and  zh.count_num &lt;=#{secondEndCountNum} </if>
+        <if test="!(secondEndAmt==0 and (secondStartAmt==null or secondStartAmt=='') ) ">
         <if test="secondAmtFlag != null and secondAmtFlag=='2'.toString() ">
             <choose>
                 <when test="secondStartAmt != null and secondEndAmt != null">
@@ -170,6 +193,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                 </otherwise>
             </choose>
         </if>
+        </if>
+        <if test="!(secondEndLiters==0 and (secondStartLiters==null or secondStartLiters=='') ) ">
         <if test="secondLitersFlag != null and secondLitersFlag=='2'.toString() ">
             <choose>
                 <when test="secondStartLiters != null and secondEndLiters != null">
@@ -200,8 +225,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                 </otherwise>
             </choose>
         </if>
+        </if>
         and zh.phone in (
-        SELECT zq.phone from (
+        SELECT zq.phone from (select * from (
         SELECT consumer_id,sum(order_liters) order_liters,count(1) count_num,sum(amt) as amt,p.station_id,max(created_date) created_date,
         a.mobile_phone as phone,blog_nick_name as customer_name
         from pay_order p
@@ -210,12 +236,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="stationId != null "> and p.station_id = #{stationId}</if>
         <if test="oilName != null "> and oil_name = #{oilName} </if>
         <if test="beginDate != null and beginDate != ''"><!-- 开始时间检索 -->
-            AND date_format(created_date,'%Y-%m-%d %H:%i:%s') &gt;= date_format(#{beginDate},'%Y-%m-%d %H:%i:%s')
+            and date_format(created_date,'%Y-%m-%d %H:%i:%s') &gt;= date_format(#{beginDate},'%Y-%m-%d %H:%i:%s')
         </if>
         <if test="endDate != null and endDate != ''"><!-- 结束时间检索 -->
             AND date_format(created_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{endDate},'%Y-%m-%d %H:%i:%s')
         </if>
-        group by consumer_id,p.station_id,a.mobile_phone,blog_nick_name
+        group by consumer_id,p.station_id,a.mobile_phone,blog_nick_name) ffmm
         ORDER BY created_date desc) zq
         left join customer_label l on zq.station_id = l.station_id and zq.phone = l.phone and l.del_flag ="0"
         left join label_rule r on r.id = l.label_id

+ 37 - 11
yijia-label/target/classes/mapper/label/CustomerLabelDemoMapper.xml

@@ -33,7 +33,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         left join customer_label l on zq.station_id = l.station_id and zq.phone = l.phone and l.del_flag ="0"
         left join label_rule r on r.id = l.label_id and r.del_flag ="0"
         <where>
-            <if test="labelId != null "> and l.label_id >= #{labelId}</if>
+            <if test="labelId != null "> and l.label_id = #{labelId}</if>
             <if test="startCountNum != null "> and zq.count_num >= #{startCountNum}</if>
             <if test="endCountNum != null "> and zq.count_num &lt; #{endCountNum}</if>
             <if test="amtFlag != null and amtFlag=='2'.toString()">
@@ -117,7 +117,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
 
     <select id="secondCustomerLabelDemoList" parameterType="CustomerLabelDemo" resultMap="CustomerLabelDemoResult">
-        SELECT  zh.*,r.label_name,r.id as label_id from (
+        SELECT  zh.*,r.label_name,r.id as label_id from (select * from (
         SELECT consumer_id,sum(order_liters) order_liters,sum(amt) as amt,count(1) count_num,p.station_id,max(created_date) as create_date,
         a.mobile_phone as phone,blog_nick_name as customer_name
         from pay_order p
@@ -125,13 +125,35 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         where `status` = "1"
         <if test="stationId != null "> and p.station_id = #{stationId}</if>
         <if test="oilName != null "> and oil_name = #{oilName} </if>
-        <if test="secondBeginDate != null and beginDate != ''"><!-- 开始时间检索 -->
-            AND date_format(created_date,'%Y-%m-%d %H:%i:%s') &gt;= date_format(#{secondBeginDate},'%Y-%m-%d %H:%i:%s')
+        <if test="secondEndCountNum != 0 and secondEndAmt!=0 and secondEndLiters!=0 ">
+            <if test="secondBeginDate != null and secondBeginDate != ''"><!-- 开始时间检索 -->
+                and  date_format(created_date,'%Y-%m-%d %H:%i:%s') &gt;= date_format(#{secondBeginDate},'%Y-%m-%d %H:%i:%s')
+            </if>
+            <if test="secondEndDate != null and secondEndDate != ''"><!-- 结束时间检索 -->
+                AND date_format(created_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{secondEndDate},'%Y-%m-%d %H:%i:%s')
+            </if>
+        </if>
+        group by consumer_id,p.station_id,a.mobile_phone,blog_nick_name ) ff  where 1=1
+        <if test="secondEndCountNum == 0  and  (secondStartCountNum=='' or secondStartCountNum==null  )  and secondEndAmt !=0 and secondEndLiters!=0">
+            <if test="secondBeginDate != null  and secondEndDate!=null "><!-- 开始时间检索 -->
+               and  (date_format(create_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{secondBeginDate},'%Y-%m-%d %H:%i:%s')
+                or   date_format(create_date,'%Y-%m-%d %H:%i:%s') >= date_format(#{secondEndDate},'%Y-%m-%d %H:%i:%s'))
+            </if>
         </if>
-        <if test="secondEndDate != null and secondEndDate != ''"><!-- 结束时间检索 -->
-            AND date_format(created_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{secondEndDate},'%Y-%m-%d %H:%i:%s')
+        <if test="secondEndAmt==0 and (secondStartAmt==null or secondStartAmt=='')  and secondEndCountNum != 0 and secondEndLiters!=0">
+            <if test="secondBeginDate != null  and secondEndDate!=null "><!-- 开始时间检索 -->
+                and (date_format(create_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{secondBeginDate},'%Y-%m-%d %H:%i:%s')
+                or   date_format(create_date,'%Y-%m-%d %H:%i:%s') >= date_format(#{secondEndDate},'%Y-%m-%d %H:%i:%s'))
+            </if>
+
         </if>
-        group by consumer_id,p.station_id,a.mobile_phone,blog_nick_name
+        <if test="secondEndLiters==0 and (secondStartLiters==null or secondStartLiters=='') and secondEndAmt!=0 and secondEndCountNum != 0 ">
+            <if test="secondBeginDate != null  and secondEndDate!=null "><!-- 开始时间检索 -->
+                and (ff.date_format(create_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{secondBeginDate},'%Y-%m-%d %H:%i:%s')
+                or   date_format(create_date,'%Y-%m-%d %H:%i:%s') >= date_format(#{secondEndDate},'%Y-%m-%d %H:%i:%s'))
+            </if>
+        </if>
+
         ORDER BY create_date desc) zh
         left join customer_label l on zh.station_id = l.station_id and zh.phone = l.phone and l.del_flag ="0"
         left join label_rule r on r.id = l.label_id
@@ -139,7 +161,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="labelId != null "> and l.label_id = #{labelId}</if>
         <if test="stationId != null "> and zh.station_id = #{stationId}</if>
         <if test="secondStartCountNum != null "> and zh.count_num > #{secondStartCountNum}</if>
-        <if test="secondEndCountNum != null "> and  zh.count_num &lt;=#{secondEndCountNum} </if>
+        <if test="secondEndCountNum != null  and secondEndCountNum !=0"> and  zh.count_num &lt;=#{secondEndCountNum} </if>
+        <if test="!(secondEndAmt==0 and (secondStartAmt==null or secondStartAmt=='') ) ">
         <if test="secondAmtFlag != null and secondAmtFlag=='2'.toString() ">
             <choose>
                 <when test="secondStartAmt != null and secondEndAmt != null">
@@ -170,6 +193,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                 </otherwise>
             </choose>
         </if>
+        </if>
+        <if test="!(secondEndLiters==0 and (secondStartLiters==null or secondStartLiters=='') ) ">
         <if test="secondLitersFlag != null and secondLitersFlag=='2'.toString() ">
             <choose>
                 <when test="secondStartLiters != null and secondEndLiters != null">
@@ -200,8 +225,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                 </otherwise>
             </choose>
         </if>
+        </if>
         and zh.phone in (
-        SELECT zq.phone from (
+        SELECT zq.phone from (select * from (
         SELECT consumer_id,sum(order_liters) order_liters,count(1) count_num,sum(amt) as amt,p.station_id,max(created_date) created_date,
         a.mobile_phone as phone,blog_nick_name as customer_name
         from pay_order p
@@ -210,12 +236,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="stationId != null "> and p.station_id = #{stationId}</if>
         <if test="oilName != null "> and oil_name = #{oilName} </if>
         <if test="beginDate != null and beginDate != ''"><!-- 开始时间检索 -->
-            AND date_format(created_date,'%Y-%m-%d %H:%i:%s') &gt;= date_format(#{beginDate},'%Y-%m-%d %H:%i:%s')
+            and date_format(created_date,'%Y-%m-%d %H:%i:%s') &gt;= date_format(#{beginDate},'%Y-%m-%d %H:%i:%s')
         </if>
         <if test="endDate != null and endDate != ''"><!-- 结束时间检索 -->
             AND date_format(created_date,'%Y-%m-%d %H:%i:%s') &lt;= date_format(#{endDate},'%Y-%m-%d %H:%i:%s')
         </if>
-        group by consumer_id,p.station_id,a.mobile_phone,blog_nick_name
+        group by consumer_id,p.station_id,a.mobile_phone,blog_nick_name) ffmm
         ORDER BY created_date desc) zq
         left join customer_label l on zq.station_id = l.station_id and zq.phone = l.phone and l.del_flag ="0"
         left join label_rule r on r.id = l.label_id

+ 1 - 1
yijia-label/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Fri Sep 24 09:53:28 CST 2021
+#Thu Sep 22 11:14:51 CST 2022
 version=1.0.1
 groupId=com.yijia
 artifactId=yijia-label

BIN
yijia-label/target/yijia-label-1.0.1.jar


+ 15 - 18
yijia-market/src/main/java/com/yijia/markert/controller/MarkertPlanController.java

@@ -1,33 +1,24 @@
 package com.yijia.markert.controller;
 
-import java.util.ArrayList;
-import java.util.List;
-
+import com.yijia.common.annotation.Log;
+import com.yijia.common.core.controller.BaseController;
+import com.yijia.common.core.domain.AjaxResult;
 import com.yijia.common.core.domain.entity.SysDept;
 import com.yijia.common.core.domain.model.LoginUser;
+import com.yijia.common.core.page.TableDataInfo;
+import com.yijia.common.enums.BusinessType;
 import com.yijia.common.utils.DateUtils;
 import com.yijia.common.utils.SecurityUtils;
-
-import com.yijia.common.utils.StringUtils;
 import com.yijia.common.utils.poi.ExcelUtil;
 import com.yijia.markert.domain.MarkertPlan;
 import com.yijia.markert.service.IMarkertPlanService;
 import com.yijia.system.service.ISysDeptService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.yijia.common.annotation.Log;
-import com.yijia.common.core.controller.BaseController;
-import com.yijia.common.core.domain.AjaxResult;
-import com.yijia.common.enums.BusinessType;
-import com.yijia.common.core.page.TableDataInfo;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * 营销方案Controller
@@ -105,6 +96,12 @@ public class MarkertPlanController extends BaseController
     @PostMapping
     public AjaxResult add(@RequestBody MarkertPlan markertPlan)
     {
+        if(markertPlan.getId()!=null||"".equals(markertPlan.getId())){
+            MarkertPlan markertPlan1=new MarkertPlan();
+            markertPlan1.setStatus("1");
+            markertPlan1.setId(markertPlan.getId());
+            markertPlanService.updateMarkertPlan(markertPlan1);
+        }
         LoginUser currentUser = SecurityUtils.getLoginUser();
         markertPlan.setStationId(currentUser.getUser().getDeptId());
         markertPlan.setCreateBy(currentUser.getUser().getUserId()+"");

BIN
yijia-market/target/classes/com/yijia/markert/controller/MarkertPlanController.class


+ 1 - 1
yijia-market/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Fri Sep 24 09:53:30 CST 2021
+#Thu Sep 22 11:14:53 CST 2022
 version=1.0.1
 groupId=com.yijia
 artifactId=yijia-market

BIN
yijia-market/target/yijia-market-1.0.1.jar


+ 1 - 1
yijia-quartz/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Fri Sep 24 09:53:23 CST 2021
+#Thu Sep 22 11:14:49 CST 2022
 version=1.0.1
 groupId=com.yijia
 artifactId=yijia-quartz

BIN
yijia-quartz/target/yijia-quartz-1.0.1.jar


+ 42 - 3
yijia-station/pom.xml

@@ -25,6 +25,44 @@
             <artifactId>httpclient</artifactId>
             <version>4.5.5</version>
         </dependency>
+        <dependency>
+            <groupId>org.saobei</groupId>
+            <artifactId>saobeiopen</artifactId>
+            <version>1.0</version>
+        </dependency>
+
+        <!-- https://mvnrepository.com/artifact/com.huifu.adapay.core/adapay-core-sdk -->
+        <dependency>
+            <groupId>com.huifu.adapay.core</groupId>
+            <artifactId>adapay-core-sdk</artifactId>
+            <version>1.2.10</version>
+        </dependency>
+
+        <!-- https://mvnrepository.com/artifact/com.huifu.adapay/adapay-java-sdk -->
+        <dependency>
+            <groupId>com.huifu.adapay</groupId>
+            <artifactId>adapay-java-sdk</artifactId>
+            <version>1.2.10</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.huifu</groupId>
+            <artifactId>dg-demo-3.0.1-sources</artifactId>
+            <version>3.0.1</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.huifu</groupId>
+            <artifactId>dg-java-sdk-3.0.1</artifactId>
+            <version>3.0.1</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.huifu</groupId>
+            <artifactId>dg-java-sdk-3.0.1-sources</artifactId>
+            <version>3.0.1</version>
+        </dependency>
+
         <!-- 通用工具-->
         <dependency>
             <groupId>com.yijia</groupId>
@@ -35,13 +73,14 @@
             <groupId>com.yijia</groupId>
             <artifactId>yijia-quartz</artifactId>
         </dependency>
+
         <dependency>
-            <groupId>org.apache.httpcomponents</groupId>
-            <artifactId>httpclient</artifactId>
+            <groupId>com.yijia</groupId>
+            <artifactId>yijia-system</artifactId>
         </dependency>
         <dependency>
             <groupId>com.yijia</groupId>
-            <artifactId>yijia-system</artifactId>
+            <artifactId>yijia-integral</artifactId>
         </dependency>
     </dependencies>
 

+ 302 - 128
yijia-station/src/main/java/com/yijia/station/controller/PayOrderController.java

@@ -1,51 +1,38 @@
 package com.yijia.station.controller;
 
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.math.BigDecimal;
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.*;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
-import com.alibaba.fastjson.parser.Feature;
+import com.yijia.common.annotation.Log;
 import com.yijia.common.config.YiJiaConfig;
+import com.yijia.common.core.controller.BaseController;
+import com.yijia.common.core.domain.AjaxResult;
 import com.yijia.common.core.domain.entity.SysDept;
 import com.yijia.common.core.domain.model.LoginUser;
+import com.yijia.common.core.page.TableDataInfo;
+import com.yijia.common.enums.BusinessType;
 import com.yijia.common.exception.CustomException;
 import com.yijia.common.utils.SecurityUtils;
+import com.yijia.common.utils.poi.ExcelUtil;
+import com.yijia.station.domain.PayOrder;
 import com.yijia.station.domain.StationBalanceChange;
+import com.yijia.station.service.IPayOrderService;
 import com.yijia.station.service.IStationBalanceChangeService;
 import com.yijia.station.service.IStationDeviceManageService;
 import com.yijia.station.utils.FeiEPrinterUtil;
-import com.yijia.system.domain.SysRespon;
 import com.yijia.system.service.ISysDeptService;
-import com.yijia.system.service.ISysUserService;
 import org.apache.poi.ss.usermodel.*;
 import org.apache.poi.xssf.streaming.SXSSFWorkbook;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.yijia.common.annotation.Log;
-import com.yijia.common.core.controller.BaseController;
-import com.yijia.common.core.domain.AjaxResult;
-import com.yijia.common.enums.BusinessType;
-import com.yijia.station.domain.PayOrder;
-import com.yijia.station.service.IPayOrderService;
-import com.yijia.common.utils.poi.ExcelUtil;
-import com.yijia.common.core.page.TableDataInfo;
+import org.springframework.web.bind.annotation.*;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.math.BigDecimal;
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 /**
  * 订单支付Controller
@@ -69,6 +56,20 @@ public class PayOrderController extends BaseController
     @Autowired
     private IStationBalanceChangeService stationBalanceChangeService;
 
+
+    public static final String PAY_VER = "110";//版本号
+    public static final String KEY = "";//机构秘钥
+    public static final String ACCESS_TOKEN = "23570b46a955484d92038f6a18d2b9d6";//支付秘钥
+    public static final String INST_NO = "";//机构号
+    public static final String MERCHANT_NO = "";//商户号
+    public static final String TERMINAL_ID = "";//终端号
+
+
+
+
+
+
+
     /**
      * 查询订单支付列表
      */
@@ -81,10 +82,27 @@ public class PayOrderController extends BaseController
             payOrder.setStationId(null);
         }
         startPage();
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         List<PayOrder> payOrderList = payOrderService.selectPayOrderList(payOrder);
         return getDataTable(payOrderList);
     }
+
+
+    /**
+     * 查询订单支付列表
+     */
+    @GetMapping("/allList")
+    public TableDataInfo allList(PayOrder payOrder)
+    {
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
+        }
+        startPage();
+        List<PayOrder> payOrderList = payOrderService.selectALlPayOrderList(payOrder);
+        return getDataTable(payOrderList);
+    }
     /**
      * 关联用户查询订单支付列表
      */
@@ -97,7 +115,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationId(null);
         }
         startPage();
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         List<PayOrder> payOrderList = payOrderService.selectUserPayOrderList(payOrder);
         return getDataTable(payOrderList);
     }
@@ -112,7 +130,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationId(null);
         }
         startPage();
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         List<PayOrder> payOrderList = payOrderService.selectPayOrderList(payOrder);
         return getDataTable(payOrderList);
     }
@@ -128,7 +146,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationId(null);
         }
         payOrder.setOrderType("1");
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         List<PayOrder> payOrderList = payOrderService.selectPayOrderList(payOrder);
         return getTable(payOrderList);
     }
@@ -146,7 +164,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationIdList(list);
             payOrder.setStationId(null);
         }
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         payOrder.setOrderType("1");
         PayOrder order = payOrderService.selectDaySources(payOrder);
         return AjaxResult.success(order);
@@ -166,7 +184,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationIdList(list);
             payOrder.setStationId(null);
         }
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         payOrder.setOrderType("1");
         PayOrder order = payOrderService.selectDaySources(payOrder);
         return AjaxResult.success(order);
@@ -184,7 +202,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationIdList(list);
             payOrder.setStationId(null);
         }
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         payOrder.setOrderType("1");
         PayOrder order = payOrderService.selectAllDaySources(payOrder);
         return AjaxResult.success(order);
@@ -202,7 +220,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationIdList(list);
             payOrder.setStationId(null);
         }
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         payOrder.setOrderType("1");
         PayOrder order = payOrderService.selectDaySources(payOrder);
         return AjaxResult.success(order);
@@ -334,7 +352,7 @@ public class PayOrderController extends BaseController
         }
         //默认当前登陆人的ID 5冯总油站
         startPage();
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         payOrder.setOrderType("1");
         List<PayOrder>  orderList = payOrderService.selectDayReport(payOrder);
         return getDataTable(orderList);
@@ -353,7 +371,7 @@ public class PayOrderController extends BaseController
         }
         //默认当前登陆人的ID 5冯总油站
         startPage();
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         payOrder.setOrderType("1");
         List<PayOrder>  orderList = payOrderService.selectAllDayReport(payOrder);
         return getDataTable(orderList);
@@ -372,7 +390,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationIdList(list);
             payOrder.setStationId(null);
         }
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         payOrder.setOrderType("1");
        List<PayOrder>  orderList = payOrderService.selectDayReport(payOrder);
         return getTable(orderList);
@@ -390,7 +408,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationIdList(list);
             payOrder.setStationId(null);
         }
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         payOrder.setOrderType("1");
         List<PayOrder> payOrderList = payOrderService.selectPayOrderExport(payOrder);
         ExcelUtil<PayOrder> util = new ExcelUtil<PayOrder>(PayOrder.class);
@@ -416,13 +434,16 @@ public class PayOrderController extends BaseController
         int i=0;
         PayOrder payOrder=new PayOrder();
         PayOrder payOrder1=payOrderService.selectPayOrderById(orderId);
+        if(payOrder1.getStatus().equals("3")){
+            return AjaxResult.error("已经被线上退款,不能重复退款");
+        }
         if(payOrder1.getStatus().equals("2")){
             return AjaxResult.error("已经被退款,不能重复退款");
         }
         LoginUser currentUser = SecurityUtils.getLoginUser();
 
         StationBalanceChange stationBalanceChange=new StationBalanceChange();
-        stationBalanceChange.setAmt(payOrder1.getAmt());
+        stationBalanceChange.setAmt(payOrder1.getSellAmt());
         stationBalanceChange.setStationId(payOrder1.getStationId());
         stationBalanceChange.setType("+");
         stationBalanceChange.setCreateBy(currentUser.getUser().getUserId()+"");
@@ -431,7 +452,7 @@ public class PayOrderController extends BaseController
         SysDept dept1=deptService.selectDeptById(deptId);
         SysDept dept=new SysDept();
         Float Balance1= Float.parseFloat(dept1.getBalance().toString());
-        Float value=Float.parseFloat(payOrder1.getAmt().toString());
+        Float value=Float.parseFloat(payOrder1.getSellAmt().toString());
         stationBalanceChange.setNowAmt(dept1.getBalance());
         dept.setDeptId(deptId);
         dept.setBalance(BigDecimal.valueOf(Balance1+value));
@@ -439,11 +460,12 @@ public class PayOrderController extends BaseController
         if(i!=0) {
             payOrder.setOrderId(orderId);
             payOrder.setStatus("2");//设置为已退款
+            payOrder.setRefundDate(new Date());
+            payOrder.setRefundUser(currentUser.getUser().getUserId());
             stationBalanceChangeService.insertStationBalanceChange(stationBalanceChange);
             i = payOrderService.updatePayOrder(payOrder);
 
         }
-
         if(i==0){
             return AjaxResult.error();
         }
@@ -452,96 +474,228 @@ public class PayOrderController extends BaseController
 
 
     /**
-     * 订单退款
+     * 线上订单退款
      */
+
     @PostMapping(value = "/sxfRefund")
     public AjaxResult sxfRefund(@RequestBody PayOrder payOrder)
     {
-
+        if(!"1".equals(payOrder.getStatus())){
+            return AjaxResult.error("当前订单不能进行退款");
+        }
         try {
-            sendSxfRefund(payOrder);
+          payOrderService.sxfRefund(payOrder);
         } catch (Exception e) {
-            e.printStackTrace();
+            return AjaxResult.error(e.getMessage());
         }
         return AjaxResult.success(1);
     }
 
-    public SysRespon sendSxfRefund(PayOrder payOrder) throws Exception {
-
-        SysRespon respon=new SysRespon();
-        SysDept dept=deptService.selectDeptById(payOrder.getStationId());
-        Random random=new Random();
-        String result1 = "";
-        for (int i = 0; i < 6; i++) {
-            result1 += random.nextInt(10);
-        }
-        String ordNo = System.nanoTime() + result1;
-        JSONObject reqData = new JSONObject();
-        reqData.put("mno",dept.getMno() );
-        reqData.put("ordNo",ordNo );
-        reqData.put("origOrderNo",payOrder.getOrderNo() );
-        reqData.put("amt",payOrder.getAmt() );
-        reqData.put("origUuid","");
-        reqData.put("origSxfUuid","" );
-        String req= SXFPaySign.getSXFPay(reqData);
-        ///logger.debug("参数信息:"+req);
-        System.out.println("req:" + req);
-        //此处不要改变reqData里面值的顺序用LinkedHashMap
-        HashMap reqMap = JSON.parseObject(req, LinkedHashMap.class, Feature.OrderedField);
-        //组装加密串
-        String signContent = RSASignature.getOrderContent(reqMap);
-        System.out.println("拼接后的参数:" + signContent);
-        //logger.debug("拼接后的参数:"+signContent);
-        //sign
-        String sign = RSASignature.encryptBASE64(RSASignature.sign(signContent, SXFPaySign.privateKey));
-        System.out.println("============签名:" + sign);
-        reqMap.put("sign", sign);
-        String reqStr = JSON.toJSONString(reqMap);
-        System.out.println("请求参数:" + reqMap);
-        System.out.println("请求参数:" + reqStr);
-        //调用第三方接口地址
-        String url = "https://openapi.suixingpay.com/merchant/order/refund";//生产地址
-        String resultJson = HttpUtils.connectPostUrl(url, reqStr);
-        System.out.println("返回信息:" + resultJson);
-        //不要对reqData排序 所以用LinkedHashMap
-        HashMap<String, Object> result = JSON.parseObject(resultJson, LinkedHashMap.class, Feature.OrderedField);
-        if ("0000".equals(result.get("code"))) {
-            //验签
-            String signResult = result.get("sign").toString();
-            result.remove("sign");
-            String resultStr = RSASignature.getOrderContent(result);
-            System.out.println("resultStr: " + resultStr);
-            //sign
-            String resultSign = RSASignature.encryptBASE64(RSASignature.sign(signContent, SXFPaySign.privateKey));
-            System.out.println("resultSign: " + resultSign);
-            //组装加密串
-            if (RSASignature.doCheck(resultStr, signResult, SXFPaySign.sxfPublic)) {
-                System.out.println("===================验签成功==============");
-                //
-                if(result.containsKey("respData")){
-                    HashMap<String, Object> result2 = JSON.parseObject(result.get("respData")+"", LinkedHashMap.class, Feature.OrderedField);
-                    if("0000".equals(result2.get("bizCode"))){
-                        respon.setResponCode("0000");
-                        System.out.println(result2.get("retUrl"));
-                        String url1=result2.get("retUrl")+"";
-                        respon.setResponMessage(result2.get("retUrl")+"");
-                        return respon;
-                    }else {
-                        respon.setResponCode(result2.get("bizCode") + "");
-                        respon.setResponMessage(result2.get("bizMsg") + "");
-                    }
-                    //判断 bizCode bizCode =="0000" 则业务成功
-                }else {
-                    respon.setResponCode("0004");
-                    respon.setResponMessage(result.get("msg") + "");
+    /**
+     * 不需要审核直接进行退款
+     */
+    @PostMapping(value = "/directRefund")
+    public AjaxResult directRefund(@RequestBody PayOrder payOrder)
+    {
+        if(!"1".equals(payOrder.getStatus())){
+            return AjaxResult.error("当前订单不能进行退款");
+        }
+        int i=0;
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        payOrder.setExaminUser(currentUser.getUser().getUserId());
+        payOrder.setExaminDate( new Date());
+        payOrder.setExaminStatus("2");
+        payOrder.setRefundUser(currentUser.getUser().getUserId());
+        payOrder.setRefundDate( new Date());
+        try {
+            payOrderService.sxfRefund(payOrder);
+            i=payOrderService.updatePayOrder(payOrder);
+        } catch (Exception e) {
+            return AjaxResult.error(e.getMessage());
+        }
+        return AjaxResult.success(i);
+    }
+
+
+    /**
+     * 根据上级集团的信息判断当前的用户是否进行审核
+     *
+     */
+    @PostMapping(value = "/applyExaminRefund")
+    public AjaxResult applyExaminRefund(@RequestBody PayOrder payOrder)
+    {
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+         SysDept dept= currentUser.getUser().getDept();
+        if(!"1".equals(payOrder.getStatus())){
+            return AjaxResult.error("当前订单不能进行退款");
+        }
+        if("dzk".equals(payOrder.getPayType())){
+            return AjaxResult.error("电子卡的订单不能进行退款");
+        }
+        if(dept.getParentId()==100||dept.getParentId()==0||dept.getParentId()==3){
+            //集团的账号没有申请退款的权利
+              return   AjaxResult.error("集团账号没有申请退款的权限");
+        }else{
+            SysDept dept1=deptService.selectDeptById(dept.getParentId());
+            //当前不需要进行审批时
+            if("0".equals(dept1.getRefundExaminStatus())){
+
+                if(!"1".equals(payOrder.getStatus())){
+                    return AjaxResult.error("当前订单不能进行退款");
                 }
-            }else {
-                respon.setResponCode("0002");
-                respon.setResponMessage("RSA验证失败");
+                int i=0;
+                //payOrder.setExaminUser(currentUser.getUser().getUserId());
+                //payOrder.setExaminDate( new Date());
+                payOrder.setExaminStatus("1");
+                payOrder.setRefundUser(currentUser.getUser().getUserId());
+                payOrder.setRefundDate( new Date());
+                try {
+                    //payOrderService.sxfRefund(payOrder);
+                    i=payOrderService.updatePayOrder(payOrder);
+                } catch (Exception e) {
+                    return AjaxResult.error(e.getMessage());
+                }
+                return AjaxResult.success(i);
+
             }
+            //当前进行需要进行审批时,进行申请
+            else {
+                if(!"1".equals(payOrder.getStatus())){
+                    return AjaxResult.error("当前订单不能进行退款");
+                }
+                int i=0;
+                payOrder.setRefundUser(currentUser.getUser().getUserId());
+                payOrder.setRefundDate( new Date());
+                payOrder.setExaminStatus("1");
+                i=payOrderService.updatePayOrder(payOrder);
+                return AjaxResult.success(i);
+            }
+        }
+    }
+    /**
+     * 订单申请退款,重新申请退款
+     */
+    /*@PostMapping(value = "/applyRefund")
+    public AjaxResult applyRefund(@RequestBody PayOrder payOrder)
+    {
+        if(!"1".equals(payOrder.getStatus())){
+            return AjaxResult.error("当前订单不能进行退款");
+        }
+        if(!("0".equals(payOrder.getExaminStatus())||payOrder.getExaminStatus()==null||"3".equals(payOrder.getExaminStatus()))){
+            return AjaxResult.error("当前订单不能进行退款");
+        }
+        int i=0;
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        payOrder.setRefundUser(currentUser.getUser().getUserId());
+        payOrder.setRefundDate( new Date());
+        payOrder.setExaminStatus("1");
+        i=payOrderService.updatePayOrder(payOrder);
+        return AjaxResult.success(i);
+    }*/
+
+    /**
+     * 重新申请退款
+     */
+    /*@PostMapping(value = "/reapplyRefund")
+    public AjaxResult reapplyRefund(@RequestBody PayOrder payOrder)
+    {
+        if(!"1".equals(payOrder.getStatus())){
+            return AjaxResult.error("当前订单不能进行退款");
+        }
+        if(!("3".equals(payOrder.getExaminStatus()))){
+            return AjaxResult.error("当前订单不能进行退款");
+        }
+        int i=0;
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        payOrder.setRefundUser(currentUser.getUser().getUserId());
+        payOrder.setRefundDate( new Date());
+        payOrder.setExaminStatus("1");
+        i=payOrderService.updatePayOrder(payOrder);
+        return AjaxResult.success(i);
+    }*/
+
+    /**
+     * 撤回申请
+     */
+    @PostMapping(value = "/recallApplyRefund")
+    public AjaxResult recallApplyRefund(@RequestBody PayOrder payOrder)
+    {
+        if(!"1".equals(payOrder.getStatus())){
+            return AjaxResult.error("当前订单不能撤回申请");
+        }
+        int i=0;
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        payOrder.setRefundUser(currentUser.getUser().getUserId());
+        payOrder.setRefundDate( new Date());
+        payOrder.setExaminStatus("0");
+        i=payOrderService.updatePayOrder(payOrder);
+        return AjaxResult.success(i);
+    }
+    /**
+     * 审核通过
+     */
+    @PostMapping(value = "/examinRefundSuccess")
+    public AjaxResult examinRefundSuccess(@RequestBody PayOrder payOrder)
+    {
+
+        if(!"1".equals(payOrder.getStatus())){
+            return AjaxResult.error("当前订单不能进行退款");
+        }
+        if(!("1".equals(payOrder.getExaminStatus())||"4".equals(payOrder.getExaminStatus()))){
+            return AjaxResult.error("当前订单不能进行退款");
+        }
+        int i=0;
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+       /* if("0".equals(currentUser.getUser().getDept().getRefundExaminStatus())){
+            return AjaxResult.error("当前集团未设置审核权限");
+        }*/
+        payOrder.setExaminUser(currentUser.getUser().getUserId());
+        payOrder.setExaminDate( new Date());
+        payOrder.setExaminStatus("2");
+
+        try {
+            payOrderService.sxfRefund(payOrder);
+            payOrder.setRefundSuccessDate(new Date());
+            payOrder.setStatus(null);
+            i=payOrderService.updatePayOrder(payOrder);
+        } catch (Exception e) {
+            //设置为退款失败的状态
+            payOrder.setExaminStatus("4");
+            payOrderService.updatePayOrder(payOrder);
+            return AjaxResult.error(e.getMessage());
         }
-        return respon;
+        return AjaxResult.success(i);
     }
+
+    /**
+     * 审核驳回
+     */
+    @PostMapping(value = "/examinRefundBack")
+    public AjaxResult examinRefundBack(@RequestBody PayOrder payOrder)
+    {
+        if(!"1".equals(payOrder.getStatus())){
+            return AjaxResult.error("当前订单不能进行退款");
+        }
+        if(!"1".equals(payOrder.getExaminStatus())){
+            return AjaxResult.error("当前订单不能进行退款");
+        }
+        int i=0;
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        if("0".equals(currentUser.getUser().getDept().getRefundExaminStatus())){
+            return AjaxResult.error("当前集团未设置审核权限");
+        }
+        payOrder.setExaminUser(currentUser.getUser().getUserId());
+        payOrder.setExaminDate( new Date());
+        payOrder.setExaminStatus("3");
+        try {
+            i=payOrderService.updatePayOrder(payOrder);
+        } catch (Exception e) {
+            return AjaxResult.error(e.getMessage());
+        }
+        return AjaxResult.success(i);
+    }
+
+
     /**
      * 恢复正常付款状态
      */
@@ -551,12 +705,15 @@ public class PayOrderController extends BaseController
         int i=0;
         PayOrder payOrder=new PayOrder();
         PayOrder payOrder1=payOrderService.selectPayOrderById(orderId);
+        if(payOrder1.getStatus().equals("3")){
+            return AjaxResult.error("已经被线上退款,不能回退");
+        }
         if(payOrder1.getStatus().equals("1")){
             return AjaxResult.error("已经支付成功,不能重新回退");
         }
         StationBalanceChange stationBalanceChange=new StationBalanceChange();
         LoginUser currentUser = SecurityUtils.getLoginUser();
-        stationBalanceChange.setAmt(payOrder1.getAmt());
+        stationBalanceChange.setAmt(payOrder1.getSellAmt());
         stationBalanceChange.setStationId(payOrder1.getStationId());
         stationBalanceChange.setType("-");
         stationBalanceChange.setCreateBy(currentUser.getUser().getUserId()+"");
@@ -564,7 +721,7 @@ public class PayOrderController extends BaseController
         SysDept dept1=deptService.selectDeptById(deptId);
         SysDept dept=new SysDept();
         Float Balance1= Float.parseFloat(dept1.getBalance().toString());
-        Float value=Float.parseFloat(payOrder1.getAmt().toString());
+        Float value=Float.parseFloat(payOrder1.getSellAmt().toString());
         stationBalanceChange.setNowAmt(dept1.getBalance());
         dept.setDeptId(deptId);
         dept.setBalance(BigDecimal.valueOf(Balance1-value));
@@ -769,7 +926,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationId(null);
         }
         startPage();
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         List<PayOrder> payOrderList = payOrderService.LNGDeptList(payOrder);
         return getDataTable(payOrderList);
     }
@@ -785,7 +942,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationId(null);
         }
         startPage();
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         List<PayOrder> payOrderList = payOrderService.selectLNGPayOrderExport(payOrder);
         return getDataTable(payOrderList);
     }
@@ -799,7 +956,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationIdList(list);
             payOrder.setStationId(null);
         }
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         List<PayOrder> payOrderList = payOrderService.selectLNGPayOrderExport(payOrder);
         AjaxResult ss = exportExcel(payOrderList, "导出订单信息");
         return ss;
@@ -982,7 +1139,7 @@ public class PayOrderController extends BaseController
             payOrder.setStationIdList(list);
             payOrder.setStationId(null);
         }
-        payOrder.setStatus("1");
+        //payOrder.setStatus("1");
         List<PayOrder> payOrderList = payOrderService.LNGDeptList(payOrder);
         AjaxResult ss = exportDeptExcel(payOrderList, "导出订单信息");
         return ss;
@@ -1037,6 +1194,9 @@ public class PayOrderController extends BaseController
                     cell = row.createCell(10);
                     cell.setCellValue("手机号");
                     cell.setCellStyle(style);
+                    cell = row.createCell(11);
+                    cell.setCellValue("付款状态(1付款成功,2线下退款,3线上退款)");
+                    cell.setCellStyle(style);
                 }else {
                     row = sheet.createRow(i);
                     int j =i-1;
@@ -1089,6 +1249,17 @@ public class PayOrderController extends BaseController
                     cell = row.createCell(10);
                     cell.setCellValue(payOrderList.get(j).getMobilePhone());
                     cell.setCellStyle(style);
+                    cell = row.createCell(11);
+                    if(payOrderList.get(j).getStatus().equals("1")) {
+                        cell.setCellValue("支付成功");
+                    }else  if(payOrderList.get(j).getStatus().equals("2")){
+                        cell.setCellValue("线下退款");
+                    }else if(payOrderList.get(j).getStatus().equals("3")){
+                        cell.setCellValue("线上退款");
+                    }else{
+                        cell.setCellValue("支付失败");
+                    }
+                    cell.setCellStyle(style);
                 }
             }
             String filename = encodingFilename(sheetName);
@@ -1228,4 +1399,7 @@ public class PayOrderController extends BaseController
         }
         return toAjaxee(i);
     }
+
+
+
 }

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 753 - 190
yijia-station/src/main/java/com/yijia/station/controller/StationClassStructureController.java


+ 13 - 20
yijia-station/src/main/java/com/yijia/station/controller/StationSettlementPriceController.java

@@ -1,34 +1,26 @@
 package com.yijia.station.controller;
 
-import java.util.ArrayList;
-import java.util.List;
-
+import com.yijia.common.annotation.Log;
+import com.yijia.common.core.controller.BaseController;
+import com.yijia.common.core.domain.AjaxResult;
 import com.yijia.common.core.domain.entity.SysDept;
 import com.yijia.common.core.domain.model.LoginUser;
+import com.yijia.common.core.page.TableDataInfo;
+import com.yijia.common.enums.BusinessType;
 import com.yijia.common.utils.DateUtils;
 import com.yijia.common.utils.SecurityUtils;
+import com.yijia.common.utils.poi.ExcelUtil;
+import com.yijia.station.domain.StationSettlementPrice;
 import com.yijia.station.domain.StationSettlementPriceAdjust;
 import com.yijia.station.service.IStationSettlementPriceAdjustService;
+import com.yijia.station.service.IStationSettlementPriceService;
 import com.yijia.system.service.ISysDeptService;
-import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.yijia.common.annotation.Log;
-import com.yijia.common.core.controller.BaseController;
-import com.yijia.common.core.domain.AjaxResult;
-import com.yijia.common.enums.BusinessType;
-import com.yijia.station.domain.StationSettlementPrice;
-import com.yijia.station.service.IStationSettlementPriceService;
-import com.yijia.common.utils.poi.ExcelUtil;
-import com.yijia.common.core.page.TableDataInfo;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * 结算价格,司机价格Controller
@@ -136,6 +128,7 @@ public class StationSettlementPriceController extends BaseController
             stationSettlementPriceAdjust.setDriverPrice(stationSettlementPrice.getDriverPrice());
             stationSettlementPriceAdjust.setSettlementType(stationSettlementPrice.getSettlementType());
             stationSettlementPriceAdjust.setParentId(stationSettlementPrice.getId());
+            stationSettlementPriceAdjust.setDriverPriceType(stationSettlementPrice.getDriverPriceType());
            i= stationSettlementPriceAdjustService.insertStationSettlementPriceAdjust(stationSettlementPriceAdjust);
             stationSettlementPrice.setUpdateBy(currentUser.getUser().getUserId().toString());
             stationSettlementPrice.setUpdateTime(DateUtils.getNowDate());

+ 47 - 0
yijia-station/src/main/java/com/yijia/station/controller/SysAppUserInfoController.java

@@ -0,0 +1,47 @@
+package com.yijia.station.controller;
+
+import com.yijia.common.core.controller.BaseController;
+import com.yijia.common.core.domain.AjaxResult;
+import com.yijia.common.core.page.TableDataInfo;
+import com.yijia.system.domain.SysAppUserInfo;
+import com.yijia.system.service.ISysAppUserInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("/station/appUserInfo")
+public class SysAppUserInfoController extends BaseController {
+
+    @Autowired
+    private ISysAppUserInfoService sysAppUserInfoService;
+
+
+    /**
+     * 查询订单支付列表
+     */
+    @GetMapping("/list")
+    public TableDataInfo list(SysAppUserInfo sysAppUserInfo)
+    {
+
+        List<SysAppUserInfo>   sysAppUserInfoList = sysAppUserInfoService.selectSysAppUserInfoList(sysAppUserInfo);
+        return getDataTable(sysAppUserInfoList);
+    }
+    /**
+     * 关联用户查询订单支付列表
+     */
+    @GetMapping("/selectById")
+    public AjaxResult selectAppUserInfo(@PathVariable("orderId") Long orderId)
+    {
+
+        return AjaxResult.success(sysAppUserInfoService.selectSysAppUserInfoById(orderId));
+    }
+
+
+
+
+}

+ 187 - 7
yijia-station/src/main/java/com/yijia/station/domain/PayOrder.java

@@ -1,14 +1,14 @@
 package com.yijia.station.domain;
 
-import java.math.BigDecimal;
-import java.util.Date;
-import java.util.List;
-
 import com.fasterxml.jackson.annotation.JsonFormat;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
 import com.yijia.common.annotation.Excel;
 import com.yijia.common.core.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
 
 /**
  * 订单支付对象 pay_order
@@ -31,7 +31,7 @@ public class PayOrder extends BaseEntity
     private Long stationId;
     /** 油站名称 */
     private String stationName;
-
+    @Excel(name = "支付状态",readConverterExp="1=支付成功,2=线下退款,3=线上退款")
     /** 状态(0未支付,1,已支付) */
     private String status;
 
@@ -187,6 +187,29 @@ public class PayOrder extends BaseEntity
 
     private List<String> stationIdList;
 
+    /** 退款成功时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    //@Excel(name = "退款成功的时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+    private Date refundSuccessDate;
+
+    //根据标志确定当前是否是查询班结内退款的订单信息
+    private String refundSuccessStatus;
+
+    public String getRefundSuccessStatus() {
+        return refundSuccessStatus;
+    }
+
+    public void setRefundSuccessStatus(String refundSuccessStatus) {
+        this.refundSuccessStatus = refundSuccessStatus;
+    }
+
+    public Date getRefundSuccessDate() {
+        return refundSuccessDate;
+    }
+
+    public void setRefundSuccessDate(Date refundSuccessDate) {
+        this.refundSuccessDate = refundSuccessDate;
+    }
 
     public List<String> getStationIdList() {
         return stationIdList;
@@ -206,10 +229,167 @@ public class PayOrder extends BaseEntity
     private Integer zfbNum;
     //现金支付数量
     private Integer xjNum;
+    //电子卡支付数量
+    private Integer dzkNum;
 
 
     private Integer countNum;
 
+    private Integer num;
+
+    private Long printNum;
+
+
+    //退款人员id
+    private Long refundUser;
+    //退款人员id
+    private Long examinUser;
+
+    //审批状态
+    private String examinStatus;
+
+    /** 退款时间*/
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date refundDate;
+
+
+    /** 审核时间*/
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date examinDate;
+
+    /** 退款时间*/
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private String startDate;
+
+
+    /** 审核时间*/
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private String endDate;
+
+    //退款查询状态
+    private String refundSelectFalg;
+
+
+    private String userName;
+
+    //用于班结订单的展示信息
+    private BigDecimal refundAmt ;
+
+    //第三方支付类型,01是随行付,02云闪付
+    private String thirdPayment;
+
+
+    public String getThirdPayment() {
+        return thirdPayment;
+    }
+
+    public void setThirdPayment(String thirdPayment) {
+        this.thirdPayment = thirdPayment;
+    }
+
+    public BigDecimal getRefundAmt() {
+        return refundAmt;
+    }
+
+    public void setRefundAmt(BigDecimal refundAmt) {
+        this.refundAmt = refundAmt;
+    }
+
+    public String getUserName() {
+        return userName;
+    }
+
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+
+    public String getStartDate() {
+        return startDate;
+    }
+
+    public void setStartDate(String startDate) {
+        this.startDate = startDate;
+    }
+
+    public String getEndDate() {
+        return endDate;
+    }
+
+    public void setEndDate(String endDate) {
+        this.endDate = endDate;
+    }
+
+    public Long getPrintNum() {
+        return printNum;
+    }
+
+    public void setPrintNum(Long printNum) {
+        this.printNum = printNum;
+    }
+
+    public Integer getNum() {
+        return num;
+    }
+
+    public void setNum(Integer num) {
+        this.num = num;
+    }
+
+    public String getRefundSelectFalg() {
+        return refundSelectFalg;
+    }
+
+    public void setRefundSelectFalg(String refundSelectFalg) {
+        this.refundSelectFalg = refundSelectFalg;
+    }
+
+    public Integer getDzkNum() {
+        return dzkNum;
+    }
+
+    public void setDzkNum(Integer dzkNum) {
+        this.dzkNum = dzkNum;
+    }
+
+    public Long getExaminUser() {
+        return examinUser;
+    }
+
+    public void setExaminUser(Long examinUser) {
+        this.examinUser = examinUser;
+    }
+
+    public String getExaminStatus() {
+        return examinStatus;
+    }
+
+    public void setExaminStatus(String examinStatus) {
+        this.examinStatus = examinStatus;
+    }
+
+    public Date getExaminDate() {
+        return examinDate;
+    }
+
+    public void setExaminDate(Date examinDate) {
+        this.examinDate = examinDate;
+    }
+
+    public Long getRefundUser() {
+        return refundUser;
+    }
+
+    public void setRefundUser(Long refundUser) {
+        this.refundUser = refundUser;
+    }
+
+    public Date getRefundDate() {
+        return refundDate;
+    }
+
+    public void setRefundDate(Date refundDate) {
+        this.refundDate = refundDate;
+    }
 
     public String getOilPersonnelId() {
         return oilPersonnelId;

+ 38 - 4
yijia-station/src/main/java/com/yijia/station/domain/StationClassStructure.java

@@ -1,12 +1,13 @@
 package com.yijia.station.domain;
 
-import java.math.BigDecimal;
-import java.util.Date;
 import com.fasterxml.jackson.annotation.JsonFormat;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
 import com.yijia.common.annotation.Excel;
 import com.yijia.common.core.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.math.BigDecimal;
+import java.util.Date;
 
 /**
  * 班结管理对象 station_class_structure
@@ -220,6 +221,9 @@ public class StationClassStructure extends BaseEntity
     @Excel(name = "客户等级")
     private String customerGrade;
     private String oilPersonnelId;
+    /** 退款金额 */
+    @Excel(name = "退款金额")
+    private BigDecimal refundAmt;
 
 
     /**
@@ -233,6 +237,36 @@ public class StationClassStructure extends BaseEntity
     //现金支付数量
     private Integer xjNum;
 
+    //电子卡支付数量
+    private Integer dzkNum;
+
+
+    //支付状态,0支付成功,1支付失败
+    private String status;
+
+    public BigDecimal getRefundAmt() {
+        return refundAmt;
+    }
+
+    public void setRefundAmt(BigDecimal refundAmt) {
+        this.refundAmt = refundAmt;
+    }
+
+    public Integer getDzkNum() {
+        return dzkNum;
+    }
+
+    public void setDzkNum(Integer dzkNum) {
+        this.dzkNum = dzkNum;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
 
     public String getOilPersonnelId() {
         return oilPersonnelId;

+ 17 - 6
yijia-station/src/main/java/com/yijia/station/domain/StationClassesSummary.java

@@ -1,14 +1,14 @@
 package com.yijia.station.domain;
 
-import java.math.BigDecimal;
-import java.util.Date;
-import java.util.List;
-
 import com.fasterxml.jackson.annotation.JsonFormat;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
 import com.yijia.common.annotation.Excel;
 import com.yijia.common.core.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
 
 /**
  * 班结汇总对象 station_classes_summary
@@ -91,6 +91,17 @@ public class StationClassesSummary extends BaseEntity
     private String likeClassesNo;
     private String likeClassesMan;
 
+    private BigDecimal refundAmt;
+
+
+    public BigDecimal getRefundAmt() {
+        return refundAmt;
+    }
+
+    public void setRefundAmt(BigDecimal refundAmt) {
+        this.refundAmt = refundAmt;
+    }
+
     public String getLikeClassesNo() {
         return likeClassesNo;
     }

+ 11 - 0
yijia-station/src/main/java/com/yijia/station/domain/StationSettlementPrice.java

@@ -40,6 +40,17 @@ public class StationSettlementPrice extends BaseEntity
     private String balance;
     private Long deptId;
 
+    private String status;
+
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
     public String getDriverPriceType() {
         return driverPriceType;
     }

+ 14 - 3
yijia-station/src/main/java/com/yijia/station/domain/StationSettlementPriceAdjust.java

@@ -1,10 +1,9 @@
 package com.yijia.station.domain;
 
-import java.math.BigDecimal;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
 import com.yijia.common.annotation.Excel;
 import com.yijia.common.core.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
 
 /**
  * 结算价格,司机价格优惠调整对象 station_settlement_price_adjust
@@ -38,6 +37,18 @@ public class StationSettlementPriceAdjust extends BaseEntity
 
     private Long parentId;
 
+    /** 结算价格 */
+    @Excel(name = "司机类型")
+    private String driverPriceType;
+
+    public String getDriverPriceType() {
+        return driverPriceType;
+    }
+
+    public void setDriverPriceType(String driverPriceType) {
+        this.driverPriceType = driverPriceType;
+    }
+
     public String getStationName() {
         return stationName;
     }

+ 77 - 1
yijia-station/src/main/java/com/yijia/station/mapper/PayOrderMapper.java

@@ -1,8 +1,9 @@
 package com.yijia.station.mapper;
 
-import java.util.List;
 import com.yijia.station.domain.PayOrder;
 
+import java.util.List;
+
 /**
  * 订单支付Mapper接口
  *
@@ -27,6 +28,81 @@ public interface PayOrderMapper
      */
     public List<PayOrder> selectPayOrderList(PayOrder payOrder);
 
+
+    /**
+     * 查询订单支付列表
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> selectAllPayOrderList(PayOrder payOrder);
+
+    /**
+     * 按照支付方式查询的订单
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> listPayTypeOrder(PayOrder payOrder);
+
+
+    /**
+     * 查询员工的订单信息进行统计
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> selectPersonnelPayOrder(PayOrder payOrder);
+
+    /**
+     * 查询班结统计信息
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder selectSummyClassPayOrder(PayOrder payOrder);
+
+    /**
+     * 按照油品信息分类统计
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> listOilPayOrder(PayOrder payOrder);
+
+
+    /**
+     * 按照油品信息分类合计
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder listOilPayOrderSum(PayOrder payOrder);
+
+
+    /**
+     * 按照支付方式进行汇总
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder selectPersonnelPayStructureSum(PayOrder payOrder);
+    /**
+     * 按照人员信息,查询班结信息,汇总数据
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder listPersonnelPayOrderSum(PayOrder payOrder);
+
+    /**
+     * 按照人员信息,查询班结信息,分组
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> listPersonnelPayOrder(PayOrder payOrder);
+
     /**
      * 新增订单支付
      *

+ 86 - 1
yijia-station/src/main/java/com/yijia/station/service/IPayOrderService.java

@@ -1,8 +1,11 @@
 package com.yijia.station.service;
 
-import java.util.List;
+import com.yijia.common.core.domain.AjaxResult;
 import com.yijia.station.domain.PayOrder;
 
+import java.util.List;
+
+
 /**
  * 订单支付Service接口
  *
@@ -27,6 +30,86 @@ public interface IPayOrderService
      */
     public List<PayOrder> selectPayOrderList(PayOrder payOrder);
 
+
+    /**
+     * 查询订单支付列表
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> selectALlPayOrderList(PayOrder payOrder);
+
+
+    /**
+     * 查询员工的订单信息进行统计
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> selectPersonnelPayOrder(PayOrder payOrder);
+
+    /**
+     * 查询班结统计信息
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder selectSummyClassPayOrder(PayOrder payOrder);
+
+
+
+    /**
+     * 按照油品信息分类统计
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> listOilPayOrder(PayOrder payOrder);
+
+
+    /**
+     * 按照人员信息进行统计
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder listPersonnelPayOrderSum(PayOrder payOrder);
+
+    /**
+     * 按照油品信息分类合计
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder listOilPayOrderSum(PayOrder payOrder);
+
+
+    /**
+     * 按照支付方式进行汇总
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder selectPersonnelPayStructureSum(PayOrder payOrder);
+
+    /**
+     * 按照人员信息,查询班结信息,分组
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> listPersonnelPayOrder(PayOrder payOrder);
+
+
+
+    /**
+     * 按照支付方式查询的订单
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> listPayTypeOrder(PayOrder payOrder);
+
     /**
      * 新增订单支付
      *
@@ -195,4 +278,6 @@ public interface IPayOrderService
      * 关联用户查询订单支付列表
      */
     public List<PayOrder> selectUserPayOrderList(PayOrder payOrder);
+
+    public AjaxResult sxfRefund(PayOrder payOrder) throws  Exception;
 }

+ 451 - 4
yijia-station/src/main/java/com/yijia/station/service/impl/PayOrderServiceImpl.java

@@ -1,11 +1,46 @@
 package com.yijia.station.service.impl;
 
-import java.util.List;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import com.yijia.station.mapper.PayOrderMapper;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.parser.Feature;
+import com.huifu.bspay.sdk.opps.client.BasePayClient;
+import com.huifu.bspay.sdk.opps.core.BasePay;
+import com.huifu.bspay.sdk.opps.core.config.MerConfig;
+import com.huifu.bspay.sdk.opps.core.request.V2TradePaymentScanpayRefundRequest;
+import com.huifu.bspay.sdk.opps.core.utils.DateTools;
+import com.saobei.open.sdk.DefaultSaobeiApiClient;
+import com.saobei.open.sdk.model.requst.trade.SaobeiTradeRefundRequest;
+import com.saobei.open.sdk.model.response.trade.SaobeiTradeRefundResponse;
+import com.yijia.common.core.domain.AjaxResult;
+import com.yijia.common.core.domain.entity.SysDept;
+import com.yijia.customer.domain.CustomerGradeSetting;
+import com.yijia.customer.domain.CustomerManage;
+import com.yijia.customer.service.ICustomerGradeSettingService;
+import com.yijia.customer.service.ICustomerManageService;
+import com.yijia.integral.domain.CustomerPoints;
+import com.yijia.integral.domain.CustomerPointsRecord;
+import com.yijia.integral.service.ICustomerPointsRecordService;
+import com.yijia.integral.service.ICustomerPointsService;
+import com.yijia.station.controller.RSASignature;
+import com.yijia.station.controller.SXFPaySign;
 import com.yijia.station.domain.PayOrder;
+import com.yijia.station.mapper.PayOrderMapper;
 import com.yijia.station.service.IPayOrderService;
+import com.yijia.station.utils.HttpUtils;
+import com.yijia.system.domain.SysAppUserInfo;
+import com.yijia.system.domain.SysRespon;
+import com.yijia.system.mapper.SysAppUserInfoMapper;
+import com.yijia.system.service.ISysDeptService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.sql.SQLException;
+import java.text.DecimalFormat;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 /**
  * 订单支付Service业务层处理
@@ -16,6 +51,25 @@ import com.yijia.station.service.IPayOrderService;
 @Service
 public class PayOrderServiceImpl implements IPayOrderService
 {
+
+
+    @Autowired
+    private ISysDeptService deptService;
+
+    @Autowired
+    private ICustomerPointsRecordService customerPointsRecordService  ;
+
+    @Autowired
+    private ICustomerPointsService customerPointsService  ;
+
+    @Autowired
+    private ICustomerManageService customerManageService;
+
+    @Autowired
+    private ICustomerGradeSettingService customerGradeSettingService;
+
+    @Autowired
+    private SysAppUserInfoMapper sysAppUserInfoService;
     @Autowired
     private PayOrderMapper payOrderMapper;
 
@@ -44,6 +98,98 @@ public class PayOrderServiceImpl implements IPayOrderService
     }
 
     /**
+     * 查询订单支付列表
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付
+     */
+    @Override
+    public List<PayOrder> selectALlPayOrderList(PayOrder payOrder)
+    {
+        return payOrderMapper.selectAllPayOrderList(payOrder);
+    }
+
+    /**
+     * 查询员工的订单信息进行统计
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> selectPersonnelPayOrder(PayOrder payOrder){
+        return  payOrderMapper.selectPersonnelPayOrder(payOrder);
+    }
+
+    /**
+     * 查询班结统计信息
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder selectSummyClassPayOrder(PayOrder payOrder){
+        return  payOrderMapper.selectSummyClassPayOrder(payOrder);
+    }
+
+
+    /**
+     * 按照油品信息分类统计
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> listOilPayOrder(PayOrder payOrder){
+        return payOrderMapper.listOilPayOrder(payOrder);
+    }
+
+    /**
+     * 按照人员信息进行分类,合计结果
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder listPersonnelPayOrderSum(PayOrder payOrder){
+        return payOrderMapper.listPersonnelPayOrderSum(payOrder);
+    }
+
+    /**
+     * 按照油品信息分类合计
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder listOilPayOrderSum(PayOrder payOrder){
+        return  payOrderMapper.listOilPayOrderSum(payOrder);
+    }
+
+
+    /**
+     * 按照支付方式进行汇总
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public PayOrder selectPersonnelPayStructureSum(PayOrder payOrder){
+        return  payOrderMapper.selectPersonnelPayStructureSum(payOrder);
+    }
+    /**
+     * 按照人员信息进行分类
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> listPersonnelPayOrder(PayOrder payOrder){
+        return payOrderMapper.listPersonnelPayOrder(payOrder);
+    }
+
+    /**
+     * 按照支付方式查询的订单
+     *
+     * @param payOrder 订单支付
+     * @return 订单支付集合
+     */
+    public List<PayOrder> listPayTypeOrder(PayOrder payOrder){
+        return  payOrderMapper.listPayTypeOrder(payOrder);
+    }
+    /**
      * 新增订单支付
      *
      * @param payOrder 订单支付
@@ -279,4 +425,305 @@ public class PayOrderServiceImpl implements IPayOrderService
         return payOrderMapper.selectUserPayOrderList(payOrder);
     }
 
+
+
+
+
+    public SysRespon sendSxfRefund(PayOrder payOrder) throws Exception {
+
+        SysRespon respon=new SysRespon();
+        SysDept dept=deptService.selectDeptById(payOrder.getStationId());
+        Random random=new Random();
+        String result1 = "";
+        for (int i = 0; i < 6; i++) {
+            result1 += random.nextInt(10);
+        }
+        String ordNo = System.nanoTime() + result1;
+        JSONObject reqData = new JSONObject();
+        reqData.put("mno",dept.getMno() );
+        reqData.put("ordNo",ordNo );
+        reqData.put("origOrderNo",payOrder.getOrderNo() );
+        reqData.put("amt",payOrder.getAmt() );
+        String req= SXFPaySign.getSXFPay(reqData);
+        ///logger.debug("参数信息:"+req);
+        System.out.println("req:" + req);
+        //此处不要改变reqData里面值的顺序用LinkedHashMap
+        HashMap reqMap = JSON.parseObject(req, LinkedHashMap.class, Feature.OrderedField);
+        //组装加密串
+        String signContent = RSASignature.getOrderContent(reqMap);
+        System.out.println("拼接后的参数:" + signContent);
+        //logger.debug("拼接后的参数:"+signContent);
+        //sign
+        String sign = RSASignature.encryptBASE64(RSASignature.sign(signContent, SXFPaySign.privateKey));
+        System.out.println("============签名:" + sign);
+        reqMap.put("sign", sign);
+        String reqStr = JSON.toJSONString(reqMap);
+        System.out.println("请求参数:" + reqMap);
+        System.out.println("请求参数:" + reqStr);
+        //调用第三方接口地址
+        String url = "https://openapi.suixingpay.com/order/refund";//生产地址
+        String resultJson = HttpUtils.connectPostUrl(url, reqStr);
+        System.out.println("返回信息:" + resultJson);
+        //不要对reqData排序 所以用LinkedHashMap
+        HashMap<String, Object> result = JSON.parseObject(resultJson, LinkedHashMap.class, Feature.OrderedField);
+        if ("0000".equals(result.get("code"))) {
+            //验签
+            String signResult = result.get("sign").toString();
+            result.remove("sign");
+            String resultStr = RSASignature.getOrderContent(result);
+            System.out.println("resultStr: " + resultStr);
+            //sign
+            String resultSign = RSASignature.encryptBASE64(RSASignature.sign(signContent, SXFPaySign.privateKey));
+            System.out.println("resultSign: " + resultSign);
+            //组装加密串
+            if (RSASignature.doCheck(resultStr, signResult, SXFPaySign.sxfPublic)) {
+                System.out.println("===================验签成功==============");
+                //
+                if(result.containsKey("respData")){
+                    HashMap<String, Object> result2 = JSON.parseObject(result.get("respData")+"", LinkedHashMap.class, Feature.OrderedField);
+                    if("0000".equals(result2.get("bizCode"))){
+                        respon.setResponCode("0000");
+                        respon.setResponMessage(result2.get("bizMsg")+"");
+                        return respon;
+                    }else {
+                        respon.setResponCode(result2.get("bizCode") + "");
+                        respon.setResponMessage(result2.get("bizMsg") + "");
+                    }
+                    //判断 bizCode bizCode =="0000" 则业务成功
+                }else {
+                    respon.setResponCode("0004");
+                    respon.setResponMessage(result.get("msg") + "");
+                }
+            }else {
+                respon.setResponCode("0002");
+                respon.setResponMessage("RSA验证失败");
+            }
+        }else {
+            respon.setResponMessage(result.get("msg")+"");
+            respon.setResponCode(result.get("code")+"");
+        }
+        return respon;
+    }
+
+
+    private  SysRespon saoBeiRefund( String token,String mno,String termialId,String oldOrderNo,String amt) throws Exception  {
+        //创建client
+        DefaultSaobeiApiClient<SaobeiTradeRefundRequest, SaobeiTradeRefundResponse> client = new DefaultSaobeiApiClient<>(token);//令牌的token
+        //创建requst
+        SaobeiTradeRefundRequest requst = new SaobeiTradeRefundRequest();
+        Random random=new Random();
+        String result1 = "";
+        for (int i = 0; i < 6; i++) {
+            result1 += random.nextInt(10);
+        }
+        String ordNo = System.nanoTime() + result1;
+        requst.setPay_ver("110");//
+        requst.setPay_type("000");
+        requst.setService_id("030");
+        requst.setMerchant_no(mno);//商户号
+        requst.setTerminal_id(termialId);//终端号
+        requst.setTerminal_trace(ordNo);//退款时生成的终端流水号
+        requst.setTerminal_time(new SimpleDateFormat("yyyyMMddhhmmss").format(new Date()));//退款时间
+        requst.setOut_trade_no(oldOrderNo);//订单号
+        requst.setRefund_fee(amt);//退款金额,单位是分
+        //发送请求
+        System.out.println("请求报文:"+ JSON.toJSONString(requst));
+        SaobeiTradeRefundResponse response = client.execute(requst);
+        System.out.println("返回报文:"+JSON.toJSONString(response));
+
+        SysRespon sysRespon=new SysRespon();
+        HashMap<String, Object> result = JSON.parseObject(JSON.toJSONString(response), LinkedHashMap.class, Feature.OrderedField);
+        if("01".equals(result.get("return_code"))){
+            if("退款成功".equals(result.get("return_msg"))){
+                sysRespon.setResponCode("0000");
+                sysRespon.setResponMessage("退款成功");
+            }else{
+                sysRespon.setResponCode("0001");
+                sysRespon.setResponMessage(result.get("return_msg")+"");
+            }
+        }else {
+            sysRespon.setResponCode("0002");
+            sysRespon.setResponMessage("网络请求失败");
+
+        }
+        return  sysRespon;
+
+    }
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public AjaxResult sxfRefund( PayOrder payOrder1) throws  Exception
+    {
+        int i=0;
+           PayOrder payOrder=payOrderMapper.selectPayOrderById(payOrder1.getOrderId());
+             SysDept sysDept=deptService.selectDeptById(payOrder.getStationId());
+            CustomerPointsRecord customerPointsRecord=new CustomerPointsRecord();
+            customerPointsRecord.setOrderNo(payOrder.getOrderNo());
+            List<CustomerPointsRecord> customerPointsRecordList= customerPointsRecordService.selectCustomerPointsRecordList(customerPointsRecord);
+            if(customerPointsRecordList==null||customerPointsRecordList.size()>0){
+
+                CustomerPoints customerPoints=new CustomerPoints();
+                customerPoints.setUnionId(customerPointsRecordList.get(0).getUnionId());
+                //通过订单信息获取人员的积分信息
+                List<CustomerPoints> customerPointsList=customerPointsService.selectCustomerPointsList(customerPoints);
+                if(customerPointsList.size()>0){
+                    CustomerPoints customerPoints1=customerPointsList.get(0);
+                    customerPoints1.setPoints(customerPoints1.getPoints()-customerPointsRecordList.get(0).getIntegral());
+                    customerPoints1.setCreateTime(new Date());
+                   i= customerPointsService.updateCustomerPoints(customerPoints1);
+                   if(i==0){
+                       throw  new SQLException("积分更新失败");
+                   }
+                    customerPointsRecord=customerPointsRecordList.get(0);
+                    customerPointsRecord.setRecordType("-");
+                   i=  customerPointsRecordService.insertCustomerPointsRecord(customerPointsRecord);
+                    if(i==0){
+                        throw  new SQLException("积分记录更新失败");
+                    }
+                }
+
+            }
+            CustomerGradeSetting customerGradeSetting=new CustomerGradeSetting();
+            customerGradeSetting.setStationId(payOrder.getStationId());
+            customerGradeSetting.setOilName(payOrder.getOilName());
+            List<CustomerGradeSetting> customerGradeSettingList=customerGradeSettingService.selectCustomerGradeSettingList(customerGradeSetting);
+            if(customerGradeSettingList.size()>0){
+                SysAppUserInfo sysAppUserInfo=sysAppUserInfoService.selectSysAppUserInfoById(payOrder.getConsumerId());
+                CustomerManage customerManage=new CustomerManage();
+                customerManage.setUnionId(sysAppUserInfo.getUnionId());
+                customerManage.setStationId(payOrder.getStationId());
+                customerManage.setOilName(payOrder.getOilName());
+                List<CustomerManage> customerManageList=customerManageService.selectCustomerManageList(customerManage);
+                if(customerManageList.size()>0){
+                    CustomerManage customerManage1=new CustomerManage();
+                    customerManage1.setId(customerManageList.get(0).getId());
+                    customerManage1.setLiters(customerManageList.get(0).getLiters().subtract(payOrder.getOrderLiters()));
+                    customerManage1.setAmt(customerManageList.get(0).getAmt().subtract(payOrder.getAmt()));
+                   i=  customerManageService.updateCustomerManage(customerManage1);
+                    if(i==0){
+                        throw  new SQLException("客户消费信息");
+                    }
+                }
+            }
+            payOrder.setStatus("3");
+            i= payOrderMapper.updatePayOrder(payOrder);
+            if(i==0){
+             throw  new SQLException("订单更新失败");
+            }
+            SysRespon respon= new SysRespon();
+            if("02".equals(payOrder.getThirdPayment())){
+                String  amt= payOrder.getAmt().multiply(BigDecimal.valueOf(100))+"";
+                amt=amt.substring(0,amt.length()-3);
+                respon= saoBeiRefund(sysDept.getYunKey(),sysDept.getMerchantNo(),sysDept.getTerminalId(),payOrder.getOrderNo(),amt);
+                if (!"0000".equals(respon.getResponCode())) {
+                    throw new SQLException(respon.getResponMessage());
+                }
+            }else if("01".equals(payOrder.getThirdPayment())) {
+                respon= sendSxfRefund(payOrder);
+                if (!"0000".equals(respon.getResponCode())) {
+                    throw new SQLException(respon.getResponMessage());
+                }
+            }else{
+                respon= HuiFuRefund(sysDept.getMno(),payOrder.getOrderNo(),payOrder.getAmt()+"",payOrder.getPayDate());
+                if (!"0000".equals(respon.getResponCode())) {
+                    throw new SQLException(respon.getResponMessage());
+                }
+            }
+        return AjaxResult.success(1);
+    }
+
+
+
+    private  SysRespon HuiFuRefund( String mno,String oldOrderNo,String amt, Date  payDate) throws Exception  {
+
+        SysRespon sysRespon=new SysRespon();
+        BasePay.debug = true;
+
+        BasePay.prodMode = BasePay.MODE_PROD;
+
+        DecimalFormat df = new DecimalFormat("0.00");
+        df.setRoundingMode(RoundingMode.HALF_UP);
+        Double trantAmt=Double.valueOf(amt);
+
+        SimpleDateFormat formatter = new SimpleDateFormat("YYYYMMdd");
+        String dateString = formatter.format(payDate);
+        /**
+         * 单商户模式
+         */
+        MerConfig merConfig = new MerConfig();
+        merConfig.setProcutId("XLSISV");
+        merConfig.setSysId("6666000121616158");
+        merConfig.setRsaPrivateKey("MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDf2oY2LCw9mMPV9R5fiE+2oYuJ2Nsa2ZsvpYPyqX0j/0ACR4fz8UIChpZxhMdXla1sf0ntYkoYYoUKQkc0Z9MzOhECyGf6Sk7IG7EoPkQehLbGojira9STuVvA89pjkkSd5aHmllhnK0rOqE8yJELiT1970Uv+b+9PoAUS283X7z9sh0lxhopPctRGN/3YpKJeea+bfdAzrHEl1cvVwxvy/rqW5HMAbBcAQmatq00sU+k5LaJ6+MEyFtarJmdBwSF2DgobwcSXnquHpknP1aj4Tn2UEt2fslbUCnQ2weikGZsJ+ipSFSFyVR29tlGUW7wpULjUiFoqjYPFTvcCHNYLAgMBAAECggEAE0cyf7/WH4fkdayibP/EPaoz5i8yz2EmKDhM4L0P9eWpkYivgKaqVKVal3Qj5rsRMGLV7wej8e2qH3QNxcmbOrIpfN/ddISpvDoGS7zxCN/NDdYyozCqIf64lClsCV8zYZXBF6ai/l+QFbQQ/fR5fhvv0S35KXRiW60gQruDQrFCvHQuTD0Jgu1S01hhvtw95zUdW8Oh7vlCfCrVhZTjfdgujs7bxvCakLFuzjM2OXvmN0x8UylsbDO/b1WsK+XpmBLjva8syKnvpI4VPUX/DcLlRxGFe+LBRBAkK3rr9DPTRsNSD8E96YEhGr2CmbxKEh7JRlWD0FmVeSQeHGaYwQKBgQDy1b9qV830ZmavVftXCqmx3Omo6Tzwlt9Q9Jf5Zact6IGWjE+/KS6I+4dHhYZlnf0iM19pwSy1eYACr615ayqeaD6fE8j+n7UhXjmClZ1IKLT5zDr/ENb0KZzaVkJbQWAPyqbli2CqRayrA9ZsLpe6G64jmCrRHYKI/n5B2CXoSQKBgQDr/Va2/C2HlDC2x3Nk+rQlglU3dieT1loILbwFlTF4tlHCqIsmmvzll1Po7OfsmsLsnYqQjf4jxxiRcEOcTeAbAOgZ57ni0sbfUlmlgqVnWnzkZQR5+ykq1qI0p8BZWsB2Q+y47zIfPKrerw0xc5rU8uz/Uo4PxSHwT7lWQG4TswKBgGoc2T5BDDCGJszrh58re6fLXxd+hDCl3QPlPhuvPfSjqyz8N0TTXBBjyWOJh4cUGK8/P6xYy46pfzStS+LI36DE8MhWvvf1FhN0tzDG7CnCEAMwKX+X/jZHkNEf7HMwCCgeZ/vage0l8SPx01sGqSqcOeY38k3a1VXDz6w6JaZxAoGAHUkqKrku2UVtqjEkQ+LM2l7LPn++N52BPMSYMcUrB4TwroyGADt5qPBXrG9B9N3b1MtUN843PK9ngB0DdvE/H3rEUvqr2dc4cNxiXaTR6/qRxzI2FQEzQaqzJH+w4iXd/o89YFHm0XOQ7OOiaoGjNEwVVzYihRh8trreEDMctfsCgYBDaTFdqYkrzwzOm22MLezzlVpeUNzeGA46ul1fHb/FrQqQSDcyUQd+9rbw1KCYkLdE3wXJgJJRTvVCqJd5zWSlSvtiAY+StNz2qdYxerYTa0qvyghUyJ9Vy1zOBZSpAxdrlI95+yQTJFQftmTWaw5GKZGy/AsVW+LdzRIC7QnSKw==");
+        merConfig.setRsaPublicKey("MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxF1Sryfp4U9usNCjd+/4zqq2awhApJla0dmQaEd06zKabuBdffLlohsqT8HcbOg7qO2788o6wkDfhwjABxzlLnMcTgayu6kC6EvpQSE2HgtPVAjJS1cfCO/l8QzBBYsZJFTmAswVVyYKzHiH00c9AIF8hqORd93KF9X3FzCuy1+1i+I0spUYcc31MkkhwN6Lj9IxlyjmgnltRLHJDJg0rShGuga+w0AvolkTRuJ0o6bk8ZvCETTiV6TGgw0rXlSVQio1+xbaqFKk5LgUqo+O4Kqre59hqpzYfXKd4UNjK7zVjmKHwySw7l0Zduh1q4c9JfCKlkRr5ApU23YY+E2FhwIDAQAB");
+        merConfig.setHuifuId(mno);
+        try {
+            BasePay.initWithMerConfig(merConfig);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        Random random=new Random();
+        String result1 = "";
+        for (int i = 0; i < 6; i++) {
+            result1 += random.nextInt(10);
+        }
+        String ordNo = System.nanoTime() + result1;
+
+
+        // 2.组装请求参数
+        V2TradePaymentScanpayRefundRequest request = new V2TradePaymentScanpayRefundRequest();
+        // 请求日期
+        request.setReqDate(DateTools.getCurrentDateYYYYMMDD());
+        // 请求流水号
+        request.setReqSeqId(ordNo);
+        // 商户号
+        request.setHuifuId(mno);
+        // 申请退款金额
+        request.setOrdAmt(df.format(trantAmt));
+        // 原交易请求日期
+        request.setOrgReqDate(dateString);
+
+        // 设置非必填字段
+        Map<String, Object> extendInfoMap = getExtendInfos(oldOrderNo);
+        request.setExtendInfo(extendInfoMap);
+
+        // 3. 发起API调用
+        Map<String, Object> response = BasePayClient.request(request,false);;
+        System.out.println("返回数据:" + JSONObject.toJSONString(response));
+
+
+        if("00000100".equals(response.get("resp_code"))||"00000000".equals(response.get("resp_code"))){
+            sysRespon.setResponCode("0000");
+            sysRespon.setResponMessage("退款成功");
+        }else {
+            sysRespon.setResponCode("0001");
+            sysRespon.setResponMessage(response.get("resp_desc")+"");
+        }
+        return  sysRespon;
+
+    }
+
+
+
+    /**
+     * 非必填字段
+     * @return
+     */
+    private static Map<String, Object> getExtendInfos(String  oldNo) {
+        // 设置非必填字段
+        Map<String, Object> extendInfoMap = new HashMap<>();
+        // 原交易请求流水号
+        extendInfoMap.put("org_req_seq_id", oldNo);
+        // 备注
+        extendInfoMap.put("remark", "12321312");
+        // 异步通知地址
+        extendInfoMap.put("notify_url", "");
+        // 是否垫资退款
+        extendInfoMap.put("loan_flag", "");
+        // 垫资承担者
+        extendInfoMap.put("loan_undertaker", "");
+        // 垫资账户类型
+        extendInfoMap.put("loan_acct_type", "");
+        return extendInfoMap;
+    }
+
+
 }

+ 22 - 0
yijia-station/src/main/java/com/yijia/station/utils/ConsumeType.java

@@ -0,0 +1,22 @@
+package com.yijia.station.utils;
+
+public class ConsumeType {
+    private String type;    //收银宝支付宝(主扫)SCAN_WEIXIN; 收银宝支付宝(主扫)SCAN_ALIPAY;收银宝小程序支付 WECHATPAY_MINIPROGRAM; 收银宝公众号支付:WECHAT_PUBLIC
+    private Long amount;
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
+    public Long getAmount() {
+        return amount;
+    }
+
+    public void setAmount(Long amount) {
+        this.amount = amount;
+    }
+}

+ 123 - 0
yijia-station/src/main/java/com/yijia/station/utils/HFparam.java

@@ -0,0 +1,123 @@
+package com.yijia.station.utils;
+
+import com.yijia.common.core.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+///汇付调用的参数信息
+public class HFparam extends BaseEntity {
+    private String req_date;                       //请求格式:yyyyMMdd                      必填
+    private String req_seq_id;                  //	请求流水号                    必填
+    private String huifu_id;                  //	商户号                    必填
+
+
+    /**
+     * T_JSAPI: 微信公众号
+     * T_MINIAPP: 微信小程序
+     * A_JSAPI: 支付宝JS
+     * A_NATIVE: 支付宝正扫
+     * U_NATIVE: 银联正扫
+     * U_JSAPI: 银联JS
+     * D_NATIVE: 数字人民币正扫
+     * **/
+    private String trade_type;                       //交易类型                      必填
+    private String trans_amt;                  //交易金额                    必填
+    private String goods_desc;                  //商品描述                    必填
+
+
+    private String notify_url;                       //回调地址
+
+    private String wx_data;                  //微信支付上传参数
+    private String alipay_data;                  //支付宝支付上传参数
+
+
+    public String getReq_date() {
+        return req_date;
+    }
+
+    public void setReq_date(String req_date) {
+        this.req_date = req_date;
+    }
+
+    public String getReq_seq_id() {
+        return req_seq_id;
+    }
+
+    public void setReq_seq_id(String req_seq_id) {
+        this.req_seq_id = req_seq_id;
+    }
+
+    public String getHuifu_id() {
+        return huifu_id;
+    }
+
+    public void setHuifu_id(String huifu_id) {
+        this.huifu_id = huifu_id;
+    }
+
+    public String getTrade_type() {
+        return trade_type;
+    }
+
+    public void setTrade_type(String trade_type) {
+        this.trade_type = trade_type;
+    }
+
+    public String getTrans_amt() {
+        return trans_amt;
+    }
+
+    public void setTrans_amt(String trans_amt) {
+        this.trans_amt = trans_amt;
+    }
+
+    public String getGoods_desc() {
+        return goods_desc;
+    }
+
+    public void setGoods_desc(String goods_desc) {
+        this.goods_desc = goods_desc;
+    }
+
+    public String getNotify_url() {
+        return notify_url;
+    }
+
+    public void setNotify_url(String notify_url) {
+        this.notify_url = notify_url;
+    }
+
+    public String getWx_data() {
+        return wx_data;
+    }
+
+    public void setWx_data(String sub_appid,String sub_openid) {
+        this.wx_data = "{\"sub_appid\":\""+sub_appid+"\",\"sub_openid\":\""+sub_openid+"\"}" ;
+    }
+
+    public String getAlipay_data() {
+        return alipay_data;
+    }
+
+    public void setAlipay_data(String alipay_data) {
+        this.alipay_data = alipay_data;
+    }
+
+    ///生成微信请求的json串
+
+    public String toJsonWx() {
+            return new ToStringBuilder(this,  ToStringStyle.JSON_STYLE)
+                    .append("req_date", getReq_date())
+                    .append("req_seq_id", getReq_seq_id())
+                    .append("huifu_id", getHuifu_id())
+                    .append("trade_type", getTrade_type())
+                    .append("trans_amt", getTrans_amt())
+                    .append("goods_desc", getGoods_desc())
+                    .append("notify_url", getNotify_url())
+                    .append("wx_data", getWx_data())
+                    .toString();
+
+    }
+
+
+}

+ 54 - 1
yijia-station/src/main/java/com/yijia/station/controller/HttpUtils.java → yijia-station/src/main/java/com/yijia/station/utils/HttpUtils.java

@@ -1,9 +1,12 @@
-package com.yijia.station.controller;
+package com.yijia.station.utils;
 
+import org.apache.commons.lang3.StringUtils;
 import org.apache.http.HttpEntity;
 import org.apache.http.HttpStatus;
+import org.apache.http.NameValuePair;
 import org.apache.http.client.ClientProtocolException;
 import org.apache.http.client.config.RequestConfig;
+import org.apache.http.client.entity.UrlEncodedFormEntity;
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.http.client.methods.HttpGet;
 import org.apache.http.client.methods.HttpPost;
@@ -12,15 +15,23 @@ import org.apache.http.conn.ssl.SSLContextBuilder;
 import org.apache.http.conn.ssl.TrustStrategy;
 import org.apache.http.entity.StringEntity;
 import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClientBuilder;
 import org.apache.http.impl.client.HttpClients;
+import org.apache.http.message.BasicNameValuePair;
 import org.apache.http.util.EntityUtils;
 
 import java.io.IOException;
+import java.nio.charset.StandardCharsets;
 import java.security.KeyManagementException;
 import java.security.KeyStoreException;
 import java.security.NoSuchAlgorithmException;
 import java.security.cert.CertificateException;
 import java.security.cert.X509Certificate;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.StringJoiner;
+import java.util.stream.Collectors;
 
 public class HttpUtils {
 	
@@ -141,4 +152,46 @@ public class HttpUtils {
 		}
 		return null;
 	}
+
+
+	public static String post(String url, Map<String, String> parameters) throws IOException {
+		 CloseableHttpClient client = httpClientBuilder().build();
+		HttpPost post = new HttpPost(url);
+		List<NameValuePair> pairList = parameters.entrySet().stream()
+				.map(entry -> new BasicNameValuePair(entry.getKey(), entry.getValue()))
+				.collect(Collectors.toList());
+		StringJoiner requestBody = new StringJoiner("&");
+		for (NameValuePair each : pairList) {
+			requestBody.add(StringUtils.join(each.getName(), "=", each.getValue()));
+		}
+		//log.info("Request url : [{}], parameters : [{}]", url, requestBody);
+		post.setEntity(new UrlEncodedFormEntity(pairList, StandardCharsets.UTF_8));
+		 CloseableHttpResponse execute = client.execute(post);
+		int statusCode = execute.getStatusLine().getStatusCode();
+		if (statusCode != HttpStatus.SC_OK) {
+			throw new IOException(
+					"Http request error, error message : [" + execute.getStatusLine().getReasonPhrase() + "]");
+		}
+		String result = Objects.isNull(execute.getEntity()) ? "" : EntityUtils.toString(execute.getEntity(),
+				StandardCharsets.UTF_8.toString());
+		//log.info("Response body : [{}]", result);
+		return result;
+	}
+
+	private static HttpClientBuilder httpClientBuilder() {
+		return HttpClients.custom()
+				.disableAutomaticRetries()
+				.setDefaultRequestConfig(defaultRequestConfig());
+	}
+
+	private static RequestConfig defaultRequestConfig() {
+		return RequestConfig.custom()
+				.setConnectTimeout(30_000)
+				.setSocketTimeout(60_000)
+				.setConnectionRequestTimeout(5_000)
+				.build();
+	}
+
+
+
 }

+ 88 - 0
yijia-station/src/main/java/com/yijia/station/utils/HuiFuUtils.java

@@ -0,0 +1,88 @@
+package com.yijia.station.utils;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+
+import java.security.KeyFactory;
+import java.security.PrivateKey;
+import java.security.PublicKey;
+import java.security.Signature;
+import java.security.spec.PKCS8EncodedKeySpec;
+import java.security.spec.X509EncodedKeySpec;
+import java.util.Base64;
+import java.util.TreeMap;
+
+public  class  HuiFuUtils {
+
+
+
+
+    /**
+     * 对json内的数据码进行排序,取消掉空字符串和空值
+     */
+    public static String  paraseJson(String inputDataJSON) {
+       return JSON.toJSONString(JSONObject.parseObject(inputDataJSON, TreeMap.class));
+    }
+
+
+
+
+
+
+    /**
+     * RSA私钥签名:签名方式SHA256WithRSA
+     * @param data 待签名字符串
+     * @param privateKeyBase64 私钥(Base64编码)
+     * @return 签名byte[]
+     * @throws Exception
+     */
+    public static String sign(String data, String privateKeyBase64) {
+        // Base64 --> Key
+        try {
+            byte[] bytes = Base64.getDecoder().decode(privateKeyBase64);
+            PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(bytes);
+            KeyFactory keyFactory;
+            keyFactory = KeyFactory.getInstance("RSA");
+            PrivateKey privateKey = keyFactory.generatePrivate(keySpec);
+            // Sign
+            Signature signature = Signature.getInstance("SHA256WithRSA");
+            signature.initSign(privateKey);
+            signature.update(data.getBytes("UTF-8"));
+            return Base64.getEncoder().encodeToString(signature.sign());
+        } catch (Exception e) {
+            return null;
+        }
+    }
+
+
+
+    /**
+     * 使用汇付RSA公钥验签
+     * @param data 待签名字符串
+     * @param publicKeyBase64 公钥(Base64编码)
+     * @return 验签结果
+     * @throws Exception
+     */
+    public static boolean verify(String data, String publicKeyBase64, String sign) {
+        // Base64 --> Key
+        try {
+            byte[] bytes = Base64.getDecoder().decode(publicKeyBase64);
+            X509EncodedKeySpec keySpec = new X509EncodedKeySpec(bytes);
+            KeyFactory keyFactory;
+            keyFactory = KeyFactory.getInstance("RSA");
+            PublicKey publicKey = keyFactory.generatePublic(keySpec);
+            // verify
+            Signature signature = Signature.getInstance("SHA256WithRSA");
+            signature.initVerify(publicKey);
+            signature.update(data.getBytes("UTF-8"));
+            return signature.verify(Base64.getDecoder().decode(sign));
+        } catch (Exception e) {
+            System.out.println("验签失败");
+            return false;
+        }
+
+    }
+
+
+
+}

+ 130 - 0
yijia-station/src/main/java/com/yijia/station/utils/Request.java

@@ -0,0 +1,130 @@
+package com.yijia.station.utils;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import org.apache.commons.lang3.StringUtils;
+
+import java.io.Serializable;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Objects;
+import java.util.TreeMap;
+
+/**
+ * @author zzq
+ * @version 1.0.0
+ * @Title {@link}
+ * @Description
+ * @date 2020/5/26
+ */
+
+public class Request<T> implements Serializable {
+
+    private static final long serialVersionUID = -1128445146065327824L;
+
+    private String appId;
+    private String version;
+    private String charset;
+    private String signType;
+    private String sign;
+    private String timestamp;
+    private String service;
+    private T bizContent;
+
+    public String getAppId() {
+        return appId;
+    }
+
+    public void setAppId(String appId) {
+        this.appId = appId;
+    }
+
+    public String getVersion() {
+        return version;
+    }
+
+    public void setVersion(String version) {
+        this.version = version;
+    }
+
+    public String getCharset() {
+        return charset;
+    }
+
+    public void setCharset(String charset) {
+        this.charset = charset;
+    }
+
+    public String getSignType() {
+        return signType;
+    }
+
+    public void setSignType(String signType) {
+        this.signType = signType;
+    }
+
+    public String getTimestamp() {
+        return timestamp;
+    }
+
+    public void setTimestamp(String timestamp) {
+        this.timestamp = timestamp;
+    }
+
+    public String getService() {
+        return service;
+    }
+
+    public void setService(String service) {
+        this.service = service;
+    }
+
+    public T getBizContent() {
+        return bizContent;
+    }
+
+    public void setBizContent(T bizContent) {
+        this.bizContent = bizContent;
+    }
+
+    public void sign(String key) {
+        TreeMap<String, String> param = new TreeMap<>();
+        param.put("appId", appId);
+        param.put("version", version);
+        param.put("charset", charset);
+        param.put("signType", signType);
+        param.put("timestamp", timestamp);
+        param.put("service", service);
+        param.put("bizContent", JSON.toJSONString(bizContent));
+        param.put("key", key);
+        this.sign = SignUtils.sign(param);
+    }
+
+    public Map<String, String> toMap() {
+        Map<String, String> param = new HashMap<>();
+        param.put("appId", appId);
+        param.put("version", version);
+        param.put("charset", charset);
+        param.put("signType", signType);
+        param.put("timestamp", timestamp);
+        param.put("service", service);
+        param.put("sign", sign);
+        param.put("bizContent", JSON.toJSONString(bizContent));
+        return param;
+    }
+
+    public void verify(String result, String appKey) {
+        JSONObject jsonObject = JSON.parseObject(result);
+        TreeMap<String, String> resultParam = new TreeMap<>();
+        for (Entry<String, Object> each : jsonObject.entrySet()) {
+            resultParam.put(each.getKey(),
+                Objects.nonNull(each.getValue()) ? String.valueOf(each.getValue()) : StringUtils.EMPTY);
+        }
+        resultParam.put("key", appKey);
+        if (!SignUtils.verify(resultParam)) {
+            throw new RuntimeException("验签不通过");
+        }
+    }
+
+}

+ 39 - 0
yijia-station/src/main/java/com/yijia/station/utils/SignUtils.java

@@ -0,0 +1,39 @@
+package com.yijia.station.utils;
+
+
+import org.apache.commons.codec.digest.DigestUtils;
+import org.apache.commons.lang3.StringUtils;
+
+import java.util.Map.Entry;
+import java.util.StringJoiner;
+import java.util.TreeMap;
+
+/**
+ * @author zzq
+ * @version 1.0.0
+ * @Title {@link}
+ * @Description
+ * @date 2020/5/27
+ */
+
+public class SignUtils {
+
+    public static String sign(TreeMap<String, String> param) {
+        StringJoiner joiner = new StringJoiner("&");
+        for (Entry<String, String> each : param.entrySet()) {
+            joiner.add(StringUtils.join(each.getKey(), "=", each.getValue()));
+        }
+
+        return DigestUtils.md5Hex(joiner.toString());
+    }
+
+    public static boolean verify(TreeMap<String, String> param) {
+        String originalSign = param.remove("sign");
+        String sign = sign(param);
+        //log.info("原密文 : [{}], MD5签名结果 : [{}]", originalSign, sign);
+        boolean verify = StringUtils.equals(originalSign, sign);
+        //log.info("签名验证结果: [{}]", verify ? "通过" : "不通过");
+        return verify;
+    }
+
+}

Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott