Browse Source

组织机构和分类信息修改同步全库

feature/syp_points
liuchuang 6 years ago
parent
commit
e9d8639d4b
  1. 30
      esua-epdc/epdc-admin/epdc-admin-server/epdc-admin-server.iml
  2. 83
      esua-epdc/epdc-admin/epdc-admin-server/pom.xml
  3. 38
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/rocketmq/dto/OrganizationModifyDTO.java
  4. 43
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/rocketmq/producer/OrganizationModifyProducer.java
  5. 35
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java
  6. 7
      esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/application.yml
  7. 2
      esua-epdc/epdc-admin/epdc-admin.iml
  8. 31
      esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/constant/RocketMqConstant.java
  9. 22
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/EpdcEventsDTO.java
  10. 24
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/form/GroupFormDTO.java
  11. 22
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/IssueDTO.java
  12. 22
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/ItemDTO.java
  13. 16
      esua-epdc/epdc-module/epdc-events/epdc-events-server/epdc-events-server.iml
  14. 16
      esua-epdc/epdc-module/epdc-events/epdc-events-server/pom.xml
  15. 28
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/category/service/impl/CategoryServiceImpl.java
  16. 18
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/controller/EpdcAppEventsController.java
  17. 43
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/EpdcEventsDao.java
  18. 36
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java
  19. 112
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java
  20. 46
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java
  21. 10
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueHandleDao.java
  22. 12
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueHandleService.java
  23. 36
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java
  24. 8
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueHandleServiceImpl.java
  25. 108
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java
  26. 45
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java
  27. 11
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDeptDao.java
  28. 11
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemEvaluateDeptDao.java
  29. 11
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemHandleProcessDao.java
  30. 11
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemInformationDao.java
  31. 12
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemDeptService.java
  32. 12
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemEvaluateDeptService.java
  33. 12
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemHandleProcessService.java
  34. 12
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemInformationService.java
  35. 36
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java
  36. 8
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemDeptServiceImpl.java
  37. 8
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemEvaluateDeptServiceImpl.java
  38. 8
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemHandleProcessServiceImpl.java
  39. 8
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemInformationServiceImpl.java
  40. 108
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java
  41. 57
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rocketmq/consumer/CategoryModifyConsumer.java
  42. 83
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rocketmq/consumer/OrganizationModifyConsumer.java
  43. 32
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rocketmq/dto/CategoryModifyDTO.java
  44. 37
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rocketmq/dto/OrganizationModifyDTO.java
  45. 43
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rocketmq/producer/CategoryModifyProducer.java
  46. 8
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/application.yml
  47. 32
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/events/EpdcEventsDao.xml
  48. 33
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueDao.xml
  49. 3
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueHandleDao.xml
  50. 33
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml
  51. 4
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDeptDao.xml
  52. 4
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemEvaluateDeptDao.xml
  53. 4
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemHandleProcessDao.xml
  54. 4
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemInformationDao.xml
  55. 2
      esua-epdc/epdc-module/epdc-events/epdc-events.iml
  56. 16
      esua-epdc/epdc-module/epdc-group/epdc-group-server/epdc-group-server.iml
  57. 12
      esua-epdc/epdc-module/epdc-group/epdc-group-server/pom.xml
  58. 15
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/feign/EventFeignClient.java
  59. 8
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/feign/fallback/EventFeignClientFallback.java
  60. 33
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/dao/GroupDao.java
  61. 12
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/GroupService.java
  62. 107
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java
  63. 51
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/rocketmq/consumer/OrganizationModifyConsumer.java
  64. 37
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/rocketmq/dto/OrganizationModifyDTO.java
  65. 35
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/dao/TopicDao.java
  66. 24
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/TopicService.java
  67. 63
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/impl/TopicServiceImpl.java
  68. 5
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/application.yml
  69. 28
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/GroupDao.xml
  70. 23
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/topic/TopicDao.xml
  71. 2
      esua-epdc/epdc-module/epdc-group/epdc-group.iml
  72. 16
      esua-epdc/epdc-module/epdc-news/epdc-news-server/epdc-news-server.iml
  73. 13
      esua-epdc/epdc-module/epdc-news/epdc-news-server/pom.xml
  74. 22
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/BannerDao.java
  75. 22
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/NewsDao.java
  76. 22
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/NoticeDao.java
  77. 57
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/rocketmq/consumer/OrganizationModifyConsumer.java
  78. 37
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/rocketmq/dto/OrganizationModifyDTO.java
  79. 12
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/BannerService.java
  80. 12
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NewsService.java
  81. 12
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NoticeService.java
  82. 58
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/BannerServiceImpl.java
  83. 63
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NewsServiceImpl.java
  84. 58
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NoticeServiceImpl.java
  85. 5
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/application.yml
  86. 17
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/BannerDao.xml
  87. 17
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NewsDao.xml
  88. 17
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NoticeDao.xml
  89. 2
      esua-epdc/epdc-module/epdc-news/epdc-news.iml
  90. 13
      esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/PartyAuthenticationFailedDTO.java
  91. 13
      esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/PartyMembersDTO.java
  92. 16
      esua-epdc/epdc-module/epdc-user/epdc-user-server/epdc-user-server.iml
  93. 12
      esua-epdc/epdc-module/epdc-user/epdc-user-server/pom.xml
  94. 22
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/PartyAuthenticationFailedDao.java
  95. 22
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/PartyMembersDao.java
  96. 11
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserDao.java
  97. 24
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserGridRelationDao.java
  98. 11
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserInvitationRecordDao.java
  99. 65
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/rocketmq/consumer/OrganizationModifyConsumer.java
  100. 37
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/rocketmq/dto/OrganizationModifyDTO.java

30
esua-epdc/epdc-admin/epdc-admin-server/epdc-admin-server.iml

@ -25,10 +25,6 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="epdc-commons-tools" />
<orderEntry type="module" module-name="epdc-commons-mybatis" />
<orderEntry type="module" module-name="epdc-commons-dynamic-datasource" />
<orderEntry type="module" module-name="epdc-commons-tools-wx-ma" />
<orderEntry type="module" module-name="epdc-admin-client" />
<orderEntry type="module" module-name="epdc-commons-tools" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.1.7.RELEASE" level="project" />
@ -137,7 +133,7 @@
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.11.2" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.26" level="project" />
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.3.2" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.9.9" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.9.9" level="project" />
@ -225,9 +221,6 @@
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.github.binarywang:weixin-java-miniapp:3.6.0" level="project" />
<orderEntry type="library" name="Maven: com.github.binarywang:weixin-java-common:3.6.0" level="project" />
<orderEntry type="library" name="Maven: com.thoughtworks.xstream:xstream:1.4.10" level="project" />
<orderEntry type="library" name="Maven: xmlpull:xmlpull:1.1.3.1" level="project" />
<orderEntry type="library" name="Maven: xpp3:xpp3_min:1.1.4c" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpmime:4.5.9" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:jcl-over-slf4j:1.7.26" level="project" />
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.8.5" level="project" />
@ -239,6 +232,25 @@
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.9" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.11" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.11" level="project" />
<orderEntry type="module" module-name="epdc-events-client" />
<orderEntry type="module" module-name="epdc-news-client" />
<orderEntry type="module" module-name="epdc-websocket-client" />
<orderEntry type="library" name="Maven: com.thoughtworks.xstream:xstream:1.4.10" level="project" />
<orderEntry type="library" name="Maven: xmlpull:xmlpull:1.1.3.1" level="project" />
<orderEntry type="library" name="Maven: xpp3:xpp3_min:1.1.4c" level="project" />
<orderEntry type="module" module-name="epdc-message-client" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-spring-boot-starter:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-spring-boot:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-client:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-common:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-acl:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-remoting:4.4.0" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-tcnative-boringssl-static:2.0.25.Final" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-logging:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-srvutil:4.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-cli:commons-cli:1.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-messaging:5.1.9.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.1.7.RELEASE" level="project" />
@ -257,5 +269,7 @@
<orderEntry type="library" scope="TEST" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
</component>
</module>

83
esua-epdc/epdc-admin/epdc-admin-server/pom.xml

@ -68,6 +68,12 @@
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<!--RocketMq-->
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-starter</artifactId>
<version>2.0.2</version>
</dependency>
</dependencies>
<build>
@ -143,6 +149,9 @@
<!--工作端小程序-->
<work.wx.ma.appId>wx29b074840ef4bfd9</work.wx.ma.appId>
<work.wx.ma.secret>4adb1afccc69f205cdf5b521d74e2aca</work.wx.ma.secret>
<!--RocketMQ-->
<rocketmq.name.server>47.104.85.99:9876;114.215.125.123:9876</rocketmq.name.server>
<rocketmq.producer.group>jinshui-organizationGroup</rocketmq.producer.group>
</properties>
</profile>
<profile>
@ -165,6 +174,9 @@
<!--工作端小程序-->
<work.wx.ma.appId>wx9f20a46906ab2c3e</work.wx.ma.appId>
<work.wx.ma.secret>dc13065f79429979d9f687d249eb5c4e</work.wx.ma.secret>
<!--RocketMQ-->
<rocketmq.name.server>47.104.85.99:9876;114.215.125.123:9876</rocketmq.name.server>
<rocketmq.producer.group>jinshui-organizationGroup</rocketmq.producer.group>
</properties>
</profile>
<profile>
@ -199,77 +211,6 @@
<spring.datasource.druid.password>Elink@833066</spring.datasource.druid.password>
</properties>
</profile>
<profile>
<id>prod_kongcun</id>
<properties>
<server.port>9055</server.port>
<spring.profiles.active>prod</spring.profiles.active>
<docker.tag>prod</docker.tag>
<!-- nacos -->
<nacos.register-enabled>true</nacos.register-enabled>
<nacos.server-addr>172.16.1.238:8848</nacos.server-addr>
<spring.zipkin.base-url>http://172.31.171.61:9411</spring.zipkin.base-url>
<!--居民端小程序配置-->
<wx.ma.appId>wx04ee7d7a849fa2a8</wx.ma.appId>
<wx.ma.secret>3980e207b86bccea8d3c0bf7d16adeba</wx.ma.secret>
<!--工作端小程序-->
<work.wx.ma.appId>wxddb240334d09049f</work.wx.ma.appId>
<work.wx.ma.secret>071b8c70da0d0482aaf79052e64f83bc</work.wx.ma.secret>
<spring.datasource.druid.url>
<![CDATA[jdbc:mysql://172.16.1.239:3306/esua_epdc_admin?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai]]>
</spring.datasource.druid.url>
<spring.datasource.druid.username>epdc</spring.datasource.druid.username>
<spring.datasource.druid.password>Elink@833066</spring.datasource.druid.password>
<!-- redis配置 -->
<spring.redis.index>0</spring.redis.index>
<spring.redis.host>172.16.1.238</spring.redis.host>
<spring.redis.port>6379</spring.redis.port>
<spring.redis.password>Elink833066</spring.redis.password>
</properties>
</profile>
<profile>
<id>prod_shibei_aliyun</id>
<properties>
<server.port>9055</server.port>
<spring.profiles.active>prod</spring.profiles.active>
<docker.tag>prod</docker.tag>
<!-- redis配置 -->
<spring.redis.index>0</spring.redis.index>
<spring.redis.host>172.16.0.54</spring.redis.host>
<spring.redis.port>6379</spring.redis.port>
<spring.redis.password>Elink833066</spring.redis.password>
<!-- nacos -->
<nacos.register-enabled>true</nacos.register-enabled>
<nacos.server-addr>172.16.0.52:8848</nacos.server-addr>
<spring.zipkin.base-url>http://172.31.171.61:9411</spring.zipkin.base-url>
<!--党群e家小程序配置-->
<wx.ma.appId>wxdd8530c5f4926766</wx.ma.appId>
<wx.ma.secret>5bf4fb813145431b3493a10aa7e041e9</wx.ma.secret>
<!--先锋市北小程序配置-->
<!-- <wx.ma.appId>wx5d3e97461d248397</wx.ma.appId>-->
<!-- <wx.ma.secret>bfed51b731e53db9affb9e6131e7ae12</wx.ma.secret>-->
<!--工作端小程序-->
<work.wx.ma.appId>wx9f20a46906ab2c3e</work.wx.ma.appId>
<work.wx.ma.secret>dc13065f79429979d9f687d249eb5c4e</work.wx.ma.secret>
<spring.datasource.druid.url>
<![CDATA[jdbc:mysql://172.16.0.52:3306/esua_epdc_admin?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai]]>
</spring.datasource.druid.url>
<spring.datasource.druid.username>epdc</spring.datasource.druid.username>
<spring.datasource.druid.password>Elink@833066</spring.datasource.druid.password>
</properties>
</profile>
<profile>
<id>prod_jinshui</id>
<properties>

38
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/rocketmq/dto/OrganizationModifyDTO.java

@ -0,0 +1,38 @@
package com.elink.esua.epdc.rocketmq.dto;
import lombok.Data;
import java.io.Serializable;
/**
*
* 组织机构信息修改-发送MQ消息DTO
*
* @Authorliuchuang
* @Date2020/3/16 9:30
*/
@Data
public class OrganizationModifyDTO implements Serializable {
private static final long serialVersionUID = -1330090682508121169L;
/**
* 部门ID
*/
private Long deptId;
/**
* 旧部门名称
*/
private String oldDeptName;
/**
* 新部门名称
*/
private String newDeptName;
/**
* 部门类型
*/
private String typeKey;
}

43
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/rocketmq/producer/OrganizationModifyProducer.java

@ -0,0 +1,43 @@
package com.elink.esua.epdc.rocketmq.producer;
import lombok.extern.slf4j.Slf4j;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.common.message.Message;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
*
* 组织机构信息修改-发送MQ消息
*
* @Authorliuchuang
* @Date2020/3/16 13:38
*/
@Slf4j
@Component
public class OrganizationModifyProducer {
@Autowired
private RocketMQTemplate rocketMQTemplate;
/**
*
* 发送消息
*
* @params [topic, tag, keys, body]
* @return void
* @author liuchuang
* @since 2020/3/6 21:09
*/
public void sendMessage(String topic, String tag, String keys, String body) {
Message message = new Message(topic, tag, keys, body.getBytes());
try {
SendResult sendResult = rocketMQTemplate.getProducer().send(message);
log.info("EPDC-ADMIN-SERVER发送消息结果:{sendStatus:{}, topic:{}, msgId:{}}", sendResult.getSendStatus(), topic, sendResult.getMsgId());
} catch (Exception e) {
log.error("EPDC-ADMIN-SERVER发送消息异常:{topic:{}, tag:{}, keys:{}, body:{}}", topic, tag, keys, body);
e.printStackTrace();
}
}
}

35
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java

@ -14,10 +14,7 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.constant.OrganizationTypeConstant;
import com.elink.esua.epdc.commons.tools.constant.*;
import com.elink.esua.epdc.commons.tools.enums.SuperAdminEnum;
import com.elink.esua.epdc.commons.tools.exception.ErrorCode;
import com.elink.esua.epdc.commons.tools.exception.RenException;
@ -37,6 +34,8 @@ import com.elink.esua.epdc.dto.epdc.form.UserSysDeptInfoFormDTO;
import com.elink.esua.epdc.dto.epdc.result.UserSysDeptInfoResultDTO;
import com.elink.esua.epdc.entity.SysDeptEntity;
import com.elink.esua.epdc.feign.GroupFeignClient;
import com.elink.esua.epdc.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.rocketmq.producer.OrganizationModifyProducer;
import com.elink.esua.epdc.service.SysDeptService;
import com.elink.esua.epdc.service.SysUserService;
import com.google.common.collect.Lists;
@ -75,6 +74,9 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
@Autowired
private RedisUtils redisUtils;
@Autowired
private OrganizationModifyProducer organizationModifyProducer;
private static final Logger logger = LoggerFactory.getLogger(SysDeptServiceImpl.class);
@Override
public List<SysDeptDTO> list(Map<String, Object> params) {
@ -154,6 +156,8 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
}
entity.setPids(getPidList(entity.getPid()));
// 发送消息
sendMqMessage(dto);
updateById(entity);
}
@ -733,4 +737,27 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
List<CompleteDeptDTO> userDtoList = this.baseDao.selectListCompleteDeptDTO(params);
return new PageData<>(userDtoList, iPage.getTotal());
}
/**
*
* 组织机构名称修改发送MQ消息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/6 21:34
*/
private void sendMqMessage(SysDeptDTO dto) {
// 获取旧信息
SysDeptEntity entity = baseDao.getById(dto.getId());
if (!dto.getName().equals(entity.getName())) {
OrganizationModifyDTO body = new OrganizationModifyDTO();
body.setDeptId(dto.getId());
body.setOldDeptName(entity.getName());
body.setNewDeptName(dto.getName());
body.setTypeKey(entity.getTypeKey());
organizationModifyProducer.sendMessage(RocketMqConstant.MQ_TOPIC_ORGANIZATION, RocketMqConstant.MQ_TAG_ORGANIZATION,
dto.getId().toString(), JSONObject.toJSONString(body));
}
}
}

7
esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/application.yml

@ -102,4 +102,9 @@ hystrix:
ribbon:
ReadTimeout: 300000
ConnectTimeout: 300000
ConnectTimeout: 300000
rocketmq:
name-server: @rocketmq.name.server@
producer:
group: @rocketmq.producer.group@

2
esua-epdc/epdc-admin/epdc-admin.iml

@ -45,5 +45,7 @@
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-jcl:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
</component>
</module>

31
esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/constant/RocketMqConstant.java

@ -0,0 +1,31 @@
package com.elink.esua.epdc.commons.tools.constant;
/**
*
* RocketMq 常量类
*
* @Authorliuchuang
* @Date2020/3/16 14:50
*/
public interface RocketMqConstant {
/**
* 组织机构信息修改-消息topic
*/
String MQ_TOPIC_ORGANIZATION = "jinshui-organizationTopic";
/**
* 组织机构信息修改-消息tag
*/
String MQ_TAG_ORGANIZATION = "jinshui-organizationTag";
/**
* 分类信息修改-消息topic
*/
String MQ_TOPIC_CATEGORY = "jinshui-categoryTopic";
/**
* 分类信息修改-消息tag
*/
String MQ_TAG_CATEGORY = "jinshui-categoryTag";
}

22
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/EpdcEventsDTO.java

@ -49,4 +49,26 @@ public class EpdcEventsDTO implements Serializable {
*/
private Date createdTime;
/**
* 父所有部门ID
*/
private String parentDeptIds;
/**
* 父所有部门名称
*/
private String parentDeptNames;
/**
* 所有部门ID
*/
private String allDeptIds;
/**
* 所有部门名称
*/
private String allDeptNames;
/**
* 分类全称
*/
private String categoryFullName;
}

24
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/form/GroupFormDTO.java

@ -0,0 +1,24 @@
package com.elink.esua.epdc.dto.events.form;
import lombok.Data;
import java.io.Serializable;
/**
* @Authorliuchuang
* @Date2020/3/7 12:46
*/
@Data
public class GroupFormDTO implements Serializable {
private static final long serialVersionUID = 5915096900970194933L;
/**
* 社群ID
*/
private String id;
/**
* 社群名称
*/
private String groupName;
}

22
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/IssueDTO.java

@ -183,4 +183,26 @@ public class IssueDTO implements Serializable {
*/
private String issueCode;
/**
* 父所有部门ID
*/
private String parentDeptIds;
/**
* 父所有部门名称
*/
private String parentDeptNames;
/**
* 所有部门ID
*/
private String allDeptIds;
/**
* 所有部门名称
*/
private String allDeptNames;
/**
* 分类全称
*/
private String categoryFullName;
}

22
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/ItemDTO.java

@ -200,4 +200,26 @@ public class ItemDTO implements Serializable {
*/
private String itemCode;
/**
* 父所有部门ID
*/
private String parentDeptIds;
/**
* 父所有部门名称
*/
private String parentDeptNames;
/**
* 所有部门ID
*/
private String allDeptIds;
/**
* 所有部门名称
*/
private String allDeptNames;
/**
* 分类全称
*/
private String categoryFullName;
}

16
esua-epdc/epdc-module/epdc-events/epdc-events-server/epdc-events-server.iml

@ -143,7 +143,7 @@
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.11.2" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.26" level="project" />
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.3.2" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.9.9" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.9.9" level="project" />
@ -221,6 +221,18 @@
<orderEntry type="library" name="Maven: com.google.j2objc:j2objc-annotations:1.1" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.mojo:animal-sniffer-annotations:1.14" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.11" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-spring-boot-starter:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-spring-boot:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-client:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-common:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-acl:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-remoting:4.4.0" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-tcnative-boringssl-static:2.0.25.Final" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-logging:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-srvutil:4.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-cli:commons-cli:1.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-messaging:5.1.9.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.1.7.RELEASE" level="project" />
@ -239,5 +251,7 @@
<orderEntry type="library" scope="TEST" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
</component>
</module>

16
esua-epdc/epdc-module/epdc-events/epdc-events-server/pom.xml

@ -75,6 +75,12 @@
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<!--RocketMq-->
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-starter</artifactId>
<version>2.0.2</version>
</dependency>
</dependencies>
<build>
@ -164,6 +170,11 @@
<!--工作端小程序-->
<work.wx.ma.appId>wx29b074840ef4bfd9</work.wx.ma.appId>
<work.wx.ma.secret>4adb1afccc69f205cdf5b521d74e2aca</work.wx.ma.secret>
<!--RocketMQ-->
<rocketmq.name.server>47.104.85.99:9876;114.215.125.123:9876</rocketmq.name.server>
<rocketmq.consumer.group>jinshui-organizationGroup</rocketmq.consumer.group>
<rocketmq.producer.category.group>jinshui-categoryGroup</rocketmq.producer.category.group>
<rocketmq.consumer.category.group>jinshui-categoryGroup</rocketmq.consumer.category.group>
</properties>
</profile>
@ -199,6 +210,11 @@
<!--工作端小程序-->
<work.wx.ma.appId>wx9f20a46906ab2c3e</work.wx.ma.appId>
<work.wx.ma.secret>dc13065f79429979d9f687d249eb5c4e</work.wx.ma.secret>
<!--RocketMQ-->
<rocketmq.name.server>47.104.85.99:9876;114.215.125.123:9876</rocketmq.name.server>
<rocketmq.consumer.group>jinshui-organizationGroup</rocketmq.consumer.group>
<rocketmq.producer.category.group>jinshui-categoryGroup</rocketmq.producer.category.group>
<rocketmq.consumer.category.group>jinshui-categoryGroup</rocketmq.consumer.category.group>
</properties>
</profile>

28
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/category/service/impl/CategoryServiceImpl.java

@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.constant.RocketMqConstant;
import com.elink.esua.epdc.commons.tools.exception.ErrorCode;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.redis.RedisKeys;
@ -40,6 +41,8 @@ import com.elink.esua.epdc.modules.category.dao.CategoryDao;
import com.elink.esua.epdc.modules.category.entity.CategoryEntity;
import com.elink.esua.epdc.modules.category.redis.CategoryRedis;
import com.elink.esua.epdc.modules.category.service.CategoryService;
import com.elink.esua.epdc.modules.rocketmq.dto.CategoryModifyDTO;
import com.elink.esua.epdc.modules.rocketmq.producer.CategoryModifyProducer;
import com.google.common.collect.Lists;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.hssf.usermodel.HSSFCell;
@ -80,6 +83,8 @@ public class CategoryServiceImpl extends BaseServiceImpl<CategoryDao, CategoryEn
public static int Guid=100;//id自增值
@Autowired
private CategoryModifyProducer categoryModifyProducer;
private Logger logger = LoggerFactory.getLogger(getClass());
@ -220,6 +225,8 @@ public class CategoryServiceImpl extends BaseServiceImpl<CategoryDao, CategoryEn
}
entity.setPids(pids);
}
// 分类名称修改发送MQ消息
sendMqMessage(dto);
updateById(entity);
this.packageCategoryOption();
}
@ -699,5 +706,26 @@ public class CategoryServiceImpl extends BaseServiceImpl<CategoryDao, CategoryEn
return others;
}
/**
*
* 分类名称修改发送MQ消息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/6 21:34
*/
private void sendMqMessage(CategoryDTO dto) {
// 获取旧信息
CategoryEntity entity = baseDao.getById(dto.getId());
if (!dto.getCategoryName().equals(entity.getCategoryName())) {
CategoryModifyDTO body = new CategoryModifyDTO();
body.setCategoryId(dto.getId());
body.setOldCategoryName(entity.getCategoryName());
body.setNewCategoryName(dto.getCategoryName());
categoryModifyProducer.sendMessage(RocketMqConstant.MQ_TOPIC_CATEGORY, RocketMqConstant.MQ_TAG_CATEGORY,
dto.getId().toString(), JSONObject.toJSONString(body));
}
}
}

18
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/controller/EpdcAppEventsController.java

@ -6,11 +6,14 @@ import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.commons.tools.validator.group.AddGroup;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.issue.IssueDTO;
import com.elink.esua.epdc.modules.events.service.EpdcEventsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @Author LC
* @Date 2019/9/8 16:42
@ -53,4 +56,19 @@ public class EpdcAppEventsController {
return epdcEventsService.topicToIssue(formDto);
}
/**
*
* 更新事件表议题表项目表党员群名称
*
* @params [groups]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2020/3/7 12:39
*/
@PostMapping("modifyGroupName")
public Result modifyPartyGroupName(@RequestBody List<GroupFormDTO> groups) {
epdcEventsService.modifyPartyGroupName(groups);
return new Result();
}
}

43
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/EpdcEventsDao.java

@ -20,6 +20,7 @@ package com.elink.esua.epdc.modules.events.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.events.*;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.IssuePendingResponseFormDTO;
import com.elink.esua.epdc.dto.issue.result.IssuePendingResponseResultDTO;
@ -144,6 +145,48 @@ public interface EpdcEventsDao extends BaseDao<EpdcEventsEntity> {
*/
List<IssuePendingResponseResultDTO> listIssuePendingResponse(IssuePendingResponseFormDTO formDto);
/**
*
* 查询需要修改组织机构信息事件
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.events.EpdcEventsDTO>
* @author liuchuang
* @since 2020/3/7 0:20
*/
List<EpdcEventsDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新网格名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateGridByDeptId(String newDeptName, Long deptId);
/**
*
* 查询需要修改的分类信息
*
* @params [oldCategoryName]
* @return java.util.List<com.elink.esua.epdc.dto.events.EpdcEventsDTO>
* @author liuchuang
* @since 2020/3/7 16:39
*/
List<EpdcEventsDTO> selectListOfCategoryInfo(String oldCategoryName);
/**
*
* 更新事件表党员群名称
*
* @params [groups]
* @return void
* @author liuchuang
* @since 2020/3/7 12:54
*/
void updateBatchPartyGroupName(@Param("groups") List<GroupFormDTO> groups);
}

36
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java

@ -23,12 +23,15 @@ import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.events.*;
import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.IssueDTO;
import com.elink.esua.epdc.dto.issue.form.IssuePendingResponseFormDTO;
import com.elink.esua.epdc.dto.issue.result.IssuePendingResponseResultDTO;
import com.elink.esua.epdc.dto.issue.result.IssueStateStatisticsResultDTO;
import com.elink.esua.epdc.modules.events.entity.EpdcEventsEntity;
import com.elink.esua.epdc.modules.rocketmq.dto.CategoryModifyDTO;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import java.util.List;
import java.util.Map;
@ -208,4 +211,37 @@ public interface EpdcEventsService extends BaseService<EpdcEventsEntity> {
*/
Result<IssueDTO> topicToIssue(EpdcEventSubmitFormDTO dto);
/**
*
* 事件修改组织机构信息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
/**
*
* 修改分类信息
*
* @params []
* @return void
* @author liuchuang
* @since 2020/3/7 16:33
*/
void modifyCategoryInfo(CategoryModifyDTO dto);
/**
*
* 更新事件表议题表项目表党员群名称
*
* @params [groups]
* @return void
* @author liuchuang
* @since 2020/3/7 12:50
*/
void modifyPartyGroupName(List<GroupFormDTO> groups);
}

112
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java

@ -40,6 +40,7 @@ import com.elink.esua.epdc.dto.epdc.form.EpdcInformationFormDTO;
import com.elink.esua.epdc.dto.events.*;
import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.form.SmsNoticeFormDTO;
import com.elink.esua.epdc.dto.issue.IssueDTO;
@ -61,6 +62,8 @@ import com.elink.esua.epdc.modules.issue.entity.IssueHandleEntity;
import com.elink.esua.epdc.modules.issue.service.IssueHandleService;
import com.elink.esua.epdc.modules.issue.service.IssueService;
import com.elink.esua.epdc.modules.item.service.ItemService;
import com.elink.esua.epdc.modules.rocketmq.dto.CategoryModifyDTO;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -542,4 +545,113 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl<EpdcEventsDao, EpdcEv
}
issueOverseeResultsTask.sendSmsNotice(sms);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 查询需要修改组织机构信息事件
List<EpdcEventsDTO> eventsList = baseDao.selectListOfOrganizationInfo(dto.getDeptId().toString());
if (null != eventsList && eventsList.size() > 0) {
// 组织机构信息处理
List<EpdcEventsEntity> entities = handleOrganizationInfo(dto, eventsList);
// 更新事件组织机构信息
updateBatchById(entities);
}
// 更新网格名称
baseDao.updateGridByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
/**
*
* 组织机构信息处理
*
* @params [dto, eventsList]
* @return java.util.List<com.elink.esua.epdc.modules.events.entity.EpdcEventsEntity>
* @author liuchuang
* @since 2020/3/7 1:17
*/
private List<EpdcEventsEntity> handleOrganizationInfo(OrganizationModifyDTO dto, List<EpdcEventsDTO> eventsList) {
List<EpdcEventsEntity> entities = new ArrayList<>();
for (EpdcEventsDTO events: eventsList) {
EpdcEventsEntity entity = new EpdcEventsEntity();
if (StringUtils.isNotEmpty(events.getParentDeptIds()) && StringUtils.isNotEmpty(events.getParentDeptNames())) {
List<String> parentDeptIds = Arrays.asList(events.getParentDeptIds().split(","));
List<String> parentDeptNames = Arrays.asList(events.getParentDeptNames().split("-"));
int index = parentDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && parentDeptNames.size() > index) {
parentDeptNames.set(index, dto.getNewDeptName());
entity.setId(events.getId());
entity.setParentDeptNames(StringUtils.join(parentDeptNames, "-"));
}
}
if (StringUtils.isNotEmpty(events.getAllDeptIds()) && StringUtils.isNotEmpty(events.getAllDeptNames())) {
List<String> allDeptIds = Arrays.asList(events.getAllDeptIds().split(","));
List<String> allDeptNames = Arrays.asList(events.getAllDeptNames().split("-"));
int index = allDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && allDeptNames.size() > index) {
allDeptNames.set(index, dto.getNewDeptName());
entity.setId(events.getId());
entity.setAllDeptNames(StringUtils.join(allDeptNames, "-"));
}
}
entities.add(entity);
}
return entities;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyCategoryInfo(CategoryModifyDTO dto) {
// 查询需要修改的分类信息
List<EpdcEventsDTO> eventsList = baseDao.selectListOfCategoryInfo(dto.getOldCategoryName());
if (null != eventsList && eventsList.size() > 0) {
// 分类信息处理
List<EpdcEventsEntity> entities = handleCategoryInfo(dto, eventsList);
// 更新分类信息
updateBatchById(entities);
}
}
/**
*
* 分类信息处理
*
* @params [dto, eventsList]
* @return java.util.List<com.elink.esua.epdc.modules.events.entity.EpdcEventsEntity>
* @author liuchuang
* @since 2020/3/7 17:00
*/
private List<EpdcEventsEntity> handleCategoryInfo(CategoryModifyDTO dto, List<EpdcEventsDTO> eventsList) {
List<EpdcEventsEntity> entities = new ArrayList<>();
for (EpdcEventsDTO events: eventsList) {
if (StringUtils.isNotEmpty(events.getCategoryFullName())) {
List<String> categoryFullName = Arrays.asList(events.getCategoryFullName().split("-"));
int index = categoryFullName.indexOf(dto.getOldCategoryName());
if (index >= 0) {
categoryFullName.set(index, dto.getNewCategoryName());
EpdcEventsEntity entity = new EpdcEventsEntity();
entity.setId(events.getId());
entity.setCategoryFullName(StringUtils.join(categoryFullName, "-"));
entities.add(entity);
}
}
}
return entities;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyPartyGroupName(List<GroupFormDTO> groups) {
// 更新事件表党员群名称
baseDao.updateBatchPartyGroupName(groups);
// 更新议题表党员群名称
issueService.modifyPartyGroupName(groups);
// 更新项目表党员群名称
itemService.modifyPartyGroupName(groups);
}
}

46
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java

@ -18,7 +18,9 @@
package com.elink.esua.epdc.modules.issue.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.issue.IssueContentDetailDTO;
import com.elink.esua.epdc.dto.issue.IssueDTO;
import com.elink.esua.epdc.dto.issue.IssueWaitHandleDetailDTO;
import com.elink.esua.epdc.dto.issue.IssueWaitHandleOrClosedDTO;
import com.elink.esua.epdc.dto.issue.form.*;
@ -158,4 +160,48 @@ public interface IssueDao extends BaseDao<IssueEntity> {
* @since 2019/11/21 15:16
*/
List<IssueProgressResultDTO> selectListIssueProgress(String issueId);
/**
*
* 查询需要修改组织机构信息事件
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.issue.IssueDTO>
* @author liuchuang
* @since 2020/3/7 0:20
*/
List<IssueDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新网格名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateGridByDeptId(String newDeptName, Long deptId);
/**
*
* 查询需要修改的分类信息
*
* @params [oldCategoryName]
* @return java.util.List<com.elink.esua.epdc.dto.events.IssueDTO>
* @author liuchuang
* @since 2020/3/7 16:39
*/
List<IssueDTO> selectListOfCategoryInfo(String oldCategoryName);
/**
*
* 更新议题表党员群名称
*
* @params [groups]
* @return void
* @author liuchuang
* @since 2020/3/7 12:54
*/
void updateBatchPartyGroupName(@Param("groups") List<GroupFormDTO> groups);
}

10
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueHandleDao.java

@ -30,4 +30,14 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface IssueHandleDao extends BaseDao<IssueHandleEntity> {
/**
*
* 更新操作人部门名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateDeptNameByDeptId(String newDeptName, Long deptId);
}

12
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueHandleService.java

@ -19,6 +19,7 @@ package com.elink.esua.epdc.modules.issue.service;
import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.modules.issue.entity.IssueHandleEntity;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
/**
* 议题处理表 议题处理表
@ -37,4 +38,15 @@ public interface IssueHandleService extends BaseService<IssueHandleEntity> {
* @date
*/
void delete(String[] ids);
/**
*
* 议题处理进度修改组织机构信息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
}

36
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java

@ -21,6 +21,7 @@ import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.events.EpdcEventsCommentsDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.*;
import com.elink.esua.epdc.dto.issue.IssueContentDetailDTO;
@ -31,6 +32,8 @@ import com.elink.esua.epdc.dto.issue.form.IssueFormDTO;
import com.elink.esua.epdc.dto.issue.form.IssueWaitHandleSubmitFormDTO;
import com.elink.esua.epdc.dto.issue.result.*;
import com.elink.esua.epdc.modules.issue.entity.IssueEntity;
import com.elink.esua.epdc.modules.rocketmq.dto.CategoryModifyDTO;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@ -248,4 +251,37 @@ public interface IssueService extends BaseService<IssueEntity> {
* @since 2019/11/21 15:16
*/
List<IssueProgressResultDTO> listIssueProgress(String issueId);
/**
*
* 议题修改组织机构信息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
/**
*
* 修改分类信息
*
* @params []
* @return void
* @author liuchuang
* @since 2020/3/7 16:33
*/
void modifyCategoryInfo(CategoryModifyDTO dto);
/**
*
* 更新议题表党员群名称
*
* @params [groups]
* @return void
* @author liuchuang
* @since 2020/3/7 12:50
*/
void modifyPartyGroupName(List<GroupFormDTO> groups);
}

8
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueHandleServiceImpl.java

@ -21,6 +21,7 @@ import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.modules.issue.dao.IssueHandleDao;
import com.elink.esua.epdc.modules.issue.entity.IssueHandleEntity;
import com.elink.esua.epdc.modules.issue.service.IssueHandleService;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -42,4 +43,11 @@ public class IssueHandleServiceImpl extends BaseServiceImpl<IssueHandleDao, Issu
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 更新操作人部门名称
baseDao.updateDeptNameByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
}

108
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java

@ -37,6 +37,7 @@ import com.elink.esua.epdc.constants.MenuCodeConstant;
import com.elink.esua.epdc.dto.MenuNoticeDTO;
import com.elink.esua.epdc.dto.epdc.form.EpdcInformationFormDTO;
import com.elink.esua.epdc.dto.events.EpdcEventsCommentsDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.form.SmsNoticeFormDTO;
import com.elink.esua.epdc.dto.issue.*;
@ -60,6 +61,8 @@ import com.elink.esua.epdc.modules.item.entity.ItemHandleProcessEntity;
import com.elink.esua.epdc.modules.item.service.ItemDeptService;
import com.elink.esua.epdc.modules.item.service.ItemHandleProcessService;
import com.elink.esua.epdc.modules.item.service.ItemService;
import com.elink.esua.epdc.modules.rocketmq.dto.CategoryModifyDTO;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -495,4 +498,109 @@ public class IssueServiceImpl extends BaseServiceImpl<IssueDao, IssueEntity> imp
sms.setSmsTemplateType(SysSmsTemplateConstant.SMS_TEMPLATE_RESIDENTS_ISSUE_CHANGE_ITEM);
issueOverseeResultsTask.sendSmsNotice(sms);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 查询需要修改组织机构信息议题
List<IssueDTO> issueList = baseDao.selectListOfOrganizationInfo(dto.getDeptId().toString());
if (null != issueList && issueList.size() > 0) {
// 组织机构信息处理
List<IssueEntity> entities = handleOrganizationInfo(dto, issueList);
// 更新事件组织机构信息
updateBatchById(entities);
}
// 更新网格名称
baseDao.updateGridByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
/**
*
* 组织机构信息处理
*
* @params [dto, issueList]
* @return java.util.List<com.elink.esua.epdc.modules.issue.entity.IssueDTO>
* @author liuchuang
* @since 2020/3/7 1:17
*/
private List<IssueEntity> handleOrganizationInfo(OrganizationModifyDTO dto, List<IssueDTO> issueList) {
List<IssueEntity> entities = new ArrayList<>();
for (IssueDTO issue: issueList) {
IssueEntity entity = new IssueEntity();
if (StringUtils.isNotEmpty(issue.getParentDeptIds()) && StringUtils.isNotEmpty(issue.getParentDeptNames())) {
List<String> parentDeptIds = Arrays.asList(issue.getParentDeptIds().split(","));
List<String> parentDeptNames = Arrays.asList(issue.getParentDeptNames().split("-"));
int index = parentDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && parentDeptNames.size() > index) {
parentDeptNames.set(index, dto.getNewDeptName());
entity.setId(issue.getId());
entity.setParentDeptNames(StringUtils.join(parentDeptNames, "-"));
}
}
if (StringUtils.isNotEmpty(issue.getAllDeptIds()) && StringUtils.isNotEmpty(issue.getAllDeptNames())) {
List<String> allDeptIds = Arrays.asList(issue.getAllDeptIds().split(","));
List<String> allDeptNames = Arrays.asList(issue.getAllDeptNames().split("-"));
int index = allDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && allDeptNames.size() > index) {
allDeptNames.set(index, dto.getNewDeptName());
entity.setId(issue.getId());
entity.setAllDeptNames(StringUtils.join(allDeptNames, "-"));
}
}
entities.add(entity);
}
return entities;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyCategoryInfo(CategoryModifyDTO dto) {
// 查询需要修改的分类信息
List<IssueDTO> issueList = baseDao.selectListOfCategoryInfo(dto.getOldCategoryName());
if (null != issueList && issueList.size() > 0) {
// 分类信息处理
List<IssueEntity> entities = handleCategoryInfo(dto, issueList);
// 更新分类信息
updateBatchById(entities);
}
}
/**
*
* 分类信息处理
*
* @params [dto, eventsList]
* @return java.util.List<com.elink.esua.epdc.modules.events.entity.IssueEntity>
* @author liuchuang
* @since 2020/3/7 17:00
*/
private List<IssueEntity> handleCategoryInfo(CategoryModifyDTO dto, List<IssueDTO> issueList) {
List<IssueEntity> entities = new ArrayList<>();
for (IssueDTO issue: issueList) {
if (StringUtils.isNotEmpty(issue.getCategoryFullName())) {
List<String> categoryFullName = Arrays.asList(issue.getCategoryFullName().split("-"));
int index = categoryFullName.indexOf(dto.getOldCategoryName());
if (index >= 0) {
categoryFullName.set(index, dto.getNewCategoryName());
IssueEntity entity = new IssueEntity();
entity.setId(issue.getId());
entity.setCategoryFullName(StringUtils.join(categoryFullName, "-"));
entities.add(entity);
}
}
}
return entities;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyPartyGroupName(List<GroupFormDTO> groups) {
// 更新议题表党员群名称
baseDao.updateBatchPartyGroupName(groups);
}
}

45
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java

@ -18,6 +18,7 @@
package com.elink.esua.epdc.modules.item.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.item.ItemDTO;
import com.elink.esua.epdc.dto.item.ItemPendingHandleDTO;
import com.elink.esua.epdc.dto.item.form.ItemCategoryStatisticsFormDTO;
@ -225,4 +226,48 @@ public interface ItemDao extends BaseDao<ItemEntity> {
* @Date: 2020-01-14
*/
List<Long> queryParentDeptId(@Param("itemId") String itemId, @Param("deptId") Long deptId);
/**
*
* 查询需要修改组织机构信息事件
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.item.ItemDTO>
* @author liuchuang
* @since 2020/3/7 0:20
*/
List<ItemDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新网格名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateGridByDeptId(String newDeptName, Long deptId);
/**
*
* 查询需要修改的分类信息
*
* @params [oldCategoryName]
* @return java.util.List<com.elink.esua.epdc.dto.events.ItemDTO>
* @author liuchuang
* @since 2020/3/7 16:39
*/
List<ItemDTO> selectListOfCategoryInfo(String oldCategoryName);
/**
*
* 更新项目表党员群名称
*
* @params [groups]
* @return void
* @author liuchuang
* @since 2020/3/7 12:54
*/
void updateBatchPartyGroupName(@Param("groups") List<GroupFormDTO> groups);
}

11
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDeptDao.java

@ -70,4 +70,15 @@ public interface ItemDeptDao extends BaseDao<ItemDeptEntity> {
* @Date: 2019/9/17 9:08
*/
List<ItemEvaluateDeptDTO> selectListOfEvaluateDepts(String itemId, Long deptId);
/**
*
* 更新部门名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateDeptNameByDeptId(String newDeptName, Long deptId);
}

11
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemEvaluateDeptDao.java

@ -44,4 +44,15 @@ public interface ItemEvaluateDeptDao extends BaseDao<ItemEvaluateDeptEntity> {
*/
List<ItemDeptEvaluateResultDTO> selectListOfDeptEvaluateByItemId(String itemId);
/**
*
* 更新被评价部门名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateDeptNameByDeptId(String newDeptName, Long deptId);
}

11
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemHandleProcessDao.java

@ -42,4 +42,15 @@ public interface ItemHandleProcessDao extends BaseDao<ItemHandleProcessEntity> {
*/
void insertItemHandleProcess(ItemHandleProcessDTO dto);
/**
*
* 更新操作人部门名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateDeptNameByDeptId(String newDeptName, Long deptId);
}

11
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemInformationDao.java

@ -55,4 +55,15 @@ public interface ItemInformationDao extends BaseDao<ItemInformationEntity> {
*/
int updateInformationReadFlag(ItemInformationFormDTO formDto);
/**
*
* 更新处理部门名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateDeptNameByDeptId(String newDeptName, Long deptId);
}

12
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemDeptService.java

@ -22,6 +22,7 @@ import com.elink.esua.epdc.dto.item.ItemDeptDTO;
import com.elink.esua.epdc.dto.item.ItemEvaluateDeptDTO;
import com.elink.esua.epdc.dto.item.form.ItemHandleSubmitFormDTO;
import com.elink.esua.epdc.modules.item.entity.ItemDeptEntity;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import java.util.List;
@ -89,4 +90,15 @@ public interface ItemDeptService extends BaseService<ItemDeptEntity> {
* @Date: 2019/9/17 9:09
*/
List<ItemEvaluateDeptDTO> listOfEvaluateDepts(String itemId, Long deptId);
/**
*
* 项目部门关系表修改组织机构信息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
}

12
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemEvaluateDeptService.java

@ -20,6 +20,7 @@ import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.dto.item.ItemEvaluateDeptDTO;
import com.elink.esua.epdc.dto.item.result.ItemDeptEvaluateResultDTO;
import com.elink.esua.epdc.modules.item.entity.ItemEvaluateDeptEntity;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import java.util.List;
import java.util.Map;
@ -61,4 +62,15 @@ public interface ItemEvaluateDeptService extends BaseService<ItemEvaluateDeptEnt
* @since 2019/9/27 14:42
*/
List<ItemDeptEvaluateResultDTO> listOfDeptEvaluateByItemId(String itemId);
/**
*
* 修改被评价部门名称
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
}

12
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemHandleProcessService.java

@ -20,6 +20,7 @@ package com.elink.esua.epdc.modules.item.service;
import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.dto.item.ItemHandleProcessDTO;
import com.elink.esua.epdc.modules.item.entity.ItemHandleProcessEntity;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
/**
@ -50,4 +51,15 @@ public interface ItemHandleProcessService extends BaseService<ItemHandleProcessE
* @since 2019/12/26 19:12
*/
void saveItemHandleProcess(ItemHandleProcessDTO dto);
/**
*
* 修改操作人部门名称
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
}

12
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemInformationService.java

@ -23,6 +23,7 @@ import com.elink.esua.epdc.dto.item.form.ItemInformationFormDTO;
import com.elink.esua.epdc.dto.item.result.ItemInformationResultDTO;
import com.elink.esua.epdc.modules.item.entity.ItemHandleProcessEntity;
import com.elink.esua.epdc.modules.item.entity.ItemInformationEntity;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@ -52,4 +53,15 @@ public interface ItemInformationService extends BaseService<ItemInformationEntit
* @Date: 2019/11/19 16:46
*/
Result<List<ItemInformationResultDTO>> notice(ItemInformationFormDTO formDto);
/**
*
* 修改处理部门名称
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
}

36
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java

@ -21,11 +21,14 @@ import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.events.EpdcEventsCommentsDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.item.ItemDTO;
import com.elink.esua.epdc.dto.item.ItemPendingHandleDTO;
import com.elink.esua.epdc.dto.item.form.*;
import com.elink.esua.epdc.dto.item.result.*;
import com.elink.esua.epdc.modules.item.entity.ItemEntity;
import com.elink.esua.epdc.modules.rocketmq.dto.CategoryModifyDTO;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import java.util.List;
import java.util.Map;
@ -321,4 +324,37 @@ public interface ItemService extends BaseService<ItemEntity> {
* @Date 2020/1/13 16:55
**/
Result<List<ItemHandleResultDTO>> queryHandleCategories();
/**
*
* 项目修改组织机构信息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
/**
*
* 修改分类信息
*
* @params []
* @return void
* @author liuchuang
* @since 2020/3/7 16:33
*/
void modifyCategoryInfo(CategoryModifyDTO dto);
/**
*
* 更新项目表党员群名称
*
* @params [groups]
* @return void
* @author liuchuang
* @since 2020/3/7 12:50
*/
void modifyPartyGroupName(List<GroupFormDTO> groups);
}

8
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemDeptServiceImpl.java

@ -25,6 +25,7 @@ import com.elink.esua.epdc.dto.item.result.ItemCirculationDeptResultDTO;
import com.elink.esua.epdc.modules.item.dao.ItemDeptDao;
import com.elink.esua.epdc.modules.item.entity.ItemDeptEntity;
import com.elink.esua.epdc.modules.item.service.ItemDeptService;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -86,4 +87,11 @@ public class ItemDeptServiceImpl extends BaseServiceImpl<ItemDeptDao, ItemDeptEn
return baseDao.selectListOfEvaluateDepts(itemId, deptId);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 更新部门名称
baseDao.updateDeptNameByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
}

8
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemEvaluateDeptServiceImpl.java

@ -22,6 +22,7 @@ import com.elink.esua.epdc.dto.item.result.ItemDeptEvaluateResultDTO;
import com.elink.esua.epdc.modules.item.dao.ItemEvaluateDeptDao;
import com.elink.esua.epdc.modules.item.entity.ItemEvaluateDeptEntity;
import com.elink.esua.epdc.modules.item.service.ItemEvaluateDeptService;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -67,4 +68,11 @@ public class ItemEvaluateDeptServiceImpl extends BaseServiceImpl<ItemEvaluateDep
return baseDao.selectListOfDeptEvaluateByItemId(itemId);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 更新部门名称
baseDao.updateDeptNameByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
}

8
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemHandleProcessServiceImpl.java

@ -22,6 +22,7 @@ import com.elink.esua.epdc.dto.item.ItemHandleProcessDTO;
import com.elink.esua.epdc.modules.item.dao.ItemHandleProcessDao;
import com.elink.esua.epdc.modules.item.entity.ItemHandleProcessEntity;
import com.elink.esua.epdc.modules.item.service.ItemHandleProcessService;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -49,4 +50,11 @@ public class ItemHandleProcessServiceImpl extends BaseServiceImpl<ItemHandleProc
baseDao.insertItemHandleProcess(dto);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 更新部门名称
baseDao.updateDeptNameByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
}

8
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemInformationServiceImpl.java

@ -32,6 +32,7 @@ import com.elink.esua.epdc.modules.item.entity.ItemHandleProcessEntity;
import com.elink.esua.epdc.modules.item.entity.ItemInformationEntity;
import com.elink.esua.epdc.modules.item.service.ItemHandleProcessService;
import com.elink.esua.epdc.modules.item.service.ItemInformationService;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -72,4 +73,11 @@ public class ItemInformationServiceImpl extends BaseServiceImpl<ItemInformationD
return new Result<List<ItemInformationResultDTO>>().ok(data);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 更新部门名称
baseDao.updateDeptNameByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
}

108
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java

@ -42,6 +42,7 @@ import com.elink.esua.epdc.dto.MenuNoticeDTO;
import com.elink.esua.epdc.dto.SysDeptDTO;
import com.elink.esua.epdc.dto.epdc.form.EpdcInformationFormDTO;
import com.elink.esua.epdc.dto.events.EpdcEventsCommentsDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.form.SmsNoticeFormDTO;
import com.elink.esua.epdc.dto.issue.result.IssueProgressResultDTO;
import com.elink.esua.epdc.dto.item.*;
@ -75,6 +76,8 @@ import com.elink.esua.epdc.modules.item.dao.ItemGridPlatformDao;
import com.elink.esua.epdc.modules.item.dao.ItemHandleProcessDao;
import com.elink.esua.epdc.modules.item.entity.*;
import com.elink.esua.epdc.modules.item.service.*;
import com.elink.esua.epdc.modules.rocketmq.dto.CategoryModifyDTO;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.modules.rolecategory.service.HandleRoleCategoryService;
import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
@ -1342,4 +1345,109 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem
return itemHandleResultDTOS;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 查询需要修改组织机构信息项目
List<ItemDTO> itemList = baseDao.selectListOfOrganizationInfo(dto.getDeptId().toString());
if (null != itemList && itemList.size() > 0) {
// 组织机构信息处理
List<ItemEntity> entities = handleOrganizationInfo(dto, itemList);
// 更新事件组织机构信息
updateBatchById(entities);
}
// 更新网格名称
baseDao.updateGridByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
/**
*
* 组织机构信息处理
*
* @params [dto, eventsList]
* @return java.util.List<com.elink.esua.epdc.modules.events.entity.EpdcEventsEntity>
* @author liuchuang
* @since 2020/3/7 1:17
*/
private List<ItemEntity> handleOrganizationInfo(OrganizationModifyDTO dto, List<ItemDTO> itemList) {
List<ItemEntity> entities = new ArrayList<>();
for (ItemDTO item: itemList) {
ItemEntity entity = new ItemEntity();
if (StringUtils.isNotEmpty(item.getParentDeptIds()) && StringUtils.isNotEmpty(item.getParentDeptNames())) {
List<String> parentDeptIds = Arrays.asList(item.getParentDeptIds().split(","));
List<String> parentDeptNames = Arrays.asList(item.getParentDeptNames().split("-"));
int index = parentDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && parentDeptNames.size() > index) {
parentDeptNames.set(index, dto.getNewDeptName());
entity.setId(item.getId());
entity.setParentDeptNames(StringUtils.join(parentDeptNames, "-"));
}
}
if (StringUtils.isNotEmpty(item.getAllDeptIds()) && StringUtils.isNotEmpty(item.getAllDeptNames())) {
List<String> allDeptIds = Arrays.asList(item.getAllDeptIds().split(","));
List<String> allDeptNames = Arrays.asList(item.getAllDeptNames().split("-"));
int index = allDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && allDeptNames.size() > index) {
allDeptNames.set(index, dto.getNewDeptName());
entity.setId(item.getId());
entity.setAllDeptNames(StringUtils.join(allDeptNames, "-"));
}
}
entities.add(entity);
}
return entities;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyCategoryInfo(CategoryModifyDTO dto) {
// 查询需要修改的分类信息
List<ItemDTO> itemList = baseDao.selectListOfCategoryInfo(dto.getOldCategoryName());
if (null != itemList && itemList.size() > 0) {
// 分类信息处理
List<ItemEntity> entities = handleCategoryInfo(dto, itemList);
// 更新分类信息
updateBatchById(entities);
}
}
/**
*
* 分类信息处理
*
* @params [dto, eventsList]
* @return java.util.List<com.elink.esua.epdc.modules.events.entity.ItemEntity>
* @author liuchuang
* @since 2020/3/7 17:00
*/
private List<ItemEntity> handleCategoryInfo(CategoryModifyDTO dto, List<ItemDTO> itemList) {
List<ItemEntity> entities = new ArrayList<>();
for (ItemDTO item: itemList) {
if (StringUtils.isNotEmpty(item.getCategoryFullName())) {
List<String> categoryFullName = Arrays.asList(item.getCategoryFullName().split("-"));
int index = categoryFullName.indexOf(dto.getOldCategoryName());
if (index >= 0) {
categoryFullName.set(index, dto.getNewCategoryName());
ItemEntity entity = new ItemEntity();
entity.setId(item.getId());
entity.setCategoryFullName(StringUtils.join(categoryFullName, "-"));
entities.add(entity);
}
}
}
return entities;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyPartyGroupName(List<GroupFormDTO> groups) {
// 更新项目表党员群名称
baseDao.updateBatchPartyGroupName(groups);
}
}

57
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rocketmq/consumer/CategoryModifyConsumer.java

@ -0,0 +1,57 @@
package com.elink.esua.epdc.modules.rocketmq.consumer;
import com.alibaba.fastjson.JSONObject;
import com.elink.esua.epdc.commons.tools.constant.RocketMqConstant;
import com.elink.esua.epdc.modules.events.service.EpdcEventsService;
import com.elink.esua.epdc.modules.issue.service.IssueService;
import com.elink.esua.epdc.modules.item.service.ItemService;
import com.elink.esua.epdc.modules.rocketmq.dto.CategoryModifyDTO;
import lombok.extern.slf4j.Slf4j;
import org.apache.rocketmq.common.message.MessageExt;
import org.apache.rocketmq.spring.annotation.MessageModel;
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
import org.apache.rocketmq.spring.core.RocketMQListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
*
* 分类信息修改-监听MQ消息
*
* @Authorliuchuang
* @Date2020/3/7 16:29
*/
@Slf4j
@Component
@RocketMQMessageListener(topic = RocketMqConstant.MQ_TOPIC_CATEGORY, consumerGroup = "${rocketmq.consumer.category-group}", messageModel = MessageModel.BROADCASTING)
public class CategoryModifyConsumer implements RocketMQListener<MessageExt> {
@Autowired
private EpdcEventsService epdcEventsService;
@Autowired
private IssueService issueService;
@Autowired
private ItemService itemService;
@Override
public void onMessage(MessageExt messageExt) {
log.info("EPDC-EVENTS-SERVER消费消息START:{topic:{}, msgId:{}}", RocketMqConstant.MQ_TOPIC_CATEGORY, messageExt.getMsgId());
try {
String charset = "UTF-8";
String body = new String(messageExt.getBody(), charset);
CategoryModifyDTO dto = JSONObject.parseObject(body, CategoryModifyDTO.class);
// 事件表修改分类信息
epdcEventsService.modifyCategoryInfo(dto);
// 议题表修改分类信息
issueService.modifyCategoryInfo(dto);
// 项目表修改分类信息
itemService.modifyCategoryInfo(dto);
log.info("EPDC-EVENTS-SERVER消费消息END:{topic:{}, msgId:{}, body:{}}", RocketMqConstant.MQ_TOPIC_CATEGORY, messageExt.getMsgId(), body);
} catch (Exception e) {
log.info("EPDC-EVENTS-SERVER消费消息失败:msgId:{}", messageExt.getMsgId());
e.printStackTrace();
}
}
}

83
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rocketmq/consumer/OrganizationModifyConsumer.java

@ -0,0 +1,83 @@
package com.elink.esua.epdc.modules.rocketmq.consumer;
import com.alibaba.fastjson.JSONObject;
import com.elink.esua.epdc.commons.tools.constant.RocketMqConstant;
import com.elink.esua.epdc.modules.events.service.EpdcEventsService;
import com.elink.esua.epdc.modules.issue.service.IssueHandleService;
import com.elink.esua.epdc.modules.issue.service.IssueService;
import com.elink.esua.epdc.modules.item.service.*;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import lombok.extern.slf4j.Slf4j;
import org.apache.rocketmq.common.message.MessageExt;
import org.apache.rocketmq.spring.annotation.MessageModel;
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
import org.apache.rocketmq.spring.core.RocketMQListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
*
* 组织机构信息修改-监听MQ消息
*
* @Authorliuchuang
* @Date2020/3/6 0:21
*/
@Slf4j
@Component
@RocketMQMessageListener(topic = RocketMqConstant.MQ_TOPIC_ORGANIZATION, consumerGroup = "${rocketmq.consumer.group}", messageModel = MessageModel.BROADCASTING)
public class OrganizationModifyConsumer implements RocketMQListener<MessageExt> {
@Autowired
private EpdcEventsService epdcEventsService;
@Autowired
private IssueService issueService;
@Autowired
private IssueHandleService issueHandleService;
@Autowired
private ItemService itemService;
@Autowired
private ItemDeptService itemDeptService;
@Autowired
private ItemEvaluateDeptService itemEvaluateDeptService;
@Autowired
private ItemHandleProcessService itemHandleProcessService;
@Autowired
private ItemInformationService itemInformationService;
@Override
public void onMessage(MessageExt messageExt) {
log.info("EPDC-EVENTS-SERVER消费消息START:{topic:{}, msgId:{}}", RocketMqConstant.MQ_TOPIC_ORGANIZATION, messageExt.getMsgId());
try {
String charset = "UTF-8";
String body = new String(messageExt.getBody(), charset);
OrganizationModifyDTO dto = JSONObject.parseObject(body, OrganizationModifyDTO.class);
// 事件修改组织机构信息
epdcEventsService.modifyOrganizationInfo(dto);
// 议题修改组织机构信息
issueService.modifyOrganizationInfo(dto);
// 议题处理进度修改操作人部门名称
issueHandleService.modifyOrganizationInfo(dto);
// 项目修改组织机构信息
itemService.modifyOrganizationInfo(dto);
// 项目部门关系表修改部门名称
itemDeptService.modifyOrganizationInfo(dto);
// 项目部门评价表修改被评价部门名称
itemEvaluateDeptService.modifyOrganizationInfo(dto);
// 项目处理进度表修改操作人部门
itemHandleProcessService.modifyOrganizationInfo(dto);
//项目消息表修改处理部门
itemInformationService.modifyOrganizationInfo(dto);
log.info("EPDC-EVENTS-SERVER消费消息END:{topic:{}, msgId:{}, body:{}}", RocketMqConstant.MQ_TOPIC_ORGANIZATION, messageExt.getMsgId(), body);
} catch (Exception e) {
log.info("EPDC-EVENTS-SERVER消费消息失败:msgId:{}", messageExt.getMsgId());
e.printStackTrace();
}
}
}

32
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rocketmq/dto/CategoryModifyDTO.java

@ -0,0 +1,32 @@
package com.elink.esua.epdc.modules.rocketmq.dto;
import lombok.Data;
import java.io.Serializable;
/**
*
* RocketMQ消息DTO
*
* @Authorliuchuang
* @Date2020/3/7 16:21
*/
@Data
public class CategoryModifyDTO implements Serializable {
private static final long serialVersionUID = -5012212832912602966L;
/**
* 分类ID
*/
private Long categoryId;
/**
* 旧分类名称
*/
private String oldCategoryName;
/**
* 新分类名称
*/
private String newCategoryName;
}

37
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rocketmq/dto/OrganizationModifyDTO.java

@ -0,0 +1,37 @@
package com.elink.esua.epdc.modules.rocketmq.dto;
import lombok.Data;
import java.io.Serializable;
/**
*
* 组织机构信息修改-接收MQ消息DTO
*
* @Authorliuchuang
* @Date2020/3/6 22:34
*/
@Data
public class OrganizationModifyDTO implements Serializable {
private static final long serialVersionUID = 6288521726874495827L;
/**
* 部门ID
*/
private Long deptId;
/**
* 旧部门名称
*/
private String oldDeptName;
/**
* 新部门名称
*/
private String newDeptName;
/**
* 部门类型
*/
private String typeKey;
}

43
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rocketmq/producer/CategoryModifyProducer.java

@ -0,0 +1,43 @@
package com.elink.esua.epdc.modules.rocketmq.producer;
import lombok.extern.slf4j.Slf4j;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.common.message.Message;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
*
* 分类信息修改-发送MQ消息
*
* @Authorliuchuang
* @Date2020/3/7 16:14
*/
@Slf4j
@Component
public class CategoryModifyProducer {
@Autowired
private RocketMQTemplate rocketMQTemplate;
/**
*
* 发送消息
*
* @params [topic, tag, keys, body]
* @return void
* @author liuchuang
* @since 2020/3/6 21:09
*/
public void sendMessage(String topic, String tag, String keys, String body) {
Message message = new Message(topic, tag, keys, body.getBytes());
try {
SendResult sendResult = rocketMQTemplate.getProducer().send(message);
log.info("EPDC-EVENTS-SERVER发送消息结果:{sendStatus:{}, topic:{}, msgId:{}}", sendResult.getSendStatus(), topic, sendResult.getMsgId());
} catch (Exception e) {
log.error("EPDC-EVENTS-SERVER发送消息异常:{topic:{}, tag:{}, keys:{}, body:{}}", topic, tag, keys, body);
e.printStackTrace();
}
}
}

8
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/application.yml

@ -104,3 +104,11 @@ wx:
normal: @wx.ma.appId@
# 工作端的appId
work: @work.wx.ma.appId@
rocketmq:
name-server: @rocketmq.name.server@
producer:
group: @rocketmq.producer.category.group@
consumer:
group: @rocketmq.consumer.group@
category-group: @rocketmq.consumer.category.group@

32
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/events/EpdcEventsDao.xml

@ -318,5 +318,37 @@
LIMIT #{pageIndex},#{pageSize}
</select>
<select id="selectListOfOrganizationInfo" resultType="com.elink.esua.epdc.dto.events.EpdcEventsDTO">
SELECT
ID,
PARENT_DEPT_IDS,
PARENT_DEPT_NAMES,
ALL_DEPT_IDS,
ALL_DEPT_NAMES
FROM
epdc_events
WHERE
FIND_IN_SET( #{deptId}, ALL_DEPT_IDS )
</select>
<update id="updateGridByDeptId">
UPDATE epdc_events SET GRID = #{newDeptName}, UPDATED_TIME = NOW() WHERE GRID_ID = #{deptId}
</update>
<select id="selectListOfCategoryInfo" resultType="com.elink.esua.epdc.dto.events.EpdcEventsDTO">
SELECT
ID,
CATEGORY_FULL_NAME
FROM
epdc_events
WHERE
FIND_IN_SET( #{oldCategoryName}, REPLACE(REPLACE(CATEGORY_FULL_NAME,',','uniquecode'),'-',',') )
</select>
<update id="updateBatchPartyGroupName" parameterType="com.elink.esua.epdc.dto.events.form.GroupFormDTO">
<foreach collection="groups" item="group" index="index" open="" close="" separator=";">
UPDATE epdc_events SET GROUP_NAME = #{group.groupName}, UPDATED_TIME = NOW() WHERE GROUP_ID = #{group.id}
</foreach>
</update>
</mapper>

33
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueDao.xml

@ -573,4 +573,37 @@
img.CREATED_TIME
</select>
<select id="selectListOfOrganizationInfo" resultType="com.elink.esua.epdc.dto.issue.IssueDTO">
SELECT
ID,
PARENT_DEPT_IDS,
PARENT_DEPT_NAMES,
ALL_DEPT_IDS,
ALL_DEPT_NAMES
FROM
epdc_issue
WHERE
FIND_IN_SET( #{deptId}, ALL_DEPT_IDS )
</select>
<update id="updateGridByDeptId">
UPDATE epdc_issue SET GRID = #{newDeptName}, UPDATED_TIME = NOW() WHERE GRID_ID = #{deptId}
</update>
<select id="selectListOfCategoryInfo" resultType="com.elink.esua.epdc.dto.issue.IssueDTO">
SELECT
ID,
CATEGORY_FULL_NAME
FROM
epdc_issue
WHERE
FIND_IN_SET( #{oldCategoryName}, REPLACE(REPLACE(CATEGORY_FULL_NAME,',','uniquecode'),'-',',') )
</select>
<update id="updateBatchPartyGroupName" parameterType="com.elink.esua.epdc.dto.events.form.GroupFormDTO">
<foreach collection="groups" item="group" index="index" open="" close="" separator=";">
UPDATE epdc_issue SET GROUP_NAME = #{group.groupName}, UPDATED_TIME = NOW() WHERE GROUP_ID = #{group.id}
</foreach>
</update>
</mapper>

3
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueHandleDao.xml

@ -3,4 +3,7 @@
<mapper namespace="com.elink.esua.epdc.modules.issue.dao.IssueHandleDao">
<update id="updateDeptNameByDeptId">
UPDATE epdc_issue_handle SET HANDLER_DEPT = #{newDeptName}, UPDATED_TIME = NOW() WHERE HANDLER_DEPT_ID = #{deptId}
</update>
</mapper>

33
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml

@ -890,4 +890,37 @@
AND d.ITEM_ID = #{itemId}
</if>
</select>
<select id="selectListOfOrganizationInfo" resultType="com.elink.esua.epdc.dto.item.ItemDTO">
SELECT
ID,
PARENT_DEPT_IDS,
PARENT_DEPT_NAMES,
ALL_DEPT_IDS,
ALL_DEPT_NAMES
FROM
epdc_item
WHERE
FIND_IN_SET( #{deptId}, ALL_DEPT_IDS )
</select>
<update id="updateGridByDeptId">
UPDATE epdc_item SET GRID = #{newDeptName}, UPDATED_TIME = NOW() WHERE GRID_ID = #{deptId}
</update>
<select id="selectListOfCategoryInfo" resultType="com.elink.esua.epdc.dto.item.ItemDTO">
SELECT
ID,
CATEGORY_FULL_NAME
FROM
epdc_item
WHERE
FIND_IN_SET( #{oldCategoryName}, REPLACE(REPLACE(CATEGORY_FULL_NAME,',','uniquecode'),'-',',') )
</select>
<update id="updateBatchPartyGroupName" parameterType="com.elink.esua.epdc.dto.events.form.GroupFormDTO">
<foreach collection="groups" item="group" index="index" open="" close="" separator=";">
UPDATE epdc_item SET GROUP_NAME = #{group.groupName}, UPDATED_TIME = NOW() WHERE GROUP_ID = #{group.id}
</foreach>
</update>
</mapper>

4
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDeptDao.xml

@ -26,4 +26,8 @@
AND ITEM_ID = #{itemId}
AND DEPT_ID <![CDATA[ <> ]]> #{deptId}
</select>
<update id="updateDeptNameByDeptId">
UPDATE epdc_item_dept SET DEPT_NAME = #{newDeptName}, UPDATED_TIME = NOW() WHERE DEPT_ID = #{deptId}
</update>
</mapper>

4
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemEvaluateDeptDao.xml

@ -24,4 +24,8 @@
CREATED_TIME DESC
</select>
<update id="updateDeptNameByDeptId">
UPDATE epdc_item_evaluate_dept SET DEPT_NAME = #{newDeptName}, UPDATED_TIME = NOW() WHERE DEPT_ID = #{deptId}
</update>
</mapper>

4
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemHandleProcessDao.xml

@ -6,4 +6,8 @@
INSERT INTO epdc_item_handle_process ( ID, ITEM_ID, STATE, HANDLE_ADVICE, OUT_HANDLE_ADVICE, HANDLER_DEPT, REVISION, CREATED_BY, CREATED_TIME, UPDATED_BY, UPDATED_TIME, DEL_FLAG )
VALUES (#{id}, #{itemId}, #{state}, #{handleAdvice}, #{outHandleAdvice}, #{handlerDept}, 0, '网格化平台', #{createdTime}, '网格化平台', #{updatedTime}, '0')
</insert>
<update id="updateDeptNameByDeptId">
UPDATE epdc_item_handle_process SET HANDLER_DEPT = #{newDeptName}, UPDATED_TIME = NOW() WHERE HANDLER_DEPT_ID = #{deptId}
</update>
</mapper>

4
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemInformationDao.xml

@ -53,4 +53,8 @@
#{deptIdItem}
</foreach>
</update>
<update id="updateDeptNameByDeptId">
UPDATE epdc_item_information SET HANDLE_DEPT = #{newDeptName}, UPDATED_TIME = NOW() WHERE HANDLE_DEPT_ID = #{deptId}
</update>
</mapper>

2
esua-epdc/epdc-module/epdc-events/epdc-events.iml

@ -45,5 +45,7 @@
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-jcl:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
</component>
</module>

16
esua-epdc/epdc-module/epdc-group/epdc-group-server/epdc-group-server.iml

@ -150,7 +150,7 @@
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.11.2" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.26" level="project" />
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.3.2" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.9.9" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.9.9" level="project" />
@ -208,6 +208,18 @@
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.9" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.11" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.11" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-spring-boot-starter:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-spring-boot:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-client:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-common:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-acl:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-remoting:4.4.0" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-tcnative-boringssl-static:2.0.25.Final" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-logging:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-srvutil:4.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-cli:commons-cli:1.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-messaging:5.1.9.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.1.7.RELEASE" level="project" />
@ -226,5 +238,7 @@
<orderEntry type="library" scope="TEST" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
</component>
</module>

12
esua-epdc/epdc-module/epdc-group/epdc-group-server/pom.xml

@ -51,6 +51,12 @@
<artifactId>feign-httpclient</artifactId>
<version>10.3.0</version>
</dependency>
<!--RocketMq-->
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-starter</artifactId>
<version>2.0.2</version>
</dependency>
</dependencies>
<build>
@ -130,6 +136,9 @@
<nacos.register-enabled>false</nacos.register-enabled>
<nacos.server-addr>47.104.224.45:8848</nacos.server-addr>
<!--RocketMQ-->
<rocketmq.name.server>47.104.85.99:9876;114.215.125.123:9876</rocketmq.name.server>
<rocketmq.consumer.group>jinshui-organizationGroup</rocketmq.consumer.group>
</properties>
</profile>
@ -153,6 +162,9 @@
<nacos.register-enabled>true</nacos.register-enabled>
<nacos.server-addr>47.104.224.45:8848</nacos.server-addr>
<!--RocketMQ-->
<rocketmq.name.server>47.104.85.99:9876;114.215.125.123:9876</rocketmq.name.server>
<rocketmq.consumer.group>jinshui-organizationGroup</rocketmq.consumer.group>
</properties>
</profile>

15
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/feign/EventFeignClient.java

@ -4,12 +4,15 @@ import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.comment.EpdcCommentsAndAttitudeFromTopicFormDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.issue.IssueDTO;
import com.elink.esua.epdc.modules.feign.fallback.EventFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import java.util.List;
/**
*
* 事件模块调用
@ -43,4 +46,16 @@ public interface EventFeignClient {
*/
@PostMapping(value = "events/eventcomment/receive", consumes = MediaType.APPLICATION_JSON_VALUE)
Result receiveTopicCommentAndAttitude(EpdcCommentsAndAttitudeFromTopicFormDTO formDto);
/**
*
* 更新事件表议题表项目表党员群名称
*
* @params [groups]
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @author liuchuang
* @since 2020/3/7 12:39
*/
@PostMapping(value = "events/epdc-app/event/modifyGroupName", consumes = MediaType.APPLICATION_JSON_VALUE)
Result modifyPartyGroupName(List<GroupFormDTO> groups);
}

8
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/feign/fallback/EventFeignClientFallback.java

@ -5,10 +5,13 @@ import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.comment.EpdcCommentsAndAttitudeFromTopicFormDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.issue.IssueDTO;
import com.elink.esua.epdc.modules.feign.EventFeignClient;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @Authorliuchuang
* @Date2019/11/8 13:36
@ -25,4 +28,9 @@ public class EventFeignClientFallback implements EventFeignClient {
public Result receiveTopicCommentAndAttitude(EpdcCommentsAndAttitudeFromTopicFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "receiveTopicCommentAndAttitude", formDto);
}
@Override
public Result modifyPartyGroupName(List<GroupFormDTO> groups) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "checkTopicToIssueFlag", groups);
}
}

33
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/dao/GroupDao.java

@ -166,4 +166,37 @@ public interface GroupDao extends BaseDao<GroupEntity> {
* @Date: 2020-01-08
*/
String queryGroupUserMOBILE(String groupId);
/**
*
* 查询需要修改组织机构信息邻里党群
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.group.GroupDTO>
* @author liuchuang
* @since 2020/3/7 2:08
*/
List<GroupDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新网格名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateGridByDeptId(String newDeptName, Long deptId);
/**
*
* 查询需要修改名称的党员群
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.group.GroupDTO>
* @author liuchuang
* @since 2020/3/7 2:08
*/
List<GroupDTO> selectListOfPartyGroups(String deptId);
}

12
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/GroupService.java

@ -25,6 +25,7 @@ import com.elink.esua.epdc.dto.group.*;
import com.elink.esua.epdc.dto.group.form.*;
import com.elink.esua.epdc.dto.group.result.*;
import com.elink.esua.epdc.modules.group.entity.GroupEntity;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import java.util.List;
import java.util.Map;
@ -292,4 +293,15 @@ public interface GroupService extends BaseService<GroupEntity> {
* @Date 2019/12/19 13:04
**/
Result<List<String>> listPartyMemberGridId();
/**
*
* 邻里党群修改组织机构信息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
}

107
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java

@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.constant.OrganizationTypeConstant;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
@ -33,6 +34,7 @@ import com.elink.esua.epdc.dto.constant.GroupConstant;
import com.elink.esua.epdc.dto.constant.GroupNoticeConstant;
import com.elink.esua.epdc.dto.epdc.form.EpdcInformationFormDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcGridUserResultDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
import com.elink.esua.epdc.dto.form.SmsNoticeFormDTO;
import com.elink.esua.epdc.dto.group.*;
import com.elink.esua.epdc.dto.enums.GroupStateEnum;
@ -42,13 +44,16 @@ import com.elink.esua.epdc.dto.group.result.*;
import com.elink.esua.epdc.enums.ItemHandleCategoryEnum;
import com.elink.esua.epdc.modules.async.IssueOverseeResultsTask;
import com.elink.esua.epdc.modules.async.NewsTask;
import com.elink.esua.epdc.modules.feign.EventFeignClient;
import com.elink.esua.epdc.modules.feign.UserFeignClient;
import com.elink.esua.epdc.modules.group.dao.GroupDao;
import com.elink.esua.epdc.modules.group.entity.GroupEntity;
import com.elink.esua.epdc.modules.group.entity.UserGroupEntity;
import com.elink.esua.epdc.modules.group.service.GroupService;
import com.elink.esua.epdc.modules.group.service.UserGroupService;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.modules.topic.service.GroupTopicUserReadService;
import com.elink.esua.epdc.modules.topic.service.TopicService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -84,6 +89,12 @@ public class GroupServiceImpl extends BaseServiceImpl<GroupDao, GroupEntity> imp
@Autowired
private IssueOverseeResultsTask issueOverseeResultsTask;
@Autowired
private TopicService topicService;
@Autowired
private EventFeignClient eventFeignClient;
@Override
public PageData<GroupManagementDTO> page(Map<String, Object> params) {
IPage<GroupManagementDTO> page = getPage(params);
@ -541,4 +552,100 @@ public class GroupServiceImpl extends BaseServiceImpl<GroupDao, GroupEntity> imp
}
issueOverseeResultsTask.sendSmsNotice(sms);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 查询需要修改组织机构信息邻里党群
List<GroupDTO> groupList = baseDao.selectListOfOrganizationInfo(dto.getDeptId().toString());
if (null != groupList && groupList.size() > 0) {
// 组织机构信息处理
List<GroupEntity> entities = handleOrganizationInfo(dto, groupList);
// 更新邻里党群组织机构信息
updateBatchById(entities);
}
// 更新网格名称
baseDao.updateGridByDeptId(dto.getNewDeptName(), dto.getDeptId());
// 修改网格党员群名称
if (OrganizationTypeConstant.ORG_TYPE_COMMUNITY_PARTY.equals(dto.getTypeKey())
|| OrganizationTypeConstant.ORG_TYPE_GRID_PARTY.equals(dto.getTypeKey())) {
// 查询需要修改名称的党员群
List<GroupDTO> partyGroups = baseDao.selectListOfPartyGroups(dto.getDeptId().toString());
if (null != partyGroups && partyGroups.size() > 0) {
List<GroupEntity> partyEntities = createPartyGroupName(partyGroups);
// 更新党员群名称
updateBatchById(partyEntities);
// 更新话题表党员群名称
topicService.modifyPartyGroupNameByGroupId(ConvertUtils.sourceToTarget(partyEntities, GroupDTO.class));
// 更新事件表、议题表、项目表党员群名称
eventFeignClient.modifyPartyGroupName(ConvertUtils.sourceToTarget(partyEntities, GroupFormDTO.class));
}
}
}
/**
*
* 组织机构信息处理
*
* @params [dto, topicList]
* @return java.util.List<com.elink.esua.epdc.modules.group.entity.GroupEntity>
* @author liuchuang
* @since 2020/3/7 2:14
*/
private List<GroupEntity> handleOrganizationInfo(OrganizationModifyDTO dto, List<GroupDTO> groupList) {
List<GroupEntity> entities = new ArrayList<>();
for (GroupDTO group: groupList) {
GroupEntity entity = new GroupEntity();
if (StringUtils.isNotEmpty(group.getParentDeptIds()) && StringUtils.isNotEmpty(group.getParentDeptNames())) {
List<String> parentDeptIds = Arrays.asList(group.getParentDeptIds().split(","));
List<String> parentDeptNames = Arrays.asList(group.getParentDeptNames().split("-"));
int index = parentDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && parentDeptNames.size() > index) {
parentDeptNames.set(index, dto.getNewDeptName());
entity.setId(group.getId());
entity.setParentDeptNames(StringUtils.join(parentDeptNames, "-"));
}
}
if (StringUtils.isNotEmpty(group.getAllDeptIds()) && StringUtils.isNotEmpty(group.getAllDeptNames())) {
List<String> allDeptIds = Arrays.asList(group.getAllDeptIds().split(","));
List<String> allDeptNames = Arrays.asList(group.getAllDeptNames().split("-"));
int index = allDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && allDeptNames.size() > index) {
allDeptNames.set(index, dto.getNewDeptName());
entity.setId(group.getId());
entity.setAllDeptNames(StringUtils.join(allDeptNames, "-"));
}
}
entities.add(entity);
}
return entities;
}
/**
*
* 生成新的党员群名称
*
* @params [partyGroups]
* @return java.util.List<com.elink.esua.epdc.modules.group.entity.GroupEntity>
* @author liuchuang
* @since 2020/3/7 12:08
*/
private List<GroupEntity> createPartyGroupName(List<GroupDTO> partyGroups) {
List<GroupEntity> groupEntities = new ArrayList<>();
for (GroupDTO group: partyGroups) {
String[] allDeptNames = group.getAllDeptNames().split("-");
int len = allDeptNames.length;
if (len == 4) {
GroupEntity entity = new GroupEntity();
entity.setId(group.getId());
entity.setGroupName(allDeptNames[len-2]+allDeptNames[len-1]+"党员群");
groupEntities.add(entity);
}
}
return groupEntities;
}
}

51
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/rocketmq/consumer/OrganizationModifyConsumer.java

@ -0,0 +1,51 @@
package com.elink.esua.epdc.modules.rocketmq.consumer;
import com.alibaba.fastjson.JSONObject;
import com.elink.esua.epdc.commons.tools.constant.RocketMqConstant;
import com.elink.esua.epdc.modules.group.service.GroupService;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.modules.topic.service.TopicService;
import lombok.extern.slf4j.Slf4j;
import org.apache.rocketmq.common.message.MessageExt;
import org.apache.rocketmq.spring.annotation.MessageModel;
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
import org.apache.rocketmq.spring.core.RocketMQListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
*
* 组织机构信息修改-监听MQ消息
*
* @Authorliuchuang
* @Date2020/3/7 1:54
*/
@Slf4j
@Component
@RocketMQMessageListener(topic = RocketMqConstant.MQ_TOPIC_ORGANIZATION, consumerGroup = "${rocketmq.consumer.group}", messageModel = MessageModel.BROADCASTING)
public class OrganizationModifyConsumer implements RocketMQListener<MessageExt> {
@Autowired
private GroupService groupService;
@Autowired
private TopicService topicService;
@Override
public void onMessage(MessageExt messageExt) {
log.info("EPDC-GROUP-SERVER消费消息START:{topic:{}, msgId:{}}", RocketMqConstant.MQ_TOPIC_ORGANIZATION, messageExt.getMsgId());
try {
String charset = "UTF-8";
String body = new String(messageExt.getBody(), charset);
OrganizationModifyDTO dto = JSONObject.parseObject(body, OrganizationModifyDTO.class);
// 话题修改组织机构信息
topicService.modifyOrganizationInfo(dto);
// 邻里党群修改组织机构信息
groupService.modifyOrganizationInfo(dto);
log.info("EPDC-GROUP-SERVER消费消息END:{topic:{}, msgId:{}, body:{}}", RocketMqConstant.MQ_TOPIC_ORGANIZATION, messageExt.getMsgId(), body);
} catch (Exception e) {
log.info("EPDC-GROUP-SERVER消费消息失败:msgId:{}", messageExt.getMsgId());
e.printStackTrace();
}
}
}

37
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/rocketmq/dto/OrganizationModifyDTO.java

@ -0,0 +1,37 @@
package com.elink.esua.epdc.modules.rocketmq.dto;
import lombok.Data;
import java.io.Serializable;
/**
*
* 组织机构信息修改-接收MQ消息DTO
*
* @Authorliuchuang
* @Date2020/3/7 1:53
*/
@Data
public class OrganizationModifyDTO implements Serializable {
private static final long serialVersionUID = 6288521726874495827L;
/**
* 部门ID
*/
private Long deptId;
/**
* 旧部门名称
*/
private String oldDeptName;
/**
* 新部门名称
*/
private String newDeptName;
/**
* 部门类型
*/
private String typeKey;
}

35
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/dao/TopicDao.java

@ -19,6 +19,7 @@ package com.elink.esua.epdc.modules.topic.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO;
import com.elink.esua.epdc.dto.group.GroupDTO;
import com.elink.esua.epdc.dto.topic.TopicDTO;
import com.elink.esua.epdc.dto.topic.TopicDetailDTO;
import com.elink.esua.epdc.dto.topic.form.TopicListFormDTO;
@ -26,6 +27,7 @@ import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO;
import com.elink.esua.epdc.dto.topic.result.TopicListResultDTO;
import com.elink.esua.epdc.modules.topic.entity.TopicEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
@ -99,4 +101,37 @@ public interface TopicDao extends BaseDao<TopicEntity> {
*/
TopicDetailDTO selectOneOfTopic(String id);
/**
*
* 查询需要修改组织机构信息事件
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.topic.TopicDTO>
* @author liuchuang
* @since 2020/3/7 2:08
*/
List<TopicDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新网格名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateGridByDeptId(String newDeptName, Long deptId);
/**
*
* 批量更新话题表党员群名称
*
* @params [groups]
* @return void
* @author liuchuang
* @since 2020/3/7 12:22
*/
void updateBatchPartyGroupNameByGroupId(@Param("groups") List<GroupDTO> groups);
}

24
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/TopicService.java

@ -20,12 +20,14 @@ package com.elink.esua.epdc.modules.topic.service;
import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.group.GroupDTO;
import com.elink.esua.epdc.dto.group.result.TopicAuditRecordResultDTO;
import com.elink.esua.epdc.dto.topic.TopicDTO;
import com.elink.esua.epdc.dto.topic.TopicDetailDTO;
import com.elink.esua.epdc.dto.topic.form.*;
import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO;
import com.elink.esua.epdc.dto.topic.result.TopicListResultDTO;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.modules.topic.entity.TopicEntity;
import java.util.List;
@ -203,4 +205,26 @@ public interface TopicService extends BaseService<TopicEntity> {
* @since 2019/11/12 10:24
*/
TopicDetailDTO getDetail(String id);
/**
*
* 话题修改组织机构信息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
/**
*
* 更新话题表党员群名称
*
* @params [groups]
* @return void
* @author liuchuang
* @since 2020/3/7 12:20
*/
void modifyPartyGroupNameByGroupId(List<GroupDTO> groups);
}

63
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/impl/TopicServiceImpl.java

@ -53,6 +53,7 @@ import com.elink.esua.epdc.modules.comment.service.TopicCommentService;
import com.elink.esua.epdc.modules.feign.EventFeignClient;
import com.elink.esua.epdc.modules.group.service.GroupService;
import com.elink.esua.epdc.modules.group.service.UserGroupService;
import com.elink.esua.epdc.modules.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.modules.topic.dao.TopicDao;
import com.elink.esua.epdc.modules.topic.entity.GroupTopicUserReadEntity;
import com.elink.esua.epdc.modules.topic.entity.TopicAuditRecordEntity;
@ -470,4 +471,66 @@ public class TopicServiceImpl extends BaseServiceImpl<TopicDao, TopicEntity> imp
newsTask.insertUserInformation(topicUserNotice);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 查询需要修改组织机构信息话题
List<TopicDTO> topicList = baseDao.selectListOfOrganizationInfo(dto.getDeptId().toString());
if (null != topicList && topicList.size() > 0) {
// 组织机构信息处理
List<TopicEntity> entities = handleOrganizationInfo(dto, topicList);
// 更新事件组织机构信息
updateBatchById(entities);
}
// 更新网格名称
baseDao.updateGridByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
/**
*
* 组织机构信息处理
*
* @params [dto, topicList]
* @return java.util.List<com.elink.esua.epdc.modules.topic.entity.TopicEntity>
* @author liuchuang
* @since 2020/3/7 2:14
*/
private List<TopicEntity> handleOrganizationInfo(OrganizationModifyDTO dto, List<TopicDTO> topicList) {
List<TopicEntity> entities = new ArrayList<>();
for (TopicDTO topic: topicList) {
TopicEntity entity = new TopicEntity();
if (StringUtils.isNotEmpty(topic.getParentDeptIds()) && StringUtils.isNotEmpty(topic.getParentDeptNames())) {
List<String> parentDeptIds = Arrays.asList(topic.getParentDeptIds().split(","));
List<String> parentDeptNames = Arrays.asList(topic.getParentDeptNames().split("-"));
int index = parentDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && parentDeptNames.size() > index) {
parentDeptNames.set(index, dto.getNewDeptName());
entity.setId(topic.getId());
entity.setParentDeptNames(StringUtils.join(parentDeptNames, "-"));
}
}
if (StringUtils.isNotEmpty(topic.getAllDeptIds()) && StringUtils.isNotEmpty(topic.getAllDeptNames())) {
List<String> allDeptIds = Arrays.asList(topic.getAllDeptIds().split(","));
List<String> allDeptNames = Arrays.asList(topic.getAllDeptNames().split("-"));
int index = allDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && allDeptNames.size() > index) {
allDeptNames.set(index, dto.getNewDeptName());
entity.setId(topic.getId());
entity.setAllDeptNames(StringUtils.join(allDeptNames, "-"));
}
}
entities.add(entity);
}
return entities;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyPartyGroupNameByGroupId(List<GroupDTO> groups) {
baseDao.updateBatchPartyGroupNameByGroupId(groups);
}
}

5
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/application.yml

@ -85,3 +85,8 @@ mybatis-plus:
cache-enabled: false
call-setters-on-nulls: true
jdbc-type-for-null: 'null'
rocketmq:
name-server: @rocketmq.name.server@
consumer:
group: @rocketmq.consumer.group@

28
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/GroupDao.xml

@ -284,4 +284,32 @@
and LORD_FLAG = 1
and DEL_FLAG = 0
</select>
<select id="selectListOfOrganizationInfo" resultType="com.elink.esua.epdc.dto.group.GroupDTO">
SELECT
ID,
PARENT_DEPT_IDS,
PARENT_DEPT_NAMES,
ALL_DEPT_IDS,
ALL_DEPT_NAMES
FROM
epdc_group
WHERE
FIND_IN_SET( #{deptId}, ALL_DEPT_IDS )
</select>
<update id="updateGridByDeptId">
UPDATE epdc_group SET GRID = #{newDeptName}, UPDATED_TIME = NOW() WHERE GRID_ID = #{deptId}
</update>
<select id="selectListOfPartyGroups" resultType="com.elink.esua.epdc.dto.group.GroupDTO">
SELECT
ID,
ALL_DEPT_NAMES
FROM
epdc_group
WHERE
FIND_IN_SET( #{deptId}, ALL_DEPT_IDS )
AND GROUP_CATEGORY = '0'
</select>
</mapper>

23
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/topic/TopicDao.xml

@ -264,4 +264,27 @@
AND tp.ID = #{id}
</select>
<select id="selectListOfOrganizationInfo" resultType="com.elink.esua.epdc.dto.topic.TopicDTO">
SELECT
ID,
PARENT_DEPT_IDS,
PARENT_DEPT_NAMES,
ALL_DEPT_IDS,
ALL_DEPT_NAMES
FROM
epdc_topic
WHERE
FIND_IN_SET( #{deptId}, ALL_DEPT_IDS )
</select>
<update id="updateGridByDeptId">
UPDATE epdc_topic SET GRID = #{newDeptName} WHERE GRID_ID = #{deptId}
</update>
<update id="updateBatchPartyGroupNameByGroupId" parameterType="com.elink.esua.epdc.dto.group.GroupDTO">
<foreach collection="groups" item="group" index="index" open="" close="" separator=";">
UPDATE epdc_topic SET GROUP_NAME = #{group.groupName}, UPDATED_TIME = NOW() WHERE GROUP_ID = #{group.id}
</foreach>
</update>
</mapper>

2
esua-epdc/epdc-module/epdc-group/epdc-group.iml

@ -45,5 +45,7 @@
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-jcl:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
</component>
</module>

16
esua-epdc/epdc-module/epdc-news/epdc-news-server/epdc-news-server.iml

@ -117,7 +117,7 @@
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.11.2" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.26" level="project" />
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.3.2" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.9.9" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.9.9" level="project" />
@ -199,6 +199,18 @@
<orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-metadata:1.2.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.mapstruct:mapstruct:1.1.0.Final" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger-ui:2.7.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-spring-boot-starter:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-spring-boot:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-client:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-common:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-acl:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-remoting:4.4.0" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-tcnative-boringssl-static:2.0.25.Final" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-logging:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-srvutil:4.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-cli:commons-cli:1.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-messaging:5.1.9.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.1.7.RELEASE" level="project" />
@ -217,5 +229,7 @@
<orderEntry type="library" scope="TEST" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
</component>
</module>

13
esua-epdc/epdc-module/epdc-news/epdc-news-server/pom.xml

@ -45,7 +45,12 @@
<artifactId>epdc-admin-client</artifactId>
<version>1.0.0</version>
</dependency>
<!--RocketMq-->
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-starter</artifactId>
<version>2.0.2</version>
</dependency>
</dependencies>
<build>
@ -125,6 +130,9 @@
<nacos.register-enabled>false</nacos.register-enabled>
<nacos.server-addr>47.104.224.45:8848</nacos.server-addr>
<!--RocketMQ-->
<rocketmq.name.server>47.104.85.99:9876;114.215.125.123:9876</rocketmq.name.server>
<rocketmq.consumer.group>jinshui-organizationGroup</rocketmq.consumer.group>
</properties>
</profile>
@ -148,6 +156,9 @@
<nacos.register-enabled>true</nacos.register-enabled>
<nacos.server-addr>47.104.224.45:8848</nacos.server-addr>
<!--RocketMQ-->
<rocketmq.name.server>47.104.85.99:9876;114.215.125.123:9876</rocketmq.name.server>
<rocketmq.consumer.group>jinshui-organizationGroup</rocketmq.consumer.group>
</properties>
</profile>

22
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/BannerDao.java

@ -64,4 +64,26 @@ public interface BannerDao extends BaseDao<BannerEntity> {
*/
void updateSoltOut(String newsId);
/**
*
* 查询需要修改的组织机构信息
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.BannerDTO>
* @author liuchuang
* @since 2020/3/7 14:37
*/
List<BannerDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新部门名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateDeptNameByDeptId(String newDeptName, Long deptId);
}

22
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/NewsDao.java

@ -94,4 +94,26 @@ public interface NewsDao extends BaseDao<NewsEntity> {
* @date 2020/2/1 11:00
*/
List<NewsDTO> selectAllPage(Map<String, Object> params);
/**
*
* 查询需要修改组织机构信息
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.NewsDTO>
* @author liuchuang
* @since 2020/3/7 14:44
*/
List<NewsDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新部门名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateDeptNameByDeptId(String newDeptName, Long deptId);
}

22
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/NoticeDao.java

@ -87,4 +87,26 @@ public interface NoticeDao extends BaseDao<NoticeEntity> {
* @date 2020/2/1 11:28
*/
List<NoticeDTO> selectListByDeptId(Map<String, Object> params);
/**
*
* 查询需要修改组织机构信息
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.NoticeDTO>
* @author liuchuang
* @since 2020/3/7 14:54
*/
List<NoticeDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新部门名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateDeptNameByDeptId(String newDeptName, Long deptId);
}

57
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/rocketmq/consumer/OrganizationModifyConsumer.java

@ -0,0 +1,57 @@
package com.elink.esua.epdc.rocketmq.consumer;
import com.alibaba.fastjson.JSONObject;
import com.elink.esua.epdc.commons.tools.constant.RocketMqConstant;
import com.elink.esua.epdc.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.service.BannerService;
import com.elink.esua.epdc.service.NewsService;
import com.elink.esua.epdc.service.NoticeService;
import lombok.extern.slf4j.Slf4j;
import org.apache.rocketmq.common.message.MessageExt;
import org.apache.rocketmq.spring.annotation.MessageModel;
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
import org.apache.rocketmq.spring.core.RocketMQListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
*
* 组织机构信息修改-监听MQ消息
*
* @Authorliuchuang
* @Date2020/3/7 13:44
*/
@Slf4j
@Component
@RocketMQMessageListener(topic = RocketMqConstant.MQ_TOPIC_ORGANIZATION, consumerGroup = "${rocketmq.consumer.group}", messageModel = MessageModel.BROADCASTING)
public class OrganizationModifyConsumer implements RocketMQListener<MessageExt> {
@Autowired
private BannerService bannerService;
@Autowired
private NewsService newsService;
@Autowired
private NoticeService noticeService;
@Override
public void onMessage(MessageExt messageExt) {
log.info("EPDC-NEWS-SERVER消费消息START:{topic:{}, msgId:{}}", RocketMqConstant.MQ_TOPIC_ORGANIZATION, messageExt.getMsgId());
try {
String charset = "UTF-8";
String body = new String(messageExt.getBody(), charset);
OrganizationModifyDTO dto = JSONObject.parseObject(body, OrganizationModifyDTO.class);
// banner表修改组织机构信息
bannerService.modifyOrganizationInfo(dto);
// 新闻表修改组织机构信息
newsService.modifyOrganizationInfo(dto);
// 通知表修改组织机构信息
noticeService.modifyOrganizationInfo(dto);
log.info("EPDC-NEWS-SERVER消费消息END:{topic:{}, msgId:{}, body:{}}", RocketMqConstant.MQ_TOPIC_ORGANIZATION, messageExt.getMsgId(), body);
} catch (Exception e) {
log.info("EPDC-NEWS-SERVER消费消息失败:msgId:{}", messageExt.getMsgId());
e.printStackTrace();
}
}
}

37
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/rocketmq/dto/OrganizationModifyDTO.java

@ -0,0 +1,37 @@
package com.elink.esua.epdc.rocketmq.dto;
import lombok.Data;
import java.io.Serializable;
/**
*
* 组织机构信息修改-接收MQ消息DTO
*
* @Authorliuchuang
* @Date2020/3/7 13:43
*/
@Data
public class OrganizationModifyDTO implements Serializable {
private static final long serialVersionUID = -5692602006311937083L;
/**
* 部门ID
*/
private Long deptId;
/**
* 旧部门名称
*/
private String oldDeptName;
/**
* 新部门名称
*/
private String newDeptName;
/**
* 部门类型
*/
private String typeKey;
}

12
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/BannerService.java

@ -24,6 +24,7 @@ import com.elink.esua.epdc.dto.BannerDTO;
import com.elink.esua.epdc.dto.epdc.form.EpdcBannerListFromDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcBannerListResultDTO;
import com.elink.esua.epdc.entity.BannerEntity;
import com.elink.esua.epdc.rocketmq.dto.OrganizationModifyDTO;
import java.util.List;
import java.util.Map;
@ -131,4 +132,15 @@ public interface BannerService extends BaseService<BannerEntity> {
* @date 2020/1/8 18:14
*/
void updateSoltOut(String newsId);
/**
*
* 修改组织机构信息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
}

12
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NewsService.java

@ -28,6 +28,7 @@ import com.elink.esua.epdc.dto.epdc.form.EpdcNewsStatementFromDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcNewsDetailResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcNewsListResultDTO;
import com.elink.esua.epdc.entity.NewsEntity;
import com.elink.esua.epdc.rocketmq.dto.OrganizationModifyDTO;
import java.util.List;
import java.util.Map;
@ -197,4 +198,15 @@ public interface NewsService extends BaseService<NewsEntity> {
* @date 2020/2/1 10:48
*/
PageData<NewsDTO> allPage(Map<String, Object> params);
/**
*
* 修改组织机构信息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
}

12
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NoticeService.java

@ -26,6 +26,7 @@ import com.elink.esua.epdc.dto.epdc.form.EpdcNoticeListFormDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcNoticeDetailResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcNoticeListResultDTO;
import com.elink.esua.epdc.entity.NoticeEntity;
import com.elink.esua.epdc.rocketmq.dto.OrganizationModifyDTO;
import java.util.List;
import java.util.Map;
@ -147,4 +148,15 @@ public interface NoticeService extends BaseService<NoticeEntity> {
* @date 2020/2/1 11:37
*/
PageData<NoticeDTO> pageForReadOnly(Map<String, Object> params);
/**
*
* 修改组织机构信息
*
* @params [dto]
* @return void
* @author liuchuang
* @since 2020/3/7 1:23
*/
void modifyOrganizationInfo(OrganizationModifyDTO dto);
}

58
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/BannerServiceImpl.java

@ -38,6 +38,7 @@ import com.elink.esua.epdc.dto.epdc.form.EpdcBannerListFromDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcBannerListResultDTO;
import com.elink.esua.epdc.entity.BannerEntity;
import com.elink.esua.epdc.feign.AdminFeignClient;
import com.elink.esua.epdc.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.service.BannerDepartmentService;
import com.elink.esua.epdc.service.BannerService;
import com.elink.esua.epdc.util.NewsUtils;
@ -186,4 +187,61 @@ public class BannerServiceImpl extends BaseServiceImpl<BannerDao, BannerEntity>
bannerDTO.setState(YesOrNoEnum.NO.value());
baseDao.updateSoltOut(newsId);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 查询需要修改的组织机构信息
List<BannerDTO> bannerList = baseDao.selectListOfOrganizationInfo(dto.getDeptId().toString());
if (null != bannerList && bannerList.size() > 0) {
// 组织机构信息处理
List<BannerEntity> entities = handleOrganizationInfo(dto, bannerList);
// 更新事件组织机构信息
updateBatchById(entities);
}
// 更新部门名称
baseDao.updateDeptNameByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
/**
*
* 组织机构信息处理
*
* @params [dto, bannerList]
* @return java.util.List<com.elink.esua.epdc.entity.BannerEntity>
* @author liuchuang
* @since 2020/3/7 14:41
*/
private List<BannerEntity> handleOrganizationInfo(OrganizationModifyDTO dto, List<BannerDTO> bannerList) {
List<BannerEntity> entities = new ArrayList<>();
for (BannerDTO banner: bannerList) {
BannerEntity entity = new BannerEntity();
if (StringUtils.isNotEmpty(banner.getParentDeptIds()) && StringUtils.isNotEmpty(banner.getParentDeptNames())) {
List<String> parentDeptIds = Arrays.asList(banner.getParentDeptIds().split(","));
List<String> parentDeptNames = Arrays.asList(banner.getParentDeptNames().split("-"));
int index = parentDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && parentDeptNames.size() > index) {
parentDeptNames.set(index, dto.getNewDeptName());
entity.setId(banner.getId());
entity.setParentDeptNames(StringUtils.join(parentDeptNames, "-"));
}
}
if (StringUtils.isNotEmpty(banner.getAllDeptIds()) && StringUtils.isNotEmpty(banner.getAllDeptNames())) {
List<String> allDeptIds = Arrays.asList(banner.getAllDeptIds().split(","));
List<String> allDeptNames = Arrays.asList(banner.getAllDeptNames().split("-"));
int index = allDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && allDeptNames.size() > index) {
allDeptNames.set(index, dto.getNewDeptName());
entity.setId(banner.getId());
entity.setAllDeptNames(StringUtils.join(allDeptNames, "-"));
}
}
entities.add(entity);
}
return entities;
}
}

63
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NewsServiceImpl.java

@ -46,6 +46,7 @@ import com.elink.esua.epdc.dto.epdc.form.EpdcNewsStatementFromDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcNewsDetailResultDTO;
import com.elink.esua.epdc.entity.NewsEntity;
import com.elink.esua.epdc.feign.AdminFeignClient;
import com.elink.esua.epdc.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.service.*;
import com.elink.esua.epdc.util.NewsUtils;
import com.google.common.collect.Lists;
@ -54,10 +55,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* 新闻表
@ -485,4 +483,61 @@ public class NewsServiceImpl extends BaseServiceImpl<NewsDao, NewsEntity> implem
List<NewsDTO> newsDaoList = baseDao.selectAllPage(params);
return new PageData<>(newsDaoList, page.getTotal());
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 查询需要修改的组织机构信息
List<NewsDTO> newsList = baseDao.selectListOfOrganizationInfo(dto.getDeptId().toString());
if (null != newsList && newsList.size() > 0) {
// 组织机构信息处理
List<NewsEntity> entities = handleOrganizationInfo(dto, newsList);
// 更新事件组织机构信息
updateBatchById(entities);
}
// 更新部门名称
baseDao.updateDeptNameByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
/**
*
* 组织机构信息处理
*
* @params [dto, newsList]
* @return java.util.List<com.elink.esua.epdc.entity.NewsEntity>
* @author liuchuang
* @since 2020/3/7 14:47
*/
private List<NewsEntity> handleOrganizationInfo(OrganizationModifyDTO dto, List<NewsDTO> newsList) {
List<NewsEntity> entities = new ArrayList<>();
for (NewsDTO news: newsList) {
NewsEntity entity = new NewsEntity();
if (StringUtils.isNotEmpty(news.getParentDeptIds()) && StringUtils.isNotEmpty(news.getParentDeptNames())) {
List<String> parentDeptIds = Arrays.asList(news.getParentDeptIds().split(","));
List<String> parentDeptNames = Arrays.asList(news.getParentDeptNames().split("-"));
int index = parentDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && parentDeptNames.size() > index) {
parentDeptNames.set(index, dto.getNewDeptName());
entity.setId(news.getId());
entity.setParentDeptNames(StringUtils.join(parentDeptNames, "-"));
}
}
if (StringUtils.isNotEmpty(news.getAllDeptIds()) && StringUtils.isNotEmpty(news.getAllDeptNames())) {
List<String> allDeptIds = Arrays.asList(news.getAllDeptIds().split(","));
List<String> allDeptNames = Arrays.asList(news.getAllDeptNames().split("-"));
int index = allDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && allDeptNames.size() > index) {
allDeptNames.set(index, dto.getNewDeptName());
entity.setId(news.getId());
entity.setAllDeptNames(StringUtils.join(allDeptNames, "-"));
}
}
entities.add(entity);
}
return entities;
}
}

58
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NoticeServiceImpl.java

@ -40,6 +40,7 @@ import com.elink.esua.epdc.dto.epdc.result.EpdcNoticeListResultDTO;
import com.elink.esua.epdc.entity.NoticeEntity;
import com.elink.esua.epdc.feign.AdminFeignClient;
import com.elink.esua.epdc.redis.NoticeRedis;
import com.elink.esua.epdc.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.service.NoticeDepartmentService;
import com.elink.esua.epdc.service.NoticeService;
import com.elink.esua.epdc.util.NewsUtils;
@ -228,4 +229,61 @@ public class NoticeServiceImpl extends BaseServiceImpl<NoticeDao, NoticeEntity>
this.baseDao.updateReadingAmount(formDto.getNoticeId());
return new Result();
}
@Override
@Transactional(rollbackFor = Exception.class)
public void modifyOrganizationInfo(OrganizationModifyDTO dto) {
// 查询需要修改的组织机构信息
List<NoticeDTO> noticeList = baseDao.selectListOfOrganizationInfo(dto.getDeptId().toString());
if (null != noticeList && noticeList.size() > 0) {
// 组织机构信息处理
List<NoticeEntity> entities = handleOrganizationInfo(dto, noticeList);
// 更新事件组织机构信息
updateBatchById(entities);
}
// 更新部门名称
baseDao.updateDeptNameByDeptId(dto.getNewDeptName(), dto.getDeptId());
}
/**
*
* 组织机构信息处理
*
* @params [dto, noticeList]
* @return java.util.List<com.elink.esua.epdc.entity.NoticeEntity>
* @author liuchuang
* @since 2020/3/7 14:56
*/
private List<NoticeEntity> handleOrganizationInfo(OrganizationModifyDTO dto, List<NoticeDTO> noticeList) {
List<NoticeEntity> entities = new ArrayList<>();
for (NoticeDTO notice: noticeList) {
NoticeEntity entity = new NoticeEntity();
if (StringUtils.isNotEmpty(notice.getParentDeptIds()) && StringUtils.isNotEmpty(notice.getParentDeptNames())) {
List<String> parentDeptIds = Arrays.asList(notice.getParentDeptIds().split(","));
List<String> parentDeptNames = Arrays.asList(notice.getParentDeptNames().split("-"));
int index = parentDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && parentDeptNames.size() > index) {
parentDeptNames.set(index, dto.getNewDeptName());
entity.setId(notice.getId());
entity.setParentDeptNames(StringUtils.join(parentDeptNames, "-"));
}
}
if (StringUtils.isNotEmpty(notice.getAllDeptIds()) && StringUtils.isNotEmpty(notice.getAllDeptNames())) {
List<String> allDeptIds = Arrays.asList(notice.getAllDeptIds().split(","));
List<String> allDeptNames = Arrays.asList(notice.getAllDeptNames().split("-"));
int index = allDeptIds.indexOf(dto.getDeptId().toString());
if (index >= 0 && allDeptNames.size() > index) {
allDeptNames.set(index, dto.getNewDeptName());
entity.setId(notice.getId());
entity.setAllDeptNames(StringUtils.join(allDeptNames, "-"));
}
}
entities.add(entity);
}
return entities;
}
}

5
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/application.yml

@ -85,3 +85,8 @@ mybatis-plus:
cache-enabled: false
call-setters-on-nulls: true
jdbc-type-for-null: 'null'
rocketmq:
name-server: @rocketmq.name.server@
consumer:
group: @rocketmq.consumer.group@

17
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/BannerDao.xml

@ -42,4 +42,21 @@
AND bn.DEL_FLAG = '0'
</select>
<select id="selectListOfOrganizationInfo" resultType="com.elink.esua.epdc.dto.BannerDTO">
SELECT
ID,
PARENT_DEPT_IDS,
PARENT_DEPT_NAMES,
ALL_DEPT_IDS,
ALL_DEPT_NAMES
FROM
epdc_banner
WHERE
FIND_IN_SET( #{deptId}, ALL_DEPT_IDS )
</select>
<update id="updateDeptNameByDeptId">
UPDATE epdc_banner SET DEPT_NAME = #{newDeptName}, UPDATED_TIME = NOW() WHERE DEPT_ID = #{deptId}
</update>
</mapper>

17
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NewsDao.xml

@ -132,4 +132,21 @@
n.CREATED_TIME DESC
</select>
<select id="selectListOfOrganizationInfo" resultType="com.elink.esua.epdc.dto.NewsDTO">
SELECT
ID,
PARENT_DEPT_IDS,
PARENT_DEPT_NAMES,
ALL_DEPT_IDS,
ALL_DEPT_NAMES
FROM
epdc_news
WHERE
FIND_IN_SET( #{deptId}, ALL_DEPT_IDS )
</select>
<update id="updateDeptNameByDeptId">
UPDATE epdc_news SET DEPT_NAME = #{newDeptName}, UPDATED_TIME = NOW() WHERE DEPT_ID = #{deptId}
</update>
</mapper>

17
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NoticeDao.xml

@ -78,4 +78,21 @@
ORDER BY n.CREATED_TIME DESC
</select>
<select id="selectListOfOrganizationInfo" resultType="com.elink.esua.epdc.dto.NoticeDTO">
SELECT
ID,
PARENT_DEPT_IDS,
PARENT_DEPT_NAMES,
ALL_DEPT_IDS,
ALL_DEPT_NAMES
FROM
epdc_notice
WHERE
FIND_IN_SET( #{deptId}, ALL_DEPT_IDS )
</select>
<update id="updateDeptNameByDeptId">
UPDATE epdc_notice SET DEPT_NAME = #{newDeptName}, UPDATED_TIME = NOW() WHERE DEPT_ID = #{deptId}
</update>
</mapper>

2
esua-epdc/epdc-module/epdc-news/epdc-news.iml

@ -45,5 +45,7 @@
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-jcl:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
</component>
</module>

13
esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/PartyAuthenticationFailedDTO.java

@ -163,4 +163,17 @@ public class PartyAuthenticationFailedDTO implements Serializable {
*/
private String allDeptNames;
/**
* 父所有部门ID
*/
private String parentDeptIds;
/**
* 父所有部门名称
*/
private String parentDeptNames;
/**
* 所有部门ID
*/
private String allDeptIds;
}

13
esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/PartyMembersDTO.java

@ -95,4 +95,17 @@ public class PartyMembersDTO implements Serializable {
private String partyOrganization;
/**
* 父所有部门ID
*/
private String parentDeptIds;
/**
* 父所有部门名称
*/
private String parentDeptNames;
/**
* 所有部门ID
*/
private String allDeptIdsStr;
}

16
esua-epdc/epdc-module/epdc-user/epdc-user-server/epdc-user-server.iml

@ -144,7 +144,7 @@
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.11.2" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.26" level="project" />
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.3.2" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.1.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.9.9" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.9.9" level="project" />
@ -199,6 +199,18 @@
<orderEntry type="library" name="Maven: org.latencyutils:LatencyUtils:2.0.3" level="project" />
<orderEntry type="library" name="Maven: org.jolokia:jolokia-core:1.6.2" level="project" />
<orderEntry type="library" name="Maven: com.googlecode.json-simple:json-simple:1.1.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-spring-boot-starter:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-spring-boot:2.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-client:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-common:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-acl:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-remoting:4.4.0" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-tcnative-boringssl-static:2.0.25.Final" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-logging:4.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.rocketmq:rocketmq-srvutil:4.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-cli:commons-cli:1.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-messaging:5.1.9.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.1.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.1.7.RELEASE" level="project" />
@ -217,5 +229,7 @@
<orderEntry type="library" scope="TEST" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.1.9.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
</component>
</module>

12
esua-epdc/epdc-module/epdc-user/epdc-user-server/pom.xml

@ -50,6 +50,12 @@
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>${spring.boot.admin.version}</version>
</dependency>
<!--RocketMq-->
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-starter</artifactId>
<version>2.0.2</version>
</dependency>
</dependencies>
<build>
@ -129,6 +135,9 @@
<nacos.register-enabled>false</nacos.register-enabled>
<nacos.server-addr>47.104.224.45:8848</nacos.server-addr>
<!--RocketMQ-->
<rocketmq.name.server>47.104.85.99:9876;114.215.125.123:9876</rocketmq.name.server>
<rocketmq.consumer.group>jinshui-organizationGroup</rocketmq.consumer.group>
</properties>
</profile>
@ -152,6 +161,9 @@
<nacos.register-enabled>true</nacos.register-enabled>
<nacos.server-addr>47.104.224.45:8848</nacos.server-addr>
<!--RocketMQ-->
<rocketmq.name.server>47.104.85.99:9876;114.215.125.123:9876</rocketmq.name.server>
<rocketmq.consumer.group>jinshui-organizationGroup</rocketmq.consumer.group>
</properties>
</profile>

22
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/PartyAuthenticationFailedDao.java

@ -42,4 +42,26 @@ public interface PartyAuthenticationFailedDao extends BaseDao<PartyAuthenticatio
* @date 2019-11-18
*/
List<PartyAuthenticationFailedDTO> selectListDto(Map<String, Object> params);
/**
*
* 查询需要修改的组织机构信息
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.PartyAuthenticationFailedDTO>
* @author liuchuang
* @since 2020/3/7 15:31
*/
List<PartyAuthenticationFailedDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新网格名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateGridByDeptId(String newDeptName, Long deptId);
}

22
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/PartyMembersDao.java

@ -40,4 +40,26 @@ public interface PartyMembersDao extends BaseDao<PartyMembersEntity> {
PartyMembersDTO selectByIdNew(String id);
List<PartyMembersDTO> hasAuthenticationPartyPage(Map<String, Object> params);
/**
*
* 查询需要修改的组织机构信息
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.PartyMembersDTO>
* @author liuchuang
* @since 2020/3/7 15:31
*/
List<PartyMembersDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新网格名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateGridByDeptId(String newDeptName, Long deptId);
}

11
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserDao.java

@ -165,4 +165,15 @@ public interface UserDao extends BaseDao<UserEntity> {
* @Date 2019/12/19 15:05
**/
List<EpdcGridUserResultDTO> selectListGridUserResultDTO(@Param("gridIdList") List<Long> gridIdList);
/**
*
* 查询需要修改的组织机构信息
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.UserDTO>
* @author liuchuang
* @since 2020/3/7 15:31
*/
List<UserDTO> selectListOfOrganizationInfo(String deptId);
}

24
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserGridRelationDao.java

@ -22,6 +22,8 @@ import com.elink.esua.epdc.dto.UserGridRelationDTO;
import com.elink.esua.epdc.entity.UserGridRelationEntity;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* 网格长与网格关系表
*
@ -42,4 +44,26 @@ public interface UserGridRelationDao extends BaseDao<UserGridRelationEntity> {
* @since 2019/12/6 10:45
*/
UserGridRelationDTO selectOneOfGird(String userId);
/**
*
* 查询需要修改的组织机构信息
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.UserGridRelationDTO>
* @author liuchuang
* @since 2020/3/7 15:31
*/
List<UserGridRelationDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新网格名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateGridByDeptId(String newDeptName, Long deptId);
}

11
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserInvitationRecordDao.java

@ -43,5 +43,16 @@ public interface UserInvitationRecordDao extends BaseDao<UserInvitationRecordEnt
* @since 2019/10/23 16:25
*/
List<UserInvitationRecordResultDTO> invitationRecord(@Param("userId") Long userId);
/**
*
* 更新网格名称
*
* @params [newDeptName, deptId]
* @return void
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateGridByDeptId(String newDeptName, Long deptId);
}

65
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/rocketmq/consumer/OrganizationModifyConsumer.java

@ -0,0 +1,65 @@
package com.elink.esua.epdc.rocketmq.consumer;
import com.alibaba.fastjson.JSONObject;
import com.elink.esua.epdc.commons.tools.constant.RocketMqConstant;
import com.elink.esua.epdc.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.service.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.rocketmq.common.message.MessageExt;
import org.apache.rocketmq.spring.annotation.MessageModel;
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
import org.apache.rocketmq.spring.core.RocketMQListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
*
* 组织机构信息修改-监听MQ消息
*
* @Authorliuchuang
* @Date2020/3/7 13:47
*/
@Slf4j
@Component
@RocketMQMessageListener(topic = RocketMqConstant.MQ_TOPIC_ORGANIZATION, consumerGroup = "${rocketmq.consumer.group}", messageModel = MessageModel.BROADCASTING)
public class OrganizationModifyConsumer implements RocketMQListener<MessageExt> {
@Autowired
private PartyAuthenticationFailedService partyAuthenticationFailedService;
@Autowired
private PartyMembersService partyMembersService;
@Autowired
private UserService userService;
@Autowired
private UserGridRelationService userGridRelationService;
@Autowired
private UserInvitationRecordService userInvitationRecordService;
@Override
public void onMessage(MessageExt messageExt) {
log.info("EPDC-USER-SERVER消费消息START:{topic:{}, msgId:{}}", RocketMqConstant.MQ_TOPIC_ORGANIZATION, messageExt.getMsgId());
try {
String charset = "UTF-8";
String body = new String(messageExt.getBody(), charset);
OrganizationModifyDTO dto = JSONObject.parseObject(body, OrganizationModifyDTO.class);
// 党员认证失败表修改组织机构信息
partyAuthenticationFailedService.modifyOrganizationInfo(dto);
// 党员表修改组织机构信息
partyMembersService.modifyOrganizationInfo(dto);
// 用户表修改组织机构信息
userService.modifyOrganizationInfo(dto);
// 用户网格关系表修改组织机构信息
userGridRelationService.modifyOrganizationInfo(dto);
// 用户邀请记录表修改组织机构信息
userInvitationRecordService.modifyOrganizationInfo(dto);
log.info("EPDC-USER-SERVER消费消息END:{topic:{}, msgId:{}, body:{}}", RocketMqConstant.MQ_TOPIC_ORGANIZATION, messageExt.getMsgId(), body);
} catch (Exception e) {
log.info("EPDC-USER-SERVER消费消息失败:msgId:{}", messageExt.getMsgId());
e.printStackTrace();
}
}
}

37
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/rocketmq/dto/OrganizationModifyDTO.java

@ -0,0 +1,37 @@
package com.elink.esua.epdc.rocketmq.dto;
import lombok.Data;
import java.io.Serializable;
/**
*
* 组织机构信息修改-接收MQ消息DTO
*
* @Authorliuchuang
* @Date2020/3/7 13:46
*/
@Data
public class OrganizationModifyDTO implements Serializable {
private static final long serialVersionUID = -5692602006311937083L;
/**
* 部门ID
*/
private Long deptId;
/**
* 旧部门名称
*/
private String oldDeptName;
/**
* 新部门名称
*/
private String newDeptName;
/**
* 部门类型
*/
private String typeKey;
}

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save