Browse Source

Merge branch 'master' into dev_write_read_db

dev
jianjun 3 years ago
parent
commit
61e4994ddd
  1. 5
      epmet-admin/epmet-admin-server/deploy/docker-compose-dev.yml
  2. 5
      epmet-admin/epmet-admin-server/deploy/docker-compose-prod.yml
  3. 5
      epmet-admin/epmet-admin-server/deploy/docker-compose-test.yml
  4. 1
      epmet-admin/epmet-admin-server/src/main/java/com/epmet/AdminApplication.java
  5. 34
      epmet-admin/epmet-admin-server/src/main/resources/db/migration/V0.0.21__policy_dict.sql
  6. 5
      epmet-auth/deploy/docker-compose-dev.yml
  7. 5
      epmet-auth/deploy/docker-compose-prod.yml
  8. 5
      epmet-auth/deploy/docker-compose-test.yml
  9. 2
      epmet-cloud-generator/src/main/resources/application.yml
  10. 10
      epmet-commons/epmet-commons-rocketmq/src/main/java/com/epmet/commons/rocketmq/messages/OrgOrStaffMQMsg.java
  11. 16
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/Constant.java
  12. 2
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/NumConstant.java
  13. 5
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java
  14. 5
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/StrConstant.java
  15. 23
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/result/ZhzlCategorySelectDTO.java
  16. 55
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/CoverageEnums.java
  17. 7
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/CoveragePlaceTypeEnum.java
  18. 1
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/DictTypeEnum.java
  19. 56
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/ResiCategoryEnum.java
  20. 108
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/ZhzlResiCategoryEnum.java
  21. 1
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java
  22. 2
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/page/PageData.java
  23. 62
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java
  24. 38
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisUtils.java
  25. 1
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/HouseInfoCache.java
  26. 37
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/StrUtil.java
  27. 8
      epmet-commons/epmet-commons-tools/src/main/resources/logback-base.xml
  28. 5
      epmet-gateway/deploy/docker-compose-dev.yml
  29. 5
      epmet-gateway/deploy/docker-compose-prod.yml
  30. 5
      epmet-gateway/deploy/docker-compose-test.yml
  31. 4
      epmet-gateway/pom.xml
  32. 1
      epmet-gateway/src/main/resources/bootstrap.yml
  33. 10
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/OrgConstant.java
  34. 22
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/TableConstant.java
  35. 25
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/coverage/AnalysisGovernedTargetsResult.java
  36. 70
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/coverage/AnalysisResourceCategoriesResult.java
  37. 77
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/ResisByPolicyRulesFormDTO.java
  38. 1
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/IcResiInfoResultDTO.java
  39. 46
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/ResiByPolicyInfoResultDTO.java
  40. 9
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/CoverageAnalisisDataListFormDTO.java
  41. 44
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/CoverageAnalisisDataListLeftFormDTO.java
  42. 44
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/CoverageHomeSearchFormDTO.java
  43. 33
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/DataListLeftSubTotalFormDTO.java
  44. 25
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/OrgStatisticsFormDTO.java
  45. 39
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/SearchDetailFormDTO.java
  46. 19
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/CoverageAnalisisDataListResultDTO.java
  47. 26
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/CoverageAnalisisDataListResultDTOV2.java
  48. 46
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/CoverageHomeSearchResultDTO.java
  49. 19
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/DataListLeftSubTotalResDTO.java
  50. 59
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/EventInfoResultDTO.java
  51. 8
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridInfoResultDTO.java
  52. 24
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/MemberProjectInfoResultDTO.java
  53. 17
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/OrgCountDTO.java
  54. 25
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/OrgProjectDetailResultDTO.java
  55. 76
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/ResourceInfoResultDTO.java
  56. 92
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/UserInfoResultDTO.java
  57. 9
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/resigroup/result/OrgInfoCommonDTO.java
  58. 75
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/enums/MenusEnums.java
  59. 12
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/feign/DataAggregatorOpenFeignClient.java
  60. 8
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/feign/impl/DataAggregatorOpenFeignClientFallback.java
  61. 5
      epmet-module/data-aggregator/data-aggregator-server/deploy/docker-compose-dev.yml
  62. 5
      epmet-module/data-aggregator/data-aggregator-server/deploy/docker-compose-prod.yml
  63. 5
      epmet-module/data-aggregator/data-aggregator-server/deploy/docker-compose-test.yml
  64. 10
      epmet-module/data-aggregator/data-aggregator-server/pom.xml
  65. 127
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/CoverageController.java
  66. 128
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java
  67. 93
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/IcUserController.java
  68. 9
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/DataStatsDao.java
  69. 81
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/IcResiUserDao.java
  70. 4
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StaffRoleDao.java
  71. 2
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerAgencyDao.java
  72. 3
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffAgencyDao.java
  73. 2
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffGridDao.java
  74. 48
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcCityManagementDao.java
  75. 14
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcCoverageCategoryDictDao.java
  76. 5
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcEnterprisePatrolRecordDao.java
  77. 24
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcHouseDao.java
  78. 13
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcNeighborhoodDao.java
  79. 13
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govproject/IcEventDao.java
  80. 9
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govproject/ProjectDao.java
  81. 8
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/heart/IcCommunitySelfOrganizationDao.java
  82. 9
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/opercustomize/IcResiCategoryWarnConfigDao.java
  83. 10
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/IcCityManagementEntity.java
  84. 12
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/IcCoverageCategoryDictEntity.java
  85. 10
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/IcPublicServiceEntity.java
  86. 86
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/opercustomize/IcResiCategoryWarnConfigEntity.java
  87. 40
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/excel/MemberProjectInfoExcel.java
  88. 47
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/excel/OrgProjectDetailExcel.java
  89. 21
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/excel/ResisByPolicyExcel.java
  90. 109
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/redis/GovCustomerMenuRedis.java
  91. 47
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/CoverageService.java
  92. 50
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/ResiService.java
  93. 10
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java
  94. 157
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java
  95. 37
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java
  96. 14
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/IcResiService.java
  97. 83
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java
  98. 63
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/IcResiServiceImpl.java
  99. 19
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgCoverageService.java
  100. 77
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java

5
epmet-admin/epmet-admin-server/deploy/docker-compose-dev.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms32m -Xmx200m -jar ./epmet-admin.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

5
epmet-admin/epmet-admin-server/deploy/docker-compose-prod.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms256m -Xmx512m -jar ./epmet-admin.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

5
epmet-admin/epmet-admin-server/deploy/docker-compose-test.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms32m -Xmx200m -jar ./epmet-admin.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

1
epmet-admin/epmet-admin-server/src/main/java/com/epmet/AdminApplication.java

@ -27,6 +27,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
public class AdminApplication {
public static void main(String[] args) {
System.setProperty("rocketmq.client.logUseSlf4j", "true");
SpringApplication.run(AdminApplication.class, args);
}

34
epmet-admin/epmet-admin-server/src/main/resources/db/migration/V0.0.21__policy_dict.sql

@ -0,0 +1,34 @@
INSERT INTO `epmet_admin`.`sys_dict_type` (`id`, `dict_type`, `dict_name`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`)
VALUES ('1549241609500921857', 'house_purpose', '房屋用途', '', 31, 0, 0, '1', '2022-07-19 11:55:58', '1', '2022-07-19 11:55:58');
INSERT INTO `epmet_admin`.`sys_dict_type` (`id`, `dict_type`, `dict_name`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`)
VALUES ('1549241262669729794', 'house_type', '房屋类型', '楼房、平房、别墅', 30, 0, 0, '1', '2022-07-19 11:54:35', '1', '2022-07-19 11:54:35');
INSERT INTO `epmet_admin`.`sys_dict_type` (`id`, `dict_type`, `dict_name`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`)
VALUES ('1548958559042969601', 'policy_level', '政策级别', '政策级别;与服务项目的政策级别一致', 29, 0, 0, '1', '2022-07-18 17:11:13', '1', '2022-07-19 11:10:42');
INSERT INTO `epmet_admin`.`sys_dict_type` (`id`, `dict_type`, `dict_name`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`)
VALUES ('1548956290117443586', 'sql_query_type', 'sql查询条件', '目前应用于政策找人规则查询条件', 28, 0, 0, '1', '2022-07-18 17:02:12', '1', '2022-07-19 11:10:36');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1548956434175008770', 1548956290117443586, '等于', '=', '0', '等于', 1, 0, 0, '1', '2022-07-18 17:02:47', '1', '2022-07-18 17:02:47');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1548956518434381826', 1548956290117443586, '不等于', '!=', '0', '不等于', 2, 0, 0, '1', '2022-07-18 17:03:07', '1', '2022-07-18 17:03:07');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1548956603855577089', 1548956290117443586, '大于', '>', '0', '大于', 3, 0, 0, '1', '2022-07-18 17:03:27', '1', '2022-07-18 17:03:27');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1548956681525698561', 1548956290117443586, '大于等于', '>=', '0', '大于等于', 4, 0, 0, '1', '2022-07-18 17:03:46', '1', '2022-07-18 17:03:46');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1548956755412557826', 1548956290117443586, '小于', '<', '0', '小于', 5, 0, 0, '1', '2022-07-18 17:04:03', '1', '2022-07-18 17:04:03');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1548956830482210818', 1548956290117443586, '小于等于', '<=', '0', '<=', 6, 0, 0, '1', '2022-07-18 17:04:21', '1', '2022-07-18 17:04:21');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1548956956554600450', 1548956290117443586, '包含', 'like', '0', '包含', 7, 0, 0, '1', '2022-07-18 17:04:51', '1', '2022-07-18 17:04:51');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1548957038305779714', 1548956290117443586, '不包含', 'not like', '0', '不包含', 8, 0, 0, '1', '2022-07-18 17:05:11', '1', '2022-07-18 17:05:11');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1548958784704913410', 1548958559042969601, '市级', '0', '0', '市级;政策级别ic_policy.POLICY_LEVEL', 1, 0, 0, '1', '2022-07-18 17:12:07', '1', '2022-07-18 17:12:07');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1548958823573528578', 1548958559042969601, '区级', '1', '0', '区级;政策级别ic_policy.POLICY_LEVEL', 2, 0, 0, '1', '2022-07-18 17:12:16', '1', '2022-07-18 17:12:16');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1548958887222091777', 1548958559042969601, '街道级', '2', '0', '街道级;政策级别ic_policy.POLICY_LEVEL', 3, 0, 0, '1', '2022-07-18 17:12:32', '1', '2022-07-18 17:12:32');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1549241348443246594', 1549241262669729794, '楼房', '1', '0', '房屋类型ic_house.houseType', 1, 0, 0, '1', '2022-07-19 11:54:56', '1', '2022-07-19 11:54:56');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1549241378726121473', 1549241262669729794, '平房', '2', '0', '房屋类型ic_house.houseType', 2, 0, 0, '1', '2022-07-19 11:55:03', '1', '2022-07-19 11:55:03');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1549241467490177025', 1549241262669729794, '别墅', '3', '0', '房屋类型ic_house.houseType', 3, 0, 0, '1', '2022-07-19 11:55:24', '1', '2022-07-19 11:55:24');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1549241664320475137', 1549241609500921857, '住宅', '1', '0', '房屋用途ic_house.purpose', 1, 0, 0, '1', '2022-07-19 11:56:11', '1', '2022-07-19 11:56:11');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1549241693034680321', 1549241609500921857, '商业', '2', '0', '房屋用途ic_house.purpose', 2, 0, 0, '1', '2022-07-19 11:56:18', '1', '2022-07-19 11:56:18');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1549241720020832257', 1549241609500921857, '办公', '3', '0', '房屋用途ic_house.purpose', 3, 0, 0, '1', '2022-07-19 11:56:24', '1', '2022-07-19 11:56:24');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1549241750299512833', 1549241609500921857, '工业', '4', '0', '房屋用途ic_house.purpose', 4, 0, 0, '1', '2022-07-19 11:56:31', '1', '2022-07-19 11:56:31');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1549241808101216257', 1549241609500921857, '仓储', '5', '0', '房屋用途ic_house.purpose', 5, 0, 0, '1', '2022-07-19 11:56:45', '1', '2022-07-19 11:56:45');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1549241873729490946', 1549241609500921857, '商住混用', '6', '0', '房屋用途ic_house.purpose', 6, 0, 0, '1', '2022-07-19 11:57:01', '1', '2022-07-19 11:57:01');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1549241913411801089', 1549241609500921857, '其他', '7', '0', '房屋用途ic_house.purpose', 7, 0, 0, '1', '2022-07-19 11:57:10', '1', '2022-07-19 11:57:10');

5
epmet-auth/deploy/docker-compose-dev.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms32m -Xmx200m -jar ./epmet-auth.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

5
epmet-auth/deploy/docker-compose-prod.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms256m -Xmx512m -jar ./epmet-auth.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

5
epmet-auth/deploy/docker-compose-test.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms32m -Xmx300m -jar ./epmet-auth.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

2
epmet-cloud-generator/src/main/resources/application.yml

@ -9,7 +9,7 @@ spring:
type: com.alibaba.druid.pool.DruidDataSource
#MySQL配置
driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://118.190.150.119:43306/epmet_user?useUnicode=true&characterEncoding=UTF-8&useSSL=false
url: jdbc:mysql://118.190.150.119:43306/epmet_gov_org?useUnicode=true&characterEncoding=UTF-8&useSSL=false
username: root
password: root
#oracle配置

10
epmet-commons/epmet-commons-rocketmq/src/main/java/com/epmet/commons/rocketmq/messages/OrgOrStaffMQMsg.java

@ -3,6 +3,7 @@ package com.epmet.commons.rocketmq.messages;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 组织网格人员中间库数据上报MQ
@ -18,7 +19,16 @@ public class OrgOrStaffMQMsg implements Serializable {
//数据类型【组织:agency 网格:grid 人员:staff】
private String orgType;
//操作类型【组织新增:agency_create 组织变更:agency_change 网格新增:grid_create 网格变更:grid_change 人员新增:staff_create 人员变更:staff_change】
//删除网格:grid_delete;删除组织:agency_delete
private String type;
/**
* org原有的Code
*/
private String oldCode;
//工作人员Id集合
private List<String> staffIdList;
}

16
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/Constant.java

@ -174,4 +174,20 @@ public interface Constant {
String OPITON_SOURCE_REMOTE = "remote";
String OPITON_SOURCE_LOCAL = "local";
/**
* 附件状态审核中auditing
auto_passed: 自动通过
review结果不确定需要人工审核
block: 结果违规
rejected人工审核驳回;
approved人工审核通过
现在图片是同步审核的所以图片只有auto_passed一种状态
*/
String AUDITING="auditing";
String AUTO_PASSED="auto_passed";
String REVIEW="review";
String BLOCK="block";
String REJECTED="rejected";
String APPROVED="approved";
}

2
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/NumConstant.java

@ -50,6 +50,8 @@ public interface NumConstant {
BigDecimal ZERO_DECIMAL = new BigDecimal(0);
int ONE_THOUSAND = 1000;
int TEN_THOUSAND = 10000;
int THREE_THOUSAND = 3000;
int MAX = 99999999;
int EIGHTY_EIGHT = 88;
int EIGHTY = 80;

5
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java

@ -143,4 +143,9 @@ public interface ServiceConstant {
* 聚合查询服务
*/
String DATA_AGGREGATOR_SERVER = "data-aggregator-server";
/**
* 插件pli-power服务
*/
String PLI_POWER_SERVER = "pli-power-base-server";
}

5
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/StrConstant.java

@ -110,4 +110,9 @@ public interface StrConstant {
String YES = "是";
String NO = "否";
String ELLIPSIS="......";
String BRACKET_LEFT="(";
String BRACKET_RIGNT=")";
}

23
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/result/ZhzlCategorySelectDTO.java

@ -0,0 +1,23 @@
package com.epmet.commons.tools.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Description
* @Author yzm
* @Date 2022/7/26 16:37
*/
@Data
public class ZhzlCategorySelectDTO implements Serializable {
private String label;
private String value;
private String queryType;
private String tableName;
private String columnName;
private String columnValue;
private Integer sort;
}

55
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/CoverageEnums.java

@ -0,0 +1,55 @@
package com.epmet.commons.tools.enums;
/**
* 图层枚举
*/
public enum CoverageEnums {
ZHZL("zhzl", "综合治理图层", 1),
YJCL("yjcl", "应急处置资源", 1),
AQSC("aqsc", "安全生产资源", 1),
CSGL("csgl", "城市管理资源", 1),
GGFW("ggfw", "公共服务资源", 1),
DATA_TYPE_GOVERNED_TARGET("governedTarget", "被管理对象", 2),
DATA_TYPE_RESOURCES("resources", "资源", 2);
private String key;
private String name;
/**
* 1:图层2数据类型
*/
private Integer type;
CoverageEnums(String key, String name, Integer type) {
this.key = key;
this.name = name;
this.type = type;
}
public static CoverageEnums getEnum(String key) {
CoverageEnums[] values = CoverageEnums.values();
for (CoverageEnums value : values) {
if (value.getKey().equals(key)) {
return value;
}
}
return null;
}
public String getKey() {
return key;
}
public String getCoverageName() {
return name;
}
public String getName() {
return name;
}
public Integer getType() {
return type;
}
}

7
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/CoveragePlaceTypeEnum.java

@ -8,14 +8,17 @@ public enum CoveragePlaceTypeEnum {
SUPERIOR_RESOURCE("superior_resource", "优势资源"),
DANGEROUS_CHEMICALS("dangerous_chemicals", "重点危化企业"),
ENTERPRISE_PATROL("enterprise_patrol", "企事业单位巡查"),
ENTERPRISE_PATROL_UNQUALIFIED("enterprise_patrol_unqualified", "安全生产隐患"),
SPECIAL_RESI("special_resi", "特殊人群"),
CITY_MANAGEMENT("city_management", "城市管理"),
COMMUNITY_ORG("community_org", "社区自组织"),
PUBLIC_SERVICE("public_service", "公共服务"),
RESI("resi", "居民"),
RESI("resi", "公共服务人群"),
PARTY_UNIT("party_unit", "联建单位"),
VOLUNTEER("volunteer", "志愿者"),
GROUP_RENT("group_rent", "群租房"),
EVENT("event", "事件(包括难点堵点)");
EVENT("event", "城市管理事件"),
ZHZL_RQ("zhzl_rq", "综合治理人群");
private final String code;
private final String name;

1
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/DictTypeEnum.java

@ -27,6 +27,7 @@ public enum DictTypeEnum {
IC_EVENT_SOURCE_TYPE("ic_event_source_type","事件管理",19),
IC_SERVICE_TYPE("ic_service_type","服务类别",20),
IC_DANGER_TYPE("ic_danger_type","危化品种类",24),
POLICY_LEVEL("policy_level","政策级别",25),
;
private final String code;

56
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/ResiCategoryEnum.java

@ -0,0 +1,56 @@
package com.epmet.commons.tools.enums;
public enum ResiCategoryEnum {
IS_PARTY("IS_PARTY", "党员"),
IS_DBH("IS_DBH", "低保人员"),
IS_ENSURE_HOUSE("IS_ENSURE_HOUSE", "保障房人员"),
IS_UNEMPLOYED("IS_UNEMPLOYED", "失业人员"),
IS_YLFN("IS_YLFN", "育龄妇女"),
IS_VETERANS("IS_VETERANS", "退役军人"),
IS_UNITED_FRONT("IS_UNITED_FRONT", "统战人员"),
IS_XFRY("IS_XFRY", "信访人员"),
IS_VOLUNTEER("IS_VOLUNTEER", "志愿者"),
IS_OLD_PEOPLE("IS_OLD_PEOPLE", "老年人"),
IS_KC("IS_KC", "空巢"),
IS_SD("IS_SD", "失独人员"),
IS_SN("IS_SN", "失能"),
IS_SZ("IS_SZ", "失智"),
IS_CJ("IS_CJ", "残疾"),
IS_DB("IS_DB", "大病"),
IS_MB("IS_MB", "慢病"),
IS_SPECIAL("IS_SPECIAL", "特殊人群");
private String colName;
private String label;
ResiCategoryEnum(String colName, String label) {
this.colName = colName;
this.label = label;
}
/**
* 取枚举对象
* @param columnName
* @return
*/
public static ResiCategoryEnum getEnum(String columnName) {
for (ResiCategoryEnum enumObject : ResiCategoryEnum.values()) {
if (enumObject.getColName().equals(columnName)) {
return enumObject;
}
}
return null;
}
public String getColName() {
return colName;
}
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
}

108
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/ZhzlResiCategoryEnum.java

@ -0,0 +1,108 @@
package com.epmet.commons.tools.enums;
import com.epmet.commons.tools.dto.result.ZhzlCategorySelectDTO;
import java.util.ArrayList;
import java.util.List;
public enum ZhzlResiCategoryEnum {
// resi_xfry 信访人员
// anzhibangjiao 安置帮教
// xiejiaorenyuan 邪教人员
// buliangqingshaonian 不良青少年
// shequjiaozheng 社区矫正
// zhaoshizhaohuojingshenbing 肇事肇祸精神病
// xidurenyuan 吸毒人员
resi_xfry("resi_xfry", "信访人员", "equal", "ic_resi_user", "IS_XFRY", "1", 1),
anzhibangjiao("anzhibangjiao", "安置帮教", "list_equal", "ic_special", "SPECIAL_RQLB", "anzhibangjiao", 2),
xiejiaorenyuan("xiejiaorenyuan", "邪教人员", "list_equal", "ic_special", "SPECIAL_RQLB", "xiejiaorenyuan", 3),
buliangqingshaonian("buliangqingshaonian", "不良青少年", "list_equal", "ic_special", "SPECIAL_RQLB", "buliangqingshaonian", 4),
shequjiaozheng("shequjiaozheng", "社区矫正", "list_equal", "ic_special", "SPECIAL_RQLB", "shequjiaozheng", 5),
zhaoshizhaohuojingshenbing("zhaoshizhaohuojingshenbing", "肇事肇祸精神病", "list_equal", "ic_special", "SPECIAL_RQLB", "zhaoshizhaohuojingshenbing", 6),
xidurenyuan("xidurenyuan", "吸毒人员", "list_equal", "ic_special", "SPECIAL_RQLB", "xidurenyuan", 7);
private String code;
private String name;
private String queryType;
private String tableName;
private String columnName;
private String columnValue;
private Integer sort;
ZhzlResiCategoryEnum(String code, String name, String queryType, String tableName, String columnName, String columnValue, Integer sort) {
this.code = code;
this.name = name;
this.queryType = queryType;
this.tableName = tableName;
this.columnName = columnName;
this.columnValue = columnValue;
this.sort = sort;
}
public static ZhzlResiCategoryEnum getEnum(String code) {
ZhzlResiCategoryEnum[] values = ZhzlResiCategoryEnum.values();
for (ZhzlResiCategoryEnum value : values) {
if (value.getCode().equals(code)) {
return value;
}
}
return null;
}
/**
* 转为数据
*
* @return 枚举对象数组
*/
public static List<ZhzlCategorySelectDTO> toSelectList() {
List<ZhzlCategorySelectDTO> list = new ArrayList<>();
for (ZhzlResiCategoryEnum item : ZhzlResiCategoryEnum.values()) {
ZhzlCategorySelectDTO selectDTO = new ZhzlCategorySelectDTO();
selectDTO.setLabel(item.getName());
selectDTO.setValue(item.getCode());
selectDTO.setQueryType(item.getQueryType());
selectDTO.setTableName(item.getTableName());
selectDTO.setColumnName(item.getColumnName());
selectDTO.setColumnValue(item.getColumnValue());
selectDTO.setSort(item.getSort());
list.add(selectDTO);
}
return list;
}
public String getCode() {
return code;
}
public String getName() {
return name;
}
public String getQueryType() {
return queryType;
}
public String getTableName() {
return tableName;
}
public String getColumnName() {
return columnName;
}
public String getColumnValue() {
return columnValue;
}
public Integer getSort() {
return sort;
}
}

1
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java

@ -259,6 +259,7 @@ public enum EpmetErrorCode {
NOT_REGEIST_RESI(8927,"未注册居民"),
UNIT_EXIST_HOUSES_ERROR(8928,"单元下存在房屋,不可修改单元数"),
IC_VACCINE(8929,"已存在相同记录,请去修改原有记录"),
NOT_MATCH_IC_USER_ERROR(8930,"请联系社区工作人员"),
MISMATCH(10086,"人员与房屋信息不匹配,请与工作人员联系。"),

2
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/page/PageData.java

@ -9,6 +9,7 @@
package com.epmet.commons.tools.page;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
@ -20,6 +21,7 @@ import java.util.List;
* @since 1.0.0
*/
@Data
@NoArgsConstructor
public class PageData<T> implements Serializable {
private static final long serialVersionUID = 1L;

62
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java

@ -644,8 +644,18 @@ public class RedisKeys {
* @param agencyId
* @return
*/
public static String getOrgTreeCacheKey(String agencyId) {
return rootPrefix.concat("org:temp:orgtree").concat(agencyId);
public static String getOrgTreeCacheKey(String agencyId,String customerId) {
return rootPrefix.concat("org:temp:orgtree:").concat(customerId).concat(StrConstant.COLON).concat(agencyId);
}
/**
* 与getOrgTreeCacheKey一致用于模糊删除
* @param customerId
* @return
*/
public static String getOrgTreeCachePrexKey(String customerId) {
// return "epmet:org:temp:orgtree".concat(StrConstant.STAR);
return rootPrefix.concat("org:temp:orgtree:").concat(customerId).concat(StrConstant.STAR);
}
public static String getHouseInfoCacheKey(String houseId,String customerId){
@ -756,6 +766,16 @@ public class RedisKeys {
return rootPrefix.concat("gov:access:nav:");
}
/**
* Desc: 新五大图层获取菜单缓存key
* @param
* @author zxc
* @date 2022/7/27 13:42
*/
public static String getCustomerMenuListFiveCoverage() {
return rootPrefix.concat("customer:govMenu:");
}
/**
* 如果是省列表epmet:areacode:parentCode:0
* 山东省的下一级epmet:areacode:parentCode:37
@ -778,6 +798,18 @@ public class RedisKeys {
return rootPrefix.concat("lock:").concat(methodName);
}
/**
* desc:获取分布式锁key
* @param customerId
* @return
*/
public static String getXiaoquEditLock(String customerId) {
if (StringUtils.isBlank(customerId)){
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),"参数错误");
}
return rootPrefix.concat("lock:xiaoquedit").concat(customerId);
}
/**
* desc:获取更新 房屋内有居民数量的key
* @param customerId
@ -791,4 +823,30 @@ public class RedisKeys {
}
/**
* desc: 数据同步业务key 根据方法名区分
*
* @param bizType [resi]
* @return java.lang.String
* @author LiuJanJun
* @date 2022/7/16 7:12 下午
*/
public static String getDataSyncKey(String bizType) {
if (StringUtils.isBlank(bizType)){
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),"参数错误");
}
return rootPrefix.concat("datasync:").concat(bizType);
}
/**
* Desc: 服务组织名称
* @param customerId
* @param serviceOrgType
* @param serviceOrgId
* @author zxc
* @date 2022/7/19 14:08
*/
public static String getServiceOrgNameKey(String customerId,String serviceOrgType,String serviceOrgId){
return rootPrefix.concat("serviceOrgName:").concat(serviceOrgType).concat(":").concat(customerId).concat(":").concat(serviceOrgId);
}
}

38
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisUtils.java

@ -357,6 +357,33 @@ public class RedisUtils {
return redisTemplate.opsForSet().members(key);
}
/**
* @Description 获取一个set
* @param key
* @author zxc
*/
public Object sPop(String key){
return redisTemplate.opsForSet().pop(key);
}
/**
* @Description 添加一个元素set
* @param key
* @author zxc
*/
public Long sAdd(String key,Object value){
return redisTemplate.opsForSet().add(key,value);
}
public void listAdd(String key,Object value){
redisTemplate.opsForList().rightPush(key,value);
}
public Object listGetAll(String key,Integer start, Integer end){
List<Object> result = redisTemplate.opsForList().range(key, start, end);
return result;
}
/**
* @Description 获取 zset 中带score的集合
* @param key
@ -444,4 +471,15 @@ public class RedisUtils {
public Long getTTL(String treeCacheKey) {
return redisTemplate.getExpire(treeCacheKey);
}
/**
* 根据前缀模糊删除
* @param prex
*/
public void deleteByPrex(String prex) {
Set<String> keys = redisTemplate.keys(prex);
if (!CollectionUtils.isEmpty(keys)) {
redisTemplate.delete(keys);
}
}
}

1
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/HouseInfoCache.java

@ -102,6 +102,7 @@ public class HouseInfoCache implements Serializable {
* 房屋编码
*/
private String houseCode;
private String coding;
/**
* 二维码地址
*/

37
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/StrUtil.java

@ -0,0 +1,37 @@
package com.epmet.commons.tools.utils;
import org.apache.commons.lang3.StringUtils;
/**
* desc:utf8mb4转为utf8
*
* @author: LiuJanJun
* @date: 2022/7/22 9:45 下午
* @version: 1.0
*/
public class StrUtil {
private static final int LAST_BMP = 0xFFFF;
public static String filterEmoji(String source) {
if (StringUtils.isBlank(source)) {
return source;
}
StringBuilder sb = new StringBuilder(source.length());
for (int i = 0; i < source.length(); i++) {
int codePoint = source.codePointAt(i);
if (codePoint < LAST_BMP) {
sb.appendCodePoint(codePoint);
} else {
i++;
}
}
return sb.toString();
}
public static void main(String[] args) {
String x = StrUtil.filterEmoji("😀😁😆😅🥹🥹😇😗😀😂666");
System.out.println(x);
}
}

8
epmet-commons/epmet-commons-tools/src/main/resources/logback-base.xml

@ -7,11 +7,13 @@ Base logback configuration provided for compatibility with Spring Boot 1.1
<included>
<include resource="org/springframework/boot/logging/logback/defaults.xml" />
<!--<property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/spring.log}"/>-->
<include resource="org/springframework/boot/logging/logback/console-appender.xml" />
<include resource="org/springframework/boot/logging/logback/file-appender.xml" />
<!--该配置主要是配置了console控制台日志的输出级别以及appender,配置只输出到CONSOLE,而不输出到file即可避免产生spring.log-->
<!--<property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/spring.log}"/>-->
<!--<include resource="org/springframework/boot/logging/logback/file-appender.xml" />-->
<root level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
<!--<appender-ref ref="FILE" />-->
</root>
</included>

5
epmet-gateway/deploy/docker-compose-dev.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms32m -Xmx200m -jar ./epmet-gateway.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

5
epmet-gateway/deploy/docker-compose-prod.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms256m -Xmx512m -jar ./epmet-gateway.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

5
epmet-gateway/deploy/docker-compose-test.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms32m -Xmx200m -jar ./epmet-gateway.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

4
epmet-gateway/pom.xml

@ -278,6 +278,7 @@
<!-- <gateway.routes.epmet-oss-server.uri>http://localhost:8083</gateway.routes.epmet-oss-server.uri>-->
<!-- 5、消息服务 -->
<gateway.routes.epmet-message-server.uri>lb://epmet-message-server</gateway.routes.epmet-message-server.uri>
<!-- <gateway.routes.epmet-message-server.uri>http://localhost:8085</gateway.routes.epmet-message-server.uri>-->
<!-- 6、工作流服务 -->
<gateway.routes.epmet-activiti-server.uri>lb://epmet-activiti-server</gateway.routes.epmet-activiti-server.uri>
<!-- 7、定时任务服务 -->
@ -317,6 +318,7 @@
<!--19.政府端-权限-服务-->
<gateway.routes.gov-access-server.uri>lb://gov-access-server</gateway.routes.gov-access-server.uri>
<!--<gateway.routes.gov-access-server.uri>http://localhost:8099</gateway.routes.gov-access-server.uri>-->
<!--20.政府端-我的-服务-->
<!-- <gateway.routes.gov-mine-server.uri>http://localhost:8098</gateway.routes.gov-mine-server.uri>-->
@ -356,7 +358,7 @@
<!-- 32、爱心互助 -->
<gateway.routes.epmet-heart-server.url>lb://epmet-heart-server</gateway.routes.epmet-heart-server.url>
<!-- <gateway.routes.epmet-heart-server.url>http://127.0.0.1:8111</gateway.routes.epmet-heart-server.url>-->
<!-- <gateway.routes.epmet-heart-server.url>http://127.0.0.1:8111</gateway.routes.epmet-heart-server.url>-->
<!-- 33、 积分银行 -->
<gateway.routes.epmet-point-server.url>lb://epmet-point-server</gateway.routes.epmet-point-server.url>
<!-- <gateway.routes.epmet-point-server.url>http://127.0.0.1:8112</gateway.routes.epmet-point-server.url>-->

1
epmet-gateway/src/main/resources/bootstrap.yml

@ -502,6 +502,7 @@ epmet:
# 内部认证url白名单(在白名单中的,就不会再校验登录了)
internalAuthUrlsWhiteList:
- /epmetuser/customerstaff/customerlist
- /epmetuser/icresiuser/icUserMatchGrid
- /auth/wechat/**
- /**/druid/**
- /gov/project/project/platformcallback

10
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/OrgConstant.java

@ -10,8 +10,16 @@ public interface OrgConstant {
String PROVINCE = "province";
String CITY = "city";
String DISTRICT = "district";
String STREET = "street";
String COMMUNITY = "community";
String GRID_ID="GRID_ID";
String GENDER="GENDER";
String HOUSE_TYPE_KEY="HOUSE_TYPE";
String AGENCY_ID="agencyId";
String AGENC_PATH="agencyPath";
String SEARCH_TYPE_USER = "user";
String SEARCH_TYPE_EVENT = "event";
String SEARCH_TYPE_RESOURCE = "resource";
}

22
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/constant/TableConstant.java

@ -0,0 +1,22 @@
package com.epmet.dataaggre.constant;
/**
*
*/
public interface TableConstant {
String IC_DANGEROUS_CHEMICALS = "ic_dangerous_chemicals";
String IC_SUPERIOR_RESOURCE = "ic_superior_resource";
String IC_ENTERPRISE = "ic_enterprise";
String IC_COMMUNITY_SELF_ORGANIZATION = "ic_community_self_organization";
String IC_CITY_MANAGEMENT = "ic_city_management";
String IC_PUBLIC_SERVICE = "ic_public_service";
String IC_EVENT = "ic_event";
}

25
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/coverage/AnalysisGovernedTargetsResult.java

@ -0,0 +1,25 @@
package com.epmet.dataaggre.dto.coverage;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* 五大图层分析-被管理对象分类
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class AnalysisGovernedTargetsResult {
private String categoryKey;
private String categoryName;
private String coverageType;
private String placeType;
private String placeTypeName;
private Integer quantity = 0;
private List<AnalysisGovernedTargetsResult> children;
}

70
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/coverage/AnalysisResourceCategoriesResult.java

@ -0,0 +1,70 @@
package com.epmet.dataaggre.dto.coverage;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
/**
* 五大图层-可视化-右侧分类树列表
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class AnalysisResourceCategoriesResult {
/**
* 图层类型
*/
private String coverageType;
/**
* 图层名称
*/
private String coverageName;
/**
* 个数
*/
private AtomicInteger quantity = new AtomicInteger(0);
/**
* 没有placeTypeInAnalysis直接属于图层的
*/
private List<Category> categories = new ArrayList<>();
/**
* 场所类型有placeTypeInAnalysis不直接属于图层的
*/
private List<PlaceType> placeTypesInAnalysis = new ArrayList<>();
/**
* 分类
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public static class Category {
private String categoryKey;
private String categoryName;
private String coverageType;
private String placeType;
private Integer quantity = 0;
}
/**
* 场所类型
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public static class PlaceType {
private String placeType;
private String placeTypeName;
private AtomicInteger quantity = new AtomicInteger(0);
private List<Category> categories;
}
}

77
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/ResisByPolicyRulesFormDTO.java

@ -0,0 +1,77 @@
package com.epmet.dataaggre.dto.epmetuser.form;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.Set;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ResisByPolicyRulesFormDTO {
private String ruleId;
private String orgId;
private String orgType;
private String neighborHoodId;
private String buildingId;
private String unitId;
private String houseId;
private String name;
private String mobile;
private String idCard;
private RuleList ruleList = new RuleList();
private Integer pageNo = 1;
private Integer pageSize = 20;
@Data
@NoArgsConstructor
@AllArgsConstructor
public static class RuleList {
private String ruleName;
private List<ResiRule> resiRuleList;
private List<HouseRule> houseRuleList;
private List<StatRule> statRuleList;
}
@Data
@NoArgsConstructor
@AllArgsConstructor
public static class ResiRule {
private String ruleDesc;
private String nextLogicalRel;
private String itemGroupId;
private String itemId;
private String queryType;
private String colTable;
private String colKey;
private String colVal;
}
@Data
@NoArgsConstructor
@AllArgsConstructor
public static class HouseRule {
private String colTable;
private String colKey;
private String colVal;
private String ruleDesc;
private String nextLogicalRel;
private String queryType;
}
@Data
@NoArgsConstructor
@AllArgsConstructor
public static class StatRule {
private String colKey;
private String colVal;
private String nextLogicalRel;
private String ruleDesc;
private String queryType;
private String colTable;
}
}

1
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/IcResiInfoResultDTO.java

@ -10,4 +10,5 @@ public class IcResiInfoResultDTO {
private String id;
private String name;
private String buildId;
private String idNum;
}

46
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/ResiByPolicyInfoResultDTO.java

@ -0,0 +1,46 @@
package com.epmet.dataaggre.dto.epmetuser.result;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ResiByPolicyInfoResultDTO {
@ExcelIgnore
private String icResiUserId;
@ExcelProperty(value = "姓名")
@ColumnWidth(10)
private String name;
@ExcelProperty("手机号")
@ColumnWidth(20)
private String mobile;
@ExcelProperty("身份证号")
@ColumnWidth(30)
private String idCard;
/**
* 小区全名包含小区前面的属性比如网格等
*/
@ExcelIgnore
private String gridId;
@ExcelIgnore
private String neighborhoodId;
@ExcelProperty("小区名称")
@ColumnWidth(30)
private String neighborHoodName;
@ExcelProperty("年龄")
@ColumnWidth(10)
private Integer age;
@ExcelIgnore
private String birthday;
}

9
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/CoverageAnalisisDataListFormDTO.java

@ -9,7 +9,16 @@ import java.util.List;
*/
@Data
public class CoverageAnalisisDataListFormDTO {
/**
* 目前都是组织id
*/
private String orgId;
/**
* agency
* grid
*/
private String orgType;
/**
* 图层类型列表
*/

44
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/CoverageAnalisisDataListLeftFormDTO.java

@ -0,0 +1,44 @@
package com.epmet.dataaggre.dto.govorg.form;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.List;
/**
* @Description
* @Author yzm
* @Date 2022/7/28 11:09
*/
@Data
public class CoverageAnalisisDataListLeftFormDTO {
public interface ShowGroup extends CustomerClientShowGroup {
}
/**
* 目前都是组织id
*/
@NotBlank(message = "组织不能为空", groups = ShowGroup.class)
private String orgId;
/**
* agency
* grid
*/
@NotBlank(message = "组织类型不能为空", groups = ShowGroup.class)
private String orgType;
/**
* 图层类型列表
*/
private List<String> coverageTypes;
/**
* 分类key
*/
private List<String> categoryKeys;
private String customerId;
private String staffId;
}

44
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/CoverageHomeSearchFormDTO.java

@ -0,0 +1,44 @@
package com.epmet.dataaggre.dto.govorg.form;
import com.epmet.commons.tools.dto.form.PageFormDTO;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2022/7/26 16:25
* @DESC
*/
@Data
public class CoverageHomeSearchFormDTO extends PageFormDTO implements Serializable {
private static final long serialVersionUID = 3776954636762201010L;
private String name;
private String customerId;
private String userId;
private String orgId;
private String pids;
private String tableName;
/**
* 搜索类型居民user事件event资源resource
*/
private String searchType;
/**
* 资源类型社区自组织community_org;优势资源:superior_resource;城市管理city_management重点危化企业dangerous_chemicals公共服务public_service企事业单位巡查enterprise_patrol
* searchType为resource时此字段必填
*/
private String resourceType;
private String resourceId;
private String icEventId;
private String icUserId;
}

33
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/DataListLeftSubTotalFormDTO.java

@ -0,0 +1,33 @@
package com.epmet.dataaggre.dto.govorg.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Description
* @Author yzm
* @Date 2022/7/29 10:38
*/
@Data
public class DataListLeftSubTotalFormDTO {
public interface AddUserInterGroup{}
@NotBlank(message = "orgId不能为空",groups = AddUserInterGroup.class)
private String orgId;
@NotBlank(message = "orgType不能为空",groups = AddUserInterGroup.class)
private String orgType;
private String coverageType;
@NotBlank(message = "categoryKey不能为空",groups = AddUserInterGroup.class)
private String categoryKey;
@NotBlank(message = "placeType不能为空",groups = AddUserInterGroup.class)
private String placeType;
private String customerId;
private String staffId;
}

25
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/OrgStatisticsFormDTO.java

@ -0,0 +1,25 @@
package com.epmet.dataaggre.dto.govorg.form;
import com.epmet.commons.tools.dto.form.PageFormDTO;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/7/27 9:27
*/
@Data
public class OrgStatisticsFormDTO extends PageFormDTO implements Serializable {
private static final long serialVersionUID = -1043502365053945317L;
private String customerId;
private String agencyId;
private String orgId;
private String orgType;
private String type;
private String startDate;
private String endDate;
private List<String> agencyList;
}

39
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/SearchDetailFormDTO.java

@ -0,0 +1,39 @@
package com.epmet.dataaggre.dto.govorg.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2022/7/29 08:48
* @DESC
*/
@Data
public class SearchDetailFormDTO implements Serializable {
private static final long serialVersionUID = 3499320376768396157L;
public interface SearchUserDetailForm{}
public interface SearchEventDetailForm{}
public interface SearchResourceDetailForm{}
@NotBlank(message = "icUserId不能为空",groups = SearchUserDetailForm.class)
private String icUserId;
@NotBlank(message = "icEventId不能为空",groups = SearchEventDetailForm.class)
private String icEventId;
@NotBlank(message = "resourceId不能为空",groups = SearchResourceDetailForm.class)
private String resourceId;
/**
* 资源类型社区自组织community_org;优势资源:superior_resource;城市管理city_management重点危化企业dangerous_chemicals公共服务public_service企事业单位巡查enterprise_patrol
*/
@NotBlank(message = "resourceType不能为空",groups = SearchResourceDetailForm.class)
private String resourceType;
private String customerId;
}

19
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/CoverageAnalisisDataListResultDTO.java

@ -1,8 +1,10 @@
package com.epmet.dataaggre.dto.govorg.result;
import com.epmet.commons.tools.constant.StrConstant;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.StringUtils;
@Data
@NoArgsConstructor
@ -40,4 +42,21 @@ public class CoverageAnalisisDataListResultDTO {
*/
private String longitude;
/**
* 经度,纬度120.38862649282282,36.07138835989835
*/
private String longLat;
public CoverageAnalisisDataListResultDTO(String id, String categoryKey, String categoryName, String placeType, String content, String latitude, String longitude) {
this.id=id;
this.categoryKey=categoryKey;
this.categoryName=categoryName;
this.placeType=placeType;
this.content=content;
this.latitude=latitude;
this.longitude=longitude;
if(StringUtils.isNotBlank(latitude)&&StringUtils.isNotBlank(longitude)){
this.longLat=longitude.concat(StrConstant.COMMA).concat(latitude);
}
}
}

26
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/CoverageAnalisisDataListResultDTOV2.java

@ -0,0 +1,26 @@
package com.epmet.dataaggre.dto.govorg.result;
import lombok.Data;
import java.util.List;
/**
* @Description
* @Author yzm
* @Date 2022/7/28 11:13
*/
@Data
public class CoverageAnalisisDataListResultDTOV2 {
/**
* 维度
*/
private String latitude;
/**
* 经度
*/
private String longitude;
private List<CoverageAnalisisDataListResultDTO> dataList;
}

46
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/CoverageHomeSearchResultDTO.java

@ -0,0 +1,46 @@
package com.epmet.dataaggre.dto.govorg.result;
import com.epmet.commons.tools.constant.NumConstant;
import lombok.Data;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
* @Author zxc
* @DateTime 2022/7/26 16:25
* @DESC
*/
@Data
public class CoverageHomeSearchResultDTO implements Serializable {
private static final long serialVersionUID = 8922820109004386708L;
/**
* 居民信息
*/
private List<UserInfoResultDTO> userInfos;
private Long userInfosTotal;
/**
* 事件信息
*/
private List<EventInfoResultDTO> eventInfos;
private Long eventInfoTotal;
/**
* 资源信息
*/
private List<ResourceInfoResultDTO> resourceInfos;
private Long resourceInfoTotal;
public CoverageHomeSearchResultDTO() {
this.userInfos = new ArrayList<>();
this.userInfosTotal = NumConstant.ZERO_L;
this.eventInfos = new ArrayList<>();
this.eventInfoTotal = NumConstant.ZERO_L;
this.resourceInfos = new ArrayList<>();
this.resourceInfoTotal = NumConstant.ZERO_L;
}
}

19
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/DataListLeftSubTotalResDTO.java

@ -0,0 +1,19 @@
package com.epmet.dataaggre.dto.govorg.result;
import lombok.Data;
/**
* @Description
* @Author yzm
* @Date 2022/7/29 10:45
*/
@Data
public class DataListLeftSubTotalResDTO {
private String orgId;
private String orgType;
private String orgName;
private String longitude;
private String latitude;
private Integer total=0;
}

59
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/EventInfoResultDTO.java

@ -0,0 +1,59 @@
package com.epmet.dataaggre.dto.govorg.result;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2022/7/26 16:52
* @DESC 事件本组织及下级难点堵点 社区治理-事件管理中标记的痛点堵点
*/
@Data
public class EventInfoResultDTO implements Serializable {
private static final long serialVersionUID = 1645410018462094960L;
/**
* 事件ID
*/
private String eventId;
/**
* 所属网格
*/
private String gridName;
@JsonIgnore
private String gridId;
/**
* 发生时间 yyyy-dd-mm hh:ii:ss
*/
private String happenTime;
/**
* 事件内容
*/
private String eventContent;
/**
* 经度
*/
private String longitude;
/**
* 纬度
*/
private String latitude;
public EventInfoResultDTO() {
this.eventId = "";
this.gridName = "";
this.happenTime = "";
this.eventContent = "";
this.longitude = "";
this.latitude = "";
}
}

8
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/GridInfoResultDTO.java

@ -38,5 +38,13 @@ public class GridInfoResultDTO implements Serializable {
private String gridId = "";
private String gridName = "";
private String pids = "";
/**
* 中心位置经度
*/
private String longitude;
/**
* 中心位置纬度
*/
private String latitude;
}

24
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/MemberProjectInfoResultDTO.java

@ -0,0 +1,24 @@
package com.epmet.dataaggre.dto.govorg.result;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/7/27 9:33
*/
@NoArgsConstructor
@Data
public class MemberProjectInfoResultDTO implements Serializable {
private static final long serialVersionUID = -4880909768378661921L;
private String staffId;
private String staffName;
private String orgId;
private String orgName;
private Integer projectCount = 0;
private Integer closedCount = 0;
}

17
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/OrgCountDTO.java

@ -0,0 +1,17 @@
package com.epmet.dataaggre.dto.govorg.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/7/27 14:56
*/
@Data
public class OrgCountDTO implements Serializable {
private static final long serialVersionUID = -1875812403619088015L;
private String orgId;
private Integer count;
}

25
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/OrgProjectDetailResultDTO.java

@ -0,0 +1,25 @@
package com.epmet.dataaggre.dto.govorg.result;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/7/27 9:32
*/
@NoArgsConstructor
@Data
public class OrgProjectDetailResultDTO implements Serializable {
private static final long serialVersionUID = 6333117500929136144L;
private String orgId;
private String orgType;
private String orgName;
private Integer memberCount = 0;
private Integer projectCount = 0;
private Integer closedCount = 0;
private Integer projectAve = 0;
private Integer closedAve = 0;
}

76
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/ResourceInfoResultDTO.java

@ -0,0 +1,76 @@
package com.epmet.dataaggre.dto.govorg.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2022/7/26 16:52
* @DESC
*/
@Data
public class ResourceInfoResultDTO implements Serializable {
private static final long serialVersionUID = 1645410018462094960L;
private String resourceId;
private String resourceType;
private String name;
/**
* 经度
*/
private String longitude;
/**
* 纬度
*/
private String latitude;
/**
* 分类名称
*/
private String categoryName;
private String category;
/**
* 占地面积
*/
private String areaCovered;
/**
* 容纳人数
*/
private String capacity;
/**
* 地址
*/
private String address;
/**
* 联系电话
*/
private String mobile;
/**
* 联系人
*/
private String principal;
public ResourceInfoResultDTO() {
this.resourceId = "";
this.resourceType = "";
this.name = "";
this.longitude = "";
this.latitude = "";
this.categoryName = "";
this.areaCovered = "";
this.capacity = "";
this.address = "";
this.mobile = "";
this.principal = "";
}
}

92
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/UserInfoResultDTO.java

@ -0,0 +1,92 @@
package com.epmet.dataaggre.dto.govorg.result;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
* @Author zxc
* @DateTime 2022/7/26 16:52
* @DESC
*/
@Data
public class UserInfoResultDTO implements Serializable {
private static final long serialVersionUID = 1645410018462094960L;
private String icUserId;
/**
* 名字
*/
private String name;
/**
* 所属网格
*/
private String gridName;
@JsonIgnore
private String gridId;
/**
* 所属房屋
*/
private String houseName;
@JsonIgnore
private String homeId;
/**
* 手机号
*/
private String mobile;
/**
* 身份证
*/
private String idCard;
/**
* 工作单位
*/
private String gzdw;
/**
* 人户情况
*/
private String rhqk;
/**
* 人员分类
*/
private List<String> type;
/**
* 经度
*/
private String longitude;
/**
* 纬度
*/
private String latitude;
public UserInfoResultDTO() {
this.icUserId = "";
this.name = "";
this.gridName = "";
this.houseName = "";
this.homeId = "";
this.mobile = "";
this.idCard = "";
this.gzdw = "";
this.rhqk = "";
this.type = new ArrayList<>();
this.longitude = "";
this.latitude = "";
}
}

9
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/resigroup/result/OrgInfoCommonDTO.java

@ -17,4 +17,13 @@ public class OrgInfoCommonDTO implements Serializable {
private String orgId;
private String orgName;
private String orgType;
/**
* 中心位置经度
*/
private String longitude;
/**
* 中心位置纬度
*/
private String latitude;
}

75
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/enums/MenusEnums.java

@ -0,0 +1,75 @@
package com.epmet.dataaggre.enums;
import org.apache.commons.lang3.StringUtils;
public enum MenusEnums {
IC_DANGEROUS_CHEMICALS("shequzhili/tuceng/anquan/weihua/index","ic_dangerous_chemicals","重点危化品企业","govorg"),
IC_SUPERIOR_RESOURCE("shequzhili/tuceng/yingji/ziyuan/index","ic_superior_resource","优势资源管理","govorg"),
IC_ENTERPRISE("shequzhili/tuceng/anquan/xuncha/index","ic_enterprise","企事业单位巡查","govorg"),
IC_COMMUNITY_SELF_ORGANIZATION("communityService/sqzzz/index","ic_community_self_organization","社区自组织","heart"),
IC_CITY_MANAGEMENT("shequzhili/csgltc/csgl","ic_city_management","城市管理图层","govorg"),
IC_PUBLIC_SERVICE("shequzhili/ggfwtc/ggfw","ic_public_service","公共服务图层","govorg"),
IC_EVENT("shequzhili/event/eventList","ic_event","事件管理","govproject");
private String url;
private String value;
private String name;
private String db;
MenusEnums(String url, String value, String name, String db) {
this.url = url;
this.value = value;
this.name = name;
this.db = db;
}
public static MenusEnums get(String url) {
for (MenusEnums gm : MenusEnums.values()) {
if (gm.url.equals(url)) {
return gm;
}
}
return null;
}
public static String getValueByUrl(String url){
if (StringUtils.isBlank(url)){
return "";
}
for (MenusEnums me : MenusEnums.values()) {
if (me.url.equals(url)) {
return me.getValue();
}
}
return "";
}
public static String getDbByValue(String table){
if (StringUtils.isBlank(table)){
return "";
}
for (MenusEnums me : MenusEnums.values()) {
if (me.value.equals(table)) {
return me.getDb();
}
}
return "";
}
public String getUrl() {
return url;
}
public String getValue() {
return value;
}
public String getName() {
return name;
}
public String getDb() {
return db;
}
}

12
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/feign/DataAggregatorOpenFeignClient.java

@ -2,13 +2,18 @@ package com.epmet.dataaggre.feign;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dataaggre.dto.epmetuser.form.ResisByPolicyRulesFormDTO;
import com.epmet.dataaggre.dto.epmetuser.result.ResiByPolicyInfoResultDTO;
import com.epmet.dataaggre.dto.govorg.form.GridLivelyFormDTO;
import com.epmet.dataaggre.feign.impl.DataAggregatorOpenFeignClientFallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@FeignClient(name = ServiceConstant.DATA_AGGREGATOR_SERVER, fallbackFactory = DataAggregatorOpenFeignClientFallbackFactory.class)
// @FeignClient(name = ServiceConstant.DATA_AGGREGATOR_SERVER, fallbackFactory= DataAggregatorOpenFeignClientFallbackFactory.class,url = "localhost:8114")
public interface DataAggregatorOpenFeignClient {
@ -21,4 +26,11 @@ public interface DataAggregatorOpenFeignClient {
@PostMapping(value = "data/aggregator/org/export-send-msg")
Result exportGridLiveRes(@RequestBody GridLivelyFormDTO form);
/**
* 政策人员预览
* @param input
* @return
*/
@PostMapping("data/aggregator/icuser/listByPolicyRules")
Result<PageData<ResiByPolicyInfoResultDTO>> listByPolicyRules(@RequestBody ResisByPolicyRulesFormDTO input);
}

8
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/feign/impl/DataAggregatorOpenFeignClientFallback.java

@ -1,8 +1,11 @@
package com.epmet.dataaggre.feign.impl;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dataaggre.dto.epmetuser.form.ResisByPolicyRulesFormDTO;
import com.epmet.dataaggre.dto.epmetuser.result.ResiByPolicyInfoResultDTO;
import com.epmet.dataaggre.dto.govorg.form.GridLivelyFormDTO;
import com.epmet.dataaggre.feign.DataAggregatorOpenFeignClient;
@ -16,4 +19,9 @@ public class DataAggregatorOpenFeignClientFallback implements DataAggregatorOpen
public Result exportGridLiveRes(GridLivelyFormDTO form) {
return ModuleUtils.feignConError(ServiceConstant.DATA_AGGREGATOR_SERVER, "pcworkRecordListExportSendMsg",form);
}
@Override
public Result<PageData<ResiByPolicyInfoResultDTO>> listByPolicyRules(ResisByPolicyRulesFormDTO input) {
return ModuleUtils.feignConError(ServiceConstant.DATA_AGGREGATOR_SERVER, "listByPolicyRules", input);
}
}

5
epmet-module/data-aggregator/data-aggregator-server/deploy/docker-compose-dev.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms32m -Xmx250m -jar ./data-aggregator.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

5
epmet-module/data-aggregator/data-aggregator-server/deploy/docker-compose-prod.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms256m -Xmx760m -jar ./data-aggregator.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

5
epmet-module/data-aggregator/data-aggregator-server/deploy/docker-compose-test.yml

@ -11,6 +11,11 @@ services:
environment:
RUN_INSTRUCT: "java -Xms32m -Xmx250m -jar ./data-aggregator.jar"
restart: "unless-stopped"
logging:
driver: local
options:
max-size: "10m"
max-file: "2"
deploy:
resources:
limits:

10
epmet-module/data-aggregator/data-aggregator-server/pom.xml

@ -13,6 +13,16 @@
<artifactId>data-aggregator-server</artifactId>
<dependencies>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>gov-access-client</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>epmet-heart-client</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>epmet-commons-tools</artifactId>

127
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/CoverageController.java

@ -1,19 +1,31 @@
package com.epmet.dataaggre.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.dto.result.ZhzlCategorySelectDTO;
import com.epmet.commons.tools.enums.ZhzlResiCategoryEnum;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.EpmetRequestHolder;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dataaggre.dto.govorg.form.CoverageAnalisisDataListFormDTO;
import com.epmet.dataaggre.dto.govorg.result.CoverageAnalisisDataListResultDTO;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dataaggre.dto.coverage.AnalysisGovernedTargetsResult;
import com.epmet.dataaggre.dto.coverage.AnalysisResourceCategoriesResult;
import com.epmet.dataaggre.dto.govorg.form.*;
import com.epmet.dataaggre.dto.govorg.result.*;
import com.epmet.dataaggre.service.CoverageService;
import com.github.pagehelper.PageInfo;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* 5大图层controller
@ -32,15 +44,122 @@ public class CoverageController {
*/
@RequestMapping("dataList")
public Result<PageData<CoverageAnalisisDataListResultDTO>> dataList(@RequestBody CoverageAnalisisDataListFormDTO input) {
// 获取跟组织的坐标
String customerId = EpmetRequestHolder.getLoginUserCustomerId();
String staffId = EpmetRequestHolder.getLoginUserId();
List<String> coverageTypes = input.getCoverageTypes();
List<String> categoryKeys = input.getCategoryKeys();
if (CollectionUtils.isEmpty(coverageTypes)) {
return new Result().ok(new PageData<>(new ArrayList<>(), 0));
}
PageData<CoverageAnalisisDataListResultDTO> page = coverageService.analysisDataList(coverageTypes, categoryKeys,
PageData<CoverageAnalisisDataListResultDTO> page = coverageService.analysisDataList(customerId,staffId,input.getOrgId(),input.getOrgType(),coverageTypes, categoryKeys,
input.getSearch(), input.getPageNo(), input.getPageSize(), input.getIsPage());
return new Result<PageData<CoverageAnalisisDataListResultDTO>>().ok(page);
}
/**
* 综合治理图层页面居民类别下拉框
* @return
*/
@PostMapping("zhzl-category-option")
public Result<List<ZhzlCategorySelectDTO>> queryZhzlCategorySelectOptions() {
List<ZhzlCategorySelectDTO> list = ZhzlResiCategoryEnum.toSelectList();
return new Result<List<ZhzlCategorySelectDTO>>().ok(list);
}
/**
* Desc: 五大图层首页搜索
* @param formDTO
* @param tokenDto
* @author zxc
* @date 2022/7/26 16:29
*/
@PostMapping("search")
public Result<CoverageHomeSearchResultDTO> coverageHomeSearch(@RequestBody CoverageHomeSearchFormDTO formDTO, @LoginUser TokenDto tokenDto){
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setUserId(tokenDto.getUserId());
return new Result<CoverageHomeSearchResultDTO>().ok(coverageService.coverageHomeSearch(formDTO));
}
/**
* 五大图层-可视化-右侧分类树列表
* @return
*/
@PostMapping("analysis/resourceCategories")
public Result<List<AnalysisResourceCategoriesResult>> listAnalysisResourceCategories(@RequestBody Map<String, String> input) {
String agencyId = input.get("agencyId");
List<AnalysisResourceCategoriesResult> r = coverageService.listAnalysisResourceCategories(agencyId);
return new Result<List<AnalysisResourceCategoriesResult>>().ok(r);
}
/**
* 被管理对象分类列表
* @param input:只有一个字段:agencyId
* @return
*/
@PostMapping("analysis/governedTargetCategories")
public Result<List<AnalysisGovernedTargetsResult>> listGovernedTargetCategories(@RequestBody Map<String, String> input) {
String agencyId = input.get("agencyId");
if (StringUtils.isBlank(agencyId)) {
throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "请输入组织ID");
}
List<AnalysisGovernedTargetsResult> r = coverageService.listGovernedTargetCategories(agencyId);
return new Result<List<AnalysisGovernedTargetsResult>>().ok(r);
}
/**
* 五大图层左侧菜单点击事件查询人.事的分布
*
* @param formDTO
* @return
*/
@RequestMapping("dataList-left")
public Result<PageData<CoverageAnalisisDataListResultDTOV2>> dataListLeft(@LoginUser TokenDto tokenDto, @RequestBody CoverageAnalisisDataListLeftFormDTO formDTO) {
List<String> coverageTypes = formDTO.getCoverageTypes();
List<String> categoryKeys = formDTO.getCategoryKeys();
if (CollectionUtils.isEmpty(coverageTypes)||CollectionUtils.isEmpty(categoryKeys)) {
return new Result().ok(new PageData<>(new ArrayList<>(), 0));
}
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setStaffId(tokenDto.getUserId());
PageData<CoverageAnalisisDataListResultDTOV2> page = coverageService.dataListLeft(formDTO);
return new Result<PageData<CoverageAnalisisDataListResultDTOV2>>().ok(page);
}
@PostMapping("search-user-detail")
public Result<UserInfoResultDTO> searchUserDetail(@RequestBody SearchDetailFormDTO formDTO,@LoginUser TokenDto tokenDto){
ValidatorUtils.validateEntity(formDTO, SearchDetailFormDTO.SearchUserDetailForm.class);
formDTO.setCustomerId(tokenDto.getCustomerId());
return new Result<UserInfoResultDTO>().ok(coverageService.searchUserDetail(formDTO));
}
@PostMapping("search-event-detail")
public Result<EventInfoResultDTO> searchEventDetail(@RequestBody SearchDetailFormDTO formDTO,@LoginUser TokenDto tokenDto){
ValidatorUtils.validateEntity(formDTO, SearchDetailFormDTO.SearchEventDetailForm.class);
formDTO.setCustomerId(tokenDto.getCustomerId());
return new Result<EventInfoResultDTO>().ok(coverageService.searchEventDetail(formDTO));
}
@PostMapping("search-resource-detail")
public Result<ResourceInfoResultDTO> searchResourceDetail(@RequestBody SearchDetailFormDTO formDTO,@LoginUser TokenDto tokenDto){
ValidatorUtils.validateEntity(formDTO, SearchDetailFormDTO.SearchResourceDetailForm.class);
formDTO.setCustomerId(tokenDto.getCustomerId());
return new Result<ResourceInfoResultDTO>().ok(coverageService.searchResourceDetail(formDTO));
}
/**
* 左侧菜单点击后查询当前组织下级组织各分类数量
*
* @param tokenDto
* @param formDTO
* @return
*/
@PostMapping("dataList-left-subtotal")
public Result<List<DataListLeftSubTotalResDTO>> dataListLeftSubTotal(@LoginUser TokenDto tokenDto, @RequestBody DataListLeftSubTotalFormDTO formDTO) {
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setStaffId(tokenDto.getUserId());
ValidatorUtils.validateEntity(formDTO, DataListLeftSubTotalFormDTO.AddUserInterGroup.class);
List<DataListLeftSubTotalResDTO> resultList = coverageService.dataListLeftSubTotal(formDTO);
return new Result<List<DataListLeftSubTotalResDTO>>().ok(resultList);
}
}

128
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java

@ -3,6 +3,7 @@ package com.epmet.dataaggre.controller;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.annotation.RequirePermission;
import com.epmet.commons.tools.aop.NoRepeatSubmit;
@ -18,7 +19,9 @@ import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.security.user.LoginUserUtil;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.utils.poi.excel.handler.FreezeAndFilter;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dataaggre.beans.GridMemberDataAnalysisExcelExportBean;
import com.epmet.dataaggre.dto.epmetuser.result.StaffSelectResDTO;
@ -27,6 +30,8 @@ import com.epmet.dataaggre.dto.govorg.CustomerGridDTO;
import com.epmet.dataaggre.dto.govorg.form.*;
import com.epmet.dataaggre.dto.govorg.result.*;
import com.epmet.dataaggre.enums.GridMemberDataAnalysisEnums;
import com.epmet.dataaggre.excel.MemberProjectInfoExcel;
import com.epmet.dataaggre.excel.OrgProjectDetailExcel;
import com.epmet.dataaggre.service.AggreGridService;
import com.epmet.dataaggre.service.govorg.GovOrgService;
import lombok.extern.slf4j.Slf4j;
@ -39,11 +44,13 @@ import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.URLEncoder;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.*;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicReference;
/**
@ -439,4 +446,125 @@ public class GovOrgController {
}
return new Result<BuildingInfoCache>().ok(govOrgService.queryBuildingInfo(buildingId));
}
/**
* 组织项目统计
* @Param tokenDto
* @Param formDTO
* @Return {@link Result< PageData< OrgProjectDetailResultDTO>>}
* @Author zhaoqifeng
* @Date 2022/7/28 10:34
*/
@PostMapping("orgProjectDetailList")
public Result<PageData<OrgProjectDetailResultDTO>> orgProjectDetailList(@LoginUser TokenDto tokenDto, @RequestBody OrgStatisticsFormDTO formDTO) {
return new Result<PageData<OrgProjectDetailResultDTO>>().ok(govOrgService.orgProjectDetailList(tokenDto, formDTO));
}
/**
* 网格员项目统计
* @Param tokenDto
* @Param formDTO
* @Return {@link Result< PageData< MemberProjectInfoResultDTO>>}
* @Author zhaoqifeng
* @Date 2022/7/28 10:34
*/
@PostMapping("memberProjectInfoList")
public Result<PageData<MemberProjectInfoResultDTO>> memberProjectInfoList(@LoginUser TokenDto tokenDto, @RequestBody OrgStatisticsFormDTO formDTO) {
return new Result<PageData<MemberProjectInfoResultDTO>>().ok(govOrgService.memberProjectInfoList(tokenDto, formDTO));
}
@NoRepeatSubmit
@PostMapping("orgProjectDetailList/export")
public void orgProjectExport(@LoginUser TokenDto tokenDto, @RequestBody OrgStatisticsFormDTO formDTO, HttpServletResponse response) throws Exception {
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setIsPage(false);
formDTO.setPageSize(NumConstant.TEN_THOUSAND);
ExcelWriter excelWriter = null;
AtomicInteger i = new AtomicInteger(1);
try {
String fileName = "组织事件统计.xlsx";
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), OrgProjectDetailExcel.class).build();
PageData<OrgProjectDetailResultDTO> page = null;
WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").registerWriteHandler(new FreezeAndFilter()).build();
OrgProjectDetailExcel sum = new OrgProjectDetailExcel();
do {
page = govOrgService.orgProjectDetailList(tokenDto, formDTO);
List<OrgProjectDetailExcel> list = ConvertUtils.sourceToTarget(page.getList(), OrgProjectDetailExcel.class);
list.forEach(item -> {
item.setIndex(i.getAndIncrement());
});
sum.setMemberCount(sum.getMemberCount() + list.stream().mapToInt(OrgProjectDetailExcel::getMemberCount).sum());
sum.setProjectCount(sum.getProjectCount() + list.stream().mapToInt(OrgProjectDetailExcel::getProjectCount).sum());
sum.setClosedCount(sum.getClosedCount() + list.stream().mapToInt(OrgProjectDetailExcel::getClosedCount).sum());
excelWriter.write(list, writeSheet);
formDTO.setPageNo(formDTO.getPageNo() + NumConstant.ONE);
} while (org.apache.commons.collections4.CollectionUtils.isNotEmpty(page.getList()) && page.getList().size() == formDTO.getPageSize());
sum.setIndex(i.getAndIncrement());
sum.setOrgName("合计");
if (NumConstant.ZERO != sum.getMemberCount()) {
sum.setProjectAve(sum.getProjectCount()/sum.getMemberCount());
sum.setClosedAve(sum.getClosedCount()/sum.getMemberCount());
}
List<OrgProjectDetailExcel> list = new ArrayList<>();
list.add(sum);
excelWriter.write(list, writeSheet);
} catch (EpmetException e) {
response.reset();
response.setCharacterEncoding("UTF-8");
response.setHeader("content-type", "application/json; charset=UTF-8");
PrintWriter printWriter = response.getWriter();
Result<Object> result = new Result<>().error(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),e.getMsg());
printWriter.write(JSON.toJSONString(result));
printWriter.close();
} catch (Exception e) {
log.error("export exception", e);
} finally {
if (excelWriter != null) {
excelWriter.finish();
}
}
}
@NoRepeatSubmit
@PostMapping("memberProjectInfoList/export")
public void memberProjectExport(@LoginUser TokenDto tokenDto, @RequestBody OrgStatisticsFormDTO formDTO, HttpServletResponse response) throws Exception {
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setIsPage(false);
formDTO.setPageSize(NumConstant.TEN_THOUSAND);
ExcelWriter excelWriter = null;
AtomicInteger i = new AtomicInteger(1);
try {
String fileName = "网格员事件统计.xlsx";
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), MemberProjectInfoExcel.class).build();
PageData<MemberProjectInfoResultDTO> page = null;
WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").registerWriteHandler(new FreezeAndFilter()).build();
do {
page = govOrgService.memberProjectInfoList(tokenDto, formDTO);
List<MemberProjectInfoExcel> list = ConvertUtils.sourceToTarget(page.getList(), MemberProjectInfoExcel.class);
list.forEach(item -> {
item.setIndex(i.getAndIncrement());
});
excelWriter.write(list, writeSheet);
formDTO.setPageNo(formDTO.getPageNo() + NumConstant.ONE);
} while (org.apache.commons.collections4.CollectionUtils.isNotEmpty(page.getList()) && page.getList().size() == formDTO.getPageSize());
} catch (EpmetException e) {
response.reset();
response.setCharacterEncoding("UTF-8");
response.setHeader("content-type", "application/json; charset=UTF-8");
PrintWriter printWriter = response.getWriter();
Result<Object> result = new Result<>().error(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),e.getMsg());
printWriter.write(JSON.toJSONString(result));
printWriter.close();
} catch (Exception e) {
log.error("export exception", e);
} finally {
if (excelWriter != null) {
excelWriter.finish();
}
}
}
}

93
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/IcUserController.java

@ -2,27 +2,50 @@ package com.epmet.dataaggre.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.feign.ResultDataResolver;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dataaggre.dto.epmetuser.form.IcUserCategoryFormDTO;
import com.epmet.dataaggre.dto.epmetuser.form.ResisByPolicyRulesFormDTO;
import com.epmet.dataaggre.dto.epmetuser.result.IcUserCategoryResultDTO;
import com.epmet.dataaggre.dto.epmetuser.result.ResiByPolicyInfoResultDTO;
import com.epmet.dataaggre.service.ResiService;
import com.epmet.dataaggre.service.epmetuser.EpmetUserService;
import com.epmet.dataaggre.service.impl.ResiServiceImpl;
import com.epmet.feign.EpmetHeartOpenFeignClient;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
@RestController
@RequestMapping("icuser")
public class IcUserController {
public class IcUserController implements ResultDataResolver {
@Autowired
private EpmetUserService epmetUserService;
@Autowired
private ResiServiceImpl icResiService;
@Autowired
private EpmetHeartOpenFeignClient heartOpenFeignClient;
/**
* 人员类别分析-各类别人数
@ -38,5 +61,73 @@ public class IcUserController {
return new Result<List<IcUserCategoryResultDTO>>().ok(epmetUserService.queryIcUserCategoryData(formDTO));
}
/**
* 政策人员预览
* @param input
* @return
*/
@PostMapping("listByPolicyRules")
public Result<PageData<ResiByPolicyInfoResultDTO>> listByPolicyRules(@RequestBody ResisByPolicyRulesFormDTO input) {
List<ResisByPolicyRulesFormDTO.ResiRule> resiRule = input.getRuleList().getResiRuleList();
List<ResisByPolicyRulesFormDTO.HouseRule> houseRule = input.getRuleList().getHouseRuleList();
List<ResisByPolicyRulesFormDTO.StatRule> statRule = input.getRuleList().getStatRuleList();
Integer pageNo = input.getPageNo();
Integer pageSize = input.getPageSize();
String orgId = input.getOrgId();
String orgType = input.getOrgType();
String neighborHoodId = input.getNeighborHoodId();
String buildingId = input.getBuildingId();
String unitId = input.getUnitId();
String houseId = input.getHouseId();
String idCard = input.getIdCard();
String name = input.getName();
String ruleId = input.getRuleId();
if (StringUtils.isNotBlank(ruleId)) {
// 从heart取,覆盖形参
com.epmet.dto.form.resi.ResisByPolicyRulesFormDTO.RuleList ruleList = getResultDataOrThrowsException(
heartOpenFeignClient.listPolicyRules4QueryAndExport(ruleId),
ServiceConstant.EPMET_HEART_SERVER,
EpmetErrorCode.SERVER_ERROR.getCode(),
null, null);
resiRule = ConvertUtils.sourceToTarget(ruleList.getResiRuleList(), ResisByPolicyRulesFormDTO.ResiRule.class);
houseRule = ConvertUtils.sourceToTarget(ruleList.getHouseRuleList(), ResisByPolicyRulesFormDTO.HouseRule.class);
statRule = ConvertUtils.sourceToTarget(ruleList.getStatRuleList(), ResisByPolicyRulesFormDTO.StatRule.class);
}
// 全都为空,则返回空ç
if (CollectionUtils.isEmpty(resiRule)
&& CollectionUtils.isEmpty(houseRule)
&& CollectionUtils.isEmpty(statRule)) {
return new Result().ok(new PageData<>(new ArrayList<>(), 0));
}
// 对特殊规则进行转换。
icResiService.specificRuleConvert(resiRule);
PageData<ResiByPolicyInfoResultDTO> page = icResiService.listByPolicyRules(orgId, orgType, neighborHoodId, buildingId, unitId,
houseId, idCard, name, pageNo, pageSize, resiRule, houseRule, statRule);
return new Result<PageData<ResiByPolicyInfoResultDTO>>().ok(page);
}
/**
* 导出政策查找到的居民
* @param input
*/
@PostMapping("exportByPolicyRules")
public void exportResisByPolicy(@RequestBody ResisByPolicyRulesFormDTO input, HttpServletResponse response) {
try {
icResiService.exportResisByPolicy(
input.getOrgId(), input.getOrgType(), input.getNeighborHoodId(), input.getBuildingId(), input.getUnitId(),
input.getHouseId(), input.getIdCard(), input.getName(), input.getRuleId(), input.getRuleList().getResiRuleList(),
input.getRuleList().getHouseRuleList(), input.getRuleList().getStatRuleList(), response);
} catch (IOException e) {
throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "导出Excel文件失败", "导出Excel文件失败");
}
}
}

9
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/datastats/DataStatsDao.java

@ -26,7 +26,10 @@ import com.epmet.dataaggre.dto.epmetuser.FactIcuserCategoryAnalysisDailyDTO;
import com.epmet.dataaggre.dto.epmetuser.form.GridMemberPatrolListFormDTO;
import com.epmet.dataaggre.dto.epmetuser.result.GridMemberPatrolListResultDTO;
import com.epmet.dataaggre.dto.govorg.form.GridLivelyFormDTO;
import com.epmet.dataaggre.dto.govorg.form.OrgStatisticsFormDTO;
import com.epmet.dataaggre.dto.govorg.result.GridDateIdResultDTO;
import com.epmet.dataaggre.dto.govorg.result.MemberProjectInfoResultDTO;
import com.epmet.dataaggre.dto.govorg.result.OrgCountDTO;
import com.epmet.dataaggre.dto.govproject.form.ProjectTotalFormDTO;
import com.epmet.dataaggre.dto.resigroup.ActCategoryDictDTO;
import com.epmet.dataaggre.dto.resigroup.result.GroupActRankDetailDTO;
@ -373,4 +376,10 @@ public interface DataStatsDao {
*/
List<GridDateIdResultDTO> getGridProejctToProjectMain(GridLivelyFormDTO formDTO);
List<SubAgencyProjectResultDTO> getAgencyProjectTotal(OrgStatisticsFormDTO formDTO);
List<OrgCountDTO> getMemberCount(@Param("agencyId")String agencyId, @Param("dateId") String dateId);
List<MemberProjectInfoResultDTO> getMemberList(@Param("gridId") String gridId, @Param("dateId") String dateId);
}

81
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/IcResiUserDao.java

@ -18,7 +18,11 @@
package com.epmet.dataaggre.dao.epmetuser;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dataaggre.dto.epmetuser.form.ResisByPolicyRulesFormDTO;
import com.epmet.dataaggre.dto.epmetuser.result.IcResiInfoResultDTO;
import com.epmet.dataaggre.dto.epmetuser.result.ResiByPolicyInfoResultDTO;
import com.epmet.dataaggre.dto.govorg.form.CoverageHomeSearchFormDTO;
import com.epmet.dataaggre.dto.govorg.result.UserInfoResultDTO;
import com.epmet.dataaggre.dto.govproject.result.ProjectAnalysisResultDTO;
import com.epmet.dataaggre.entity.epmetuser.IcResiUserEntity;
import com.epmet.dto.IcResiUserDTO;
@ -58,5 +62,80 @@ public interface IcResiUserDao extends BaseDao<IcResiUserEntity> {
@Param("agencyId") String agencyId,
@Param("queryPids") String queryPids,
@Param("categoryKey") String categoryKey,
@Param("search") String search);
@Param("search") String search,
@Param("gridId")String gridId);
/**
* 政策查找居民
* @param houseIds
* @return
*/
List<ResiByPolicyInfoResultDTO> listByPolicyRules(@Param("customerId") String customerId,
@Param("orgIdPath") String orgIdPath,
@Param("orgId") String orgId,
@Param("orgType") String orgType,
@Param("neighborHoodId") String neighborHoodId,
@Param("buildingId") String buildingId,
@Param("unitId") String unitId,
@Param("houseId") String houseId,
@Param("idCard") String idCard,
@Param("name") String name,
@Param("resiRules") List<ResisByPolicyRulesFormDTO.ResiRule> resiRule,
@Param("houseIds") List<String> houseIds);
/**
* 政策查找居民
* @param houseIds
* @return
*/
Integer getTotalByPolicyRules(@Param("customerId") String customerId,
@Param("orgIdPath") String orgIdPath,
@Param("orgId") String orgId,
@Param("orgType") String orgType,
@Param("neighborHoodId") String neighborHoodId,
@Param("buildingId") String buildingId,
@Param("unitId") String unitId,
@Param("houseId") String houseId,
@Param("idCard") String idCard,
@Param("name") String name,
@Param("resiRules") List<ResisByPolicyRulesFormDTO.ResiRule> resiRule,
@Param("houseIds") List<String> houseIds);
/**
* Desc: 获取icUser
* @param formDTO
* @author zxc
* @date 2022/7/27 17:09
*/
List<UserInfoResultDTO> getAllIcUser(CoverageHomeSearchFormDTO formDTO);
Integer countVolunteersByCategory(@Param("customerId")String customerId,
@Param("agencyId")String agencyId,
@Param("staffOrgIds")String staffOrgIds,
@Param("search")String search,
@Param("resiCategory")String resiCategory);
Integer countVolunteersWithoutVolCategory(@Param("customerId")String customerId,
@Param("agencyId")String agencyId,
@Param("staffOrgIds")String staffOrgIds,
@Param("search")String search);
List<IcResiUserEntity> listVolunteersByCategory(@Param("customerId")String customerId,
@Param("agencyId")String agencyId,
@Param("staffOrgIds")String staffOrgIds,
@Param("search")String search,
@Param("resiCategory")String resiCategory);
/**
* 列出没有志愿者类别的志愿者
* @param customerId
* @param agencyId
* @param staffOrgIds
* @param search
* @return
*/
List<IcResiUserEntity> listVolunteersWithoutVolCategory(@Param("customerId")String customerId,
@Param("agencyId")String agencyId,
@Param("staffOrgIds")String staffOrgIds,
@Param("search")String search);
}

4
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StaffRoleDao.java

@ -21,6 +21,8 @@ import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dataaggre.dto.epmetuser.result.RoleListResultDTO;
import com.epmet.dataaggre.dto.epmetuser.result.StaffRoleListResultDTO;
import com.epmet.dataaggre.dto.govorg.result.GridStaffResultDTO;
import com.epmet.dataaggre.dto.govorg.result.MemberProjectInfoResultDTO;
import com.epmet.dataaggre.dto.govorg.result.OrgCountDTO;
import com.epmet.dataaggre.entity.epmetuser.StaffRoleEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -74,4 +76,6 @@ public interface StaffRoleDao extends BaseDao<StaffRoleEntity> {
*/
List<StaffRoleEntity> selectStaffByRole(@Param("customerId") String customerId, @Param("roleId") String roleId, @Param("userId") String userId);
List<OrgCountDTO> getMemberCount(@Param("customerId") String customerId);
List<MemberProjectInfoResultDTO> getMemberList(@Param("customerId") String customerId, @Param("orgIds") List<String> orgIds);
}

2
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerAgencyDao.java

@ -106,4 +106,6 @@ public interface CustomerAgencyDao extends BaseDao<CustomerAgencyEntity> {
*/
LinkedList<GridLivelyResultDTO> subAgencyListAndGridSumNum(@Param("agencyId") String agencyId);
List<String> getSubAgencyList(@Param("agencyId") String agencyId);
}

3
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffAgencyDao.java

@ -22,6 +22,7 @@ import com.epmet.dataaggre.dto.govorg.CustomerAgencyDTO;
import com.epmet.dataaggre.dto.govorg.CustomerGridDTO;
import com.epmet.dataaggre.dto.govorg.CustomerStaffAgencyDTO;
import com.epmet.dataaggre.dto.govorg.OrgDTO;
import com.epmet.dataaggre.dto.govorg.result.StaffOrgRelationResultDTO;
import com.epmet.dataaggre.entity.govorg.CustomerStaffAgencyEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -71,4 +72,6 @@ public interface CustomerStaffAgencyDao extends BaseDao<CustomerStaffAgencyEntit
*/
List<OrgDTO> selectSubAgency(@Param("agencyId") String agencyId, @Param("userId") String userId);
List<StaffOrgRelationResultDTO> getStaffList(@Param("orgId") String orgId, @Param("orgType") String orgType);
}

2
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffGridDao.java

@ -56,4 +56,6 @@ public interface CustomerStaffGridDao extends BaseDao<CustomerStaffGridEntity> {
* @Date 2021/8/20 14:37
*/
List<OrgDTO> selectGridList(@Param("agencyId") String agencyId, @Param("userId") String userId);
List<GridStaffResultDTO> getGridStaffByAgency(@Param("agencyId") String agencyId);
}

48
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcCityManagementDao.java

@ -1,9 +1,13 @@
package com.epmet.dataaggre.dao.govorg;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dataaggre.dto.govorg.form.CoverageHomeSearchFormDTO;
import com.epmet.dataaggre.dto.govorg.result.ResourceInfoResultDTO;
import com.epmet.dataaggre.entity.govorg.IcCityManagementEntity;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* 城市管理图层
*
@ -13,5 +17,49 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface IcCityManagementDao extends BaseDao<IcCityManagementEntity> {
/**
* Desc: 资源获取城市管理信息
* @param formDTO
* @author zxc
* @date 2022/7/28 10:22
*/
List<ResourceInfoResultDTO> getCityManageInfos(CoverageHomeSearchFormDTO formDTO);
Integer getCityManageInfosCount(CoverageHomeSearchFormDTO formDTO);
/**
* Desc: 资源获取公共服务信息
* @param formDTO
* @author zxc
* @date 2022/7/28 10:22
*/
List<ResourceInfoResultDTO> getPublicServiceInfos(CoverageHomeSearchFormDTO formDTO);
Integer getPublicServiceInfosCount(CoverageHomeSearchFormDTO formDTO);
/**
* Desc: 资源获取重点危化品企业信息
* @param formDTO
* @author zxc
* @date 2022/7/28 10:22
*/
List<ResourceInfoResultDTO> getDangerousChemicalsInfos(CoverageHomeSearchFormDTO formDTO);
Integer getDangerousChemicalsInfosCount(CoverageHomeSearchFormDTO formDTO);
/**
* Desc: 资源获取优势资源信息
* @param formDTO
* @author zxc
* @date 2022/7/28 10:22
*/
List<ResourceInfoResultDTO> getSuperiorResourceInfos(CoverageHomeSearchFormDTO formDTO);
Integer getSuperiorResourceInfosCount(CoverageHomeSearchFormDTO formDTO);
/**
* Desc: 资源获取企事业单位巡查信息
* @param formDTO
* @author zxc
* @date 2022/7/28 10:22
*/
List<ResourceInfoResultDTO> getEnterpriseInfos(CoverageHomeSearchFormDTO formDTO);
Integer getEnterpriseInfosCount(CoverageHomeSearchFormDTO formDTO);
}

14
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcCoverageCategoryDictDao.java

@ -3,6 +3,9 @@ package com.epmet.dataaggre.dao.govorg;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dataaggre.entity.govorg.IcCoverageCategoryDictEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 五大图层类别字典表
@ -12,5 +15,14 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface IcCoverageCategoryDictDao extends BaseDao<IcCoverageCategoryDictEntity> {
/**
* Desc: 根据客户ID和数据类型获取字典对应的url
* @param customerId
* @param dataType
* @author zxc
* @date 2022/7/27 16:52
*/
List<String> getAllTypeCoverageByCustomerAndType(@Param("customerId") String customerId, @Param("dataType") String dataType);
}

5
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcEnterprisePatrolRecordDao.java

@ -26,7 +26,8 @@ public interface IcEnterprisePatrolRecordDao extends BaseDao<IcEnterprisePatrolR
*/
Integer countEnterprisePatrol(@Param("customerId") String customerId, @Param("agencyId") String agencyId,
@Param("staffOrgIds") String staffOrgIds, @Param("search") String search,
@Param("categoryKey") String categoryKey);
@Param("categoryKey") String categoryKey,@Param("latestResult")String latestResult,
@Param("gridId")String gridId);
/**
* 企事业单位巡查列表
@ -38,5 +39,5 @@ public interface IcEnterprisePatrolRecordDao extends BaseDao<IcEnterprisePatrolR
*/
List<IcEnterisePatrolResultDTO> listEnterprisePatrol(@Param("customerId") String customerId, @Param("agencyId") String agencyId,
@Param("staffOrgIds") String staffOrgIds, @Param("search") String search,
@Param("categoryKey") String categoryKey);
@Param("categoryKey") String categoryKey, @Param("latestResult") String latestResult);
}

24
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcHouseDao.java

@ -1,8 +1,12 @@
package com.epmet.dataaggre.dao.govorg;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dataaggre.dto.epmetuser.form.ResisByPolicyRulesFormDTO;
import com.epmet.dataaggre.entity.govorg.IcHouseEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 房屋信息
@ -12,4 +16,24 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface IcHouseDao extends BaseDao<IcHouseEntity> {
/**
* 为政策-预览居民提供房屋id列表查询
* @param orgIdPath
* @param customerId
* @param neighborHoodId
* @param buildingId
* @param unitId
* @param houseId
* @param houseRule
* @param statRule
* @return
*/
List<String> listHouseIds4PolicyResis(@Param("orgIdPath") String orgIdPath,
@Param("customerId") String customerId,
@Param("neighborHoodId") String neighborHoodId,
@Param("buildingId") String buildingId,
@Param("unitId") String unitId,
@Param("houseId") String houseId,
@Param("houseRule") List<ResisByPolicyRulesFormDTO.HouseRule> houseRule,
@Param("statRule") List<ResisByPolicyRulesFormDTO.StatRule> statRule);
}

13
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/IcNeighborhoodDao.java

@ -0,0 +1,13 @@
package com.epmet.dataaggre.dao.govorg;
import com.epmet.commons.tools.redis.common.bean.BuildingInfoCache;
import com.epmet.dto.IcNeighborHoodDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface IcNeighborhoodDao {
List<IcNeighborHoodDTO> neighborhoodsByIds(@Param("neighborhoodIds") List<String> neighborhoodIds);
}

13
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govproject/IcEventDao.java

@ -1,9 +1,13 @@
package com.epmet.dataaggre.dao.govproject;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dataaggre.dto.govorg.form.CoverageHomeSearchFormDTO;
import com.epmet.dataaggre.dto.govorg.result.EventInfoResultDTO;
import com.epmet.dataaggre.entity.govproject.IcEventEntity;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* 事件管理表
*
@ -12,4 +16,13 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface IcEventDao extends BaseDao<IcEventEntity> {
/**
* Desc: 资源获取事件信息
* @param formDTO
* @author zxc
* @date 2022/7/28 10:48
*/
List<EventInfoResultDTO> getEventInfos(CoverageHomeSearchFormDTO formDTO);
}

9
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govproject/ProjectDao.java

@ -19,6 +19,8 @@ package com.epmet.dataaggre.dao.govproject;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dataaggre.dto.govissue.result.IssueListResultDTO;
import com.epmet.dataaggre.dto.govorg.form.OrgStatisticsFormDTO;
import com.epmet.dataaggre.dto.govorg.result.OrgCountDTO;
import com.epmet.dataaggre.dto.govproject.ProjectDTO;
import com.epmet.dataaggre.dto.govproject.ProjectRelatedPersonnelDTO;
import com.epmet.dataaggre.dto.govproject.ResiEventDTO;
@ -123,4 +125,11 @@ public interface ProjectDao extends BaseDao<ProjectEntity> {
*/
List<ResiEventReportOrgDTO> getEventOrgList(@Param("eventIds") List<String> eventIds);
List<ProjectCategoryTotalResultDTO> getCategoryCount(ProjectCategoryTotalFormDTO formDTO);
List<OrgCountDTO> getGridProjectCount(OrgStatisticsFormDTO formDTO);
List<OrgCountDTO> getGridClosedProjectCount(OrgStatisticsFormDTO formDTO);
List<OrgCountDTO> getMemberProjectCount(OrgStatisticsFormDTO formDTO);
List<OrgCountDTO> getMemberClosedProjectCount(OrgStatisticsFormDTO formDTO);
List<OrgCountDTO> getAgencyProjectCount(OrgStatisticsFormDTO formDTO);
List<OrgCountDTO> getAgencyClosedProjectCount(OrgStatisticsFormDTO formDTO);
}

8
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/heart/IcCommunitySelfOrganizationDao.java

@ -18,9 +18,13 @@
package com.epmet.dataaggre.dao.heart;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dataaggre.dto.govorg.form.CoverageHomeSearchFormDTO;
import com.epmet.dataaggre.dto.govorg.result.ResourceInfoResultDTO;
import com.epmet.dataaggre.entity.heart.IcCommunitySelfOrganizationEntity;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* 社区自组织表
*
@ -29,4 +33,8 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface IcCommunitySelfOrganizationDao extends BaseDao<IcCommunitySelfOrganizationEntity> {
List<ResourceInfoResultDTO> getCommunitySelOrgInfos(CoverageHomeSearchFormDTO formDTO);
Integer getCommunitySelOrgInfosCount(CoverageHomeSearchFormDTO formDTO);
}

9
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/opercustomize/IcResiCategoryWarnConfigDao.java

@ -0,0 +1,9 @@
package com.epmet.dataaggre.dao.opercustomize;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dataaggre.entity.opercustomize.IcResiCategoryWarnConfigEntity;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface IcResiCategoryWarnConfigDao extends BaseDao<IcResiCategoryWarnConfigEntity> {
}

10
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/IcCityManagementEntity.java

@ -73,4 +73,14 @@ public class IcCityManagementEntity extends BaseEpmetEntity {
*/
private String latitude;
/**
* 联系人
*/
private String principal;
/**
* 联系电话
*/
private String mobile;
}

12
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/IcCoverageCategoryDictEntity.java

@ -43,11 +43,23 @@ public class IcCoverageCategoryDictEntity extends BaseEpmetEntity {
*/
private String placeType;
/**
* 在可视化系统中所属的plact_type跟COVERAGE_TYPE可能不同COVERAGE_TYPE是给管理平台用的
*/
private String placeTypeInAnalysis;
/**
* 要跟菜单绑定(客户配置了这个菜单这里才显示)
*/
private String menuUrl;
/**
* 所属五大图层zhzl综合治理图层yjcl应急处置图层aqsc安全生产图层csgl城市管理图层ggfw公共服务图层
*/
private String coverageType;
private String dataType;
/**
* 排序
*/

10
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/IcPublicServiceEntity.java

@ -73,4 +73,14 @@ public class IcPublicServiceEntity extends BaseEpmetEntity {
*/
private String latitude;
/**
* 联系人
*/
private String principal;
/**
* 联系电话
*/
private String mobile;
}

86
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/opercustomize/IcResiCategoryWarnConfigEntity.java

@ -0,0 +1,86 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.dataaggre.entity.opercustomize;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 居民类别预警配置表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2021-11-04
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("ic_resi_category_warn_config")
public class IcResiCategoryWarnConfigEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 客户id
*/
private String customerId;
/**
* 项标签
*/
private String label;
/**
* 表名
*/
private String tableName;
/**
* 列名
*/
private String columnName;
/**
* 是否预警 1 0
*/
private String warn;
/**
* 排序
*/
private Integer sort;
/**
* 等级1阈值
*/
@TableField(value = "LEVEL_1")
private Integer level1;
/**
* 等级2阈值
*/
@TableField(value = "LEVEL_2")
private Integer level2;
/**
* 等级3阈值
*/
@TableField(value = "LEVEL_3")
private Integer level3;
}

40
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/excel/MemberProjectInfoExcel.java

@ -0,0 +1,40 @@
package com.epmet.dataaggre.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.HeadStyle;
import com.alibaba.excel.enums.poi.FillPatternTypeEnum;
import lombok.Data;
/**
* 数字平台党员信息表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-17
*/
@HeadStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 44)
@Data
public class MemberProjectInfoExcel {
@ColumnWidth(10)
@ExcelProperty(value = "序号",order = 1)
private Integer index;
@ColumnWidth(30)
@ExcelProperty(value = "网格员",order = 2)
private String staffName;
@ColumnWidth(40)
@ExcelProperty(value = "所属组织",order = 3)
private String orgName;
@ColumnWidth(20)
@ExcelProperty(value = "上报数量",order = 4)
private Integer projectCount = 0;
@ColumnWidth(20)
@ExcelProperty(value = "办结数",order = 5)
private Integer closedCount = 0;
}

47
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/excel/OrgProjectDetailExcel.java

@ -0,0 +1,47 @@
package com.epmet.dataaggre.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.HeadStyle;
import com.alibaba.excel.enums.poi.FillPatternTypeEnum;
import lombok.Data;
/**
* 数字平台党员信息表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-17
*/
@HeadStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 44)
@Data
public class OrgProjectDetailExcel {
@ColumnWidth(10)
@ExcelProperty(value = "序号",order = 1)
private Integer index;
@ColumnWidth(40)
@ExcelProperty(value = "所属组织",order = 2)
private String orgName;
@ColumnWidth(20)
@ExcelProperty(value = "网格员数",order = 3)
private Integer memberCount = 0;
@ColumnWidth(20)
@ExcelProperty(value = "上报数量",order = 4)
private Integer projectCount = 0;
@ColumnWidth(20)
@ExcelProperty(value = "办结数",order = 5)
private Integer closedCount = 0;
@ColumnWidth(20)
@ExcelProperty(value = "人均上报",order = 6)
private Integer projectAve = 0;
@ColumnWidth(20)
@ExcelProperty(value = "人均办结",order = 7)
private Integer closedAve = 0;
}

21
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/excel/ResisByPolicyExcel.java

@ -0,0 +1,21 @@
package com.epmet.dataaggre.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
@Data
public class ResisByPolicyExcel {
@ExcelProperty("姓名")
private String name;
@ExcelProperty("手机号")
private String mobile;
@ExcelProperty("身份证号")
private String idCard;
/**
* 小区全名包含小区前面的属性比如网格等
*/
@ExcelProperty("小区名")
private String neighborHoodName;
@ExcelProperty("年龄")
private Integer age;
}

109
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/redis/GovCustomerMenuRedis.java

@ -0,0 +1,109 @@
package com.epmet.dataaggre.redis;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.redis.RedisKeys;
import com.epmet.commons.tools.redis.RedisUtils;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.GovMenuDTO;
import com.epmet.dto.form.GetCustomerMenuListFormDTO;
import com.epmet.feign.GovAccessFeignClient;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* 客户菜单配置表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2021-03-16
*/
@Slf4j
@Component
public class GovCustomerMenuRedis {
@Autowired
private RedisUtils redisUtils;
@Autowired
private GovAccessFeignClient govAccessFeignClient;
/**
* Desc: 保存客户菜单缓存
* @param customerId
* @param type
* @param govMenuDTOS
* @author zxc
* @date 2022/7/27 13:45
*/
public void setCustomerMenuList(String customerId, Integer type, List<GovMenuDTO> govMenuDTOS) {
if (checkParam(customerId, type) && !CollectionUtils.isEmpty(govMenuDTOS) && StringUtils.isNotBlank(govMenuDTOS.get(NumConstant.ZERO).getName())) {
String key = RedisKeys.getCustomerMenuListFiveCoverage().concat(customerId);
govMenuDTOS.forEach(g -> {
Map<String, Object> map = BeanUtil.beanToMap(g, false, true);
redisUtils.listAdd(key,map);
});
}
}
/**
* Desc: 获取客户菜单缓存
* @param customerId
* @param type
* @param tableName
* @author zxc
* @date 2022/7/27 13:45
*/
public List<GovMenuDTO> getCustomerMenuList(String customerId, Integer type, String tableName) {
if (checkParam(customerId, type)) {
String key = RedisKeys.getCustomerMenuListFiveCoverage().concat(customerId);
List<GovMenuDTO> result = new ArrayList<>();
List<Map<String, Object>> maps = (List<Map<String, Object>>) redisUtils.listGetAll(key, NumConstant.ZERO, NumConstant.ONE_NEG);
for (Map<String, Object> map : maps) {
result.add(ConvertUtils.mapToEntity(map,GovMenuDTO.class));
}
// result = (List<GovMenuDTO>) redisUtils.listGetAll(key, NumConstant.ZERO,NumConstant.ONE_NEG);
if (CollectionUtils.isEmpty(result)){
GetCustomerMenuListFormDTO formDTO = new GetCustomerMenuListFormDTO();
formDTO.setCustomerId(customerId);
formDTO.setType(type);
formDTO.setTableName(tableName);
Result<List<GovMenuDTO>> customerMenuList = govAccessFeignClient.getCustomerMenuList(formDTO);
if (!customerMenuList.success()){
throw new EpmetException("查询客户菜单失败"+ JSON.toJSONString(formDTO));
}
result = customerMenuList.getData();
setCustomerMenuList(customerId,type,customerMenuList.getData());
}
return result;
}
return new ArrayList<>();
}
/**
* Desc: 删除客户菜单缓存
* @param
* @author zxc
* @date 2022/7/27 13:47
*/
public void delAllCustomerMenu(String customerId) {
String key = RedisKeys.getCustomerMenuListFiveCoverage().concat(customerId);
redisUtils.deleteByPattern(key);
}
private boolean checkParam(String customerId, Integer type) {
if (StringUtils.isBlank(customerId) || type == null){
log.warn("checkParam fail, param is null");
return false;
}
return true;
}
}

47
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/CoverageService.java

@ -1,7 +1,13 @@
package com.epmet.dataaggre.service;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dataaggre.dto.govorg.result.CoverageAnalisisDataListResultDTO;
import com.epmet.dataaggre.dto.coverage.AnalysisGovernedTargetsResult;
import com.epmet.dataaggre.dto.coverage.AnalysisResourceCategoriesResult;
import com.epmet.dataaggre.dto.govorg.form.CoverageAnalisisDataListLeftFormDTO;
import com.epmet.dataaggre.dto.govorg.form.CoverageHomeSearchFormDTO;
import com.epmet.dataaggre.dto.govorg.form.DataListLeftSubTotalFormDTO;
import com.epmet.dataaggre.dto.govorg.form.SearchDetailFormDTO;
import com.epmet.dataaggre.dto.govorg.result.*;
import java.util.List;
@ -18,6 +24,43 @@ public interface CoverageService {
* @param pageSize 页面大小
* @return
*/
PageData<CoverageAnalisisDataListResultDTO> analysisDataList(List<String> coverageTypes, List<String> categoryKeys,
PageData<CoverageAnalisisDataListResultDTO> analysisDataList(String customerId,String staffId,String orgId,String orgType,
List<String> coverageTypes, List<String> categoryKeys,
String search, Integer pageNo, Integer pageSize, Boolean isPage);
/**
* Desc: 五大图层首页搜索
* @param formDTO
* @author zxc
* @date 2022/7/26 16:29
*/
CoverageHomeSearchResultDTO coverageHomeSearch(CoverageHomeSearchFormDTO formDTO);
/**
* 五大图层-可视化-右侧分类树列表
* @return
*/
List<AnalysisResourceCategoriesResult> listAnalysisResourceCategories(String agencyId);
List<AnalysisGovernedTargetsResult> listGovernedTargetCategories(String agencyId);
/**
* 五大图层左侧菜单点击事件查询人.事的分布
* @param formDTO
* @return
*/
PageData<CoverageAnalisisDataListResultDTOV2> dataListLeft(CoverageAnalisisDataListLeftFormDTO formDTO);
UserInfoResultDTO searchUserDetail(SearchDetailFormDTO formDTO);
EventInfoResultDTO searchEventDetail(SearchDetailFormDTO formDTO);
ResourceInfoResultDTO searchResourceDetail(SearchDetailFormDTO formDTO);
/**
* 左侧菜单点击后查询当前组织下级组织各分类数量
* @param formDTO
* @return
*/
List<DataListLeftSubTotalResDTO> dataListLeftSubTotal(DataListLeftSubTotalFormDTO formDTO);
}

50
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/ResiService.java

@ -0,0 +1,50 @@
package com.epmet.dataaggre.service;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dataaggre.dto.epmetuser.form.ResisByPolicyRulesFormDTO;
import com.epmet.dataaggre.dto.epmetuser.result.ResiByPolicyInfoResultDTO;
import com.github.pagehelper.PageInfo;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import java.util.Set;
/**
* 居民的service
*/
public interface ResiService {
/**
* 政策人员预览
* @param pageNo
* @param pageSize
* @param resiRule
* @param houseRule
*/
PageData<ResiByPolicyInfoResultDTO> listByPolicyRules(
String orgId, String orgType, String neighborHoodId, String buildingId, String unitId,
String houseId, String idCard, String name, Integer pageNo, Integer pageSize,
List<ResisByPolicyRulesFormDTO.ResiRule> resiRule,
List<ResisByPolicyRulesFormDTO.HouseRule> houseRule,
List<ResisByPolicyRulesFormDTO.StatRule> statRule);
/**
* 政策找居民导出
* @param orgId
* @param orgType
* @param neighborHoodId
* @param buildingId
* @param unitId
* @param houseId
* @param idCard
* @param name
* @param ruleId
*/
void exportResisByPolicy(String orgId, String orgType, String neighborHoodId, String buildingId, String unitId,
String houseId, String idCard, String name,
String ruleId, List<ResisByPolicyRulesFormDTO.ResiRule> resiRule,
List<ResisByPolicyRulesFormDTO.HouseRule> houseRule,
List<ResisByPolicyRulesFormDTO.StatRule> statRule,
HttpServletResponse response) throws IOException;
}

10
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/DataStatsService.java

@ -1,5 +1,6 @@
package com.epmet.dataaggre.service.datastats;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dataaggre.dto.datastats.FactGroupActDailyDTO;
import com.epmet.dataaggre.dto.datastats.form.*;
import com.epmet.dataaggre.dto.datastats.result.*;
@ -7,8 +8,10 @@ import com.epmet.dataaggre.dto.epmetuser.FactIcuserCategoryAnalysisDailyDTO;
import com.epmet.dataaggre.dto.epmetuser.form.GridMemberPatrolListFormDTO;
import com.epmet.dataaggre.dto.epmetuser.result.GridMemberPatrolListResultDTO;
import com.epmet.dataaggre.dto.govorg.form.GridLivelyFormDTO;
import com.epmet.dataaggre.dto.govorg.form.OrgStatisticsFormDTO;
import com.epmet.dataaggre.dto.govorg.result.GridDateIdResultDTO;
import com.epmet.dataaggre.dto.govorg.result.GridMemberDataAnalysisResultDTO;
import com.epmet.dataaggre.dto.govorg.result.MemberProjectInfoResultDTO;
import com.epmet.dataaggre.dto.govproject.form.ProjectTotalFormDTO;
import com.epmet.dataaggre.dto.resigroup.ActCategoryDictDTO;
import com.epmet.dataaggre.dto.resigroup.result.GroupActRankDetailDTO;
@ -16,6 +19,7 @@ import com.epmet.dataaggre.dto.resigroup.result.GroupActRankDetailDTO;
import javax.servlet.http.HttpServletResponse;
import java.text.ParseException;
import java.util.List;
import java.util.Map;
/**
* @Author sun
@ -296,4 +300,10 @@ public interface DataStatsService {
* @author sun
*/
List<GridDateIdResultDTO> getGridProejctToProjectMain(GridLivelyFormDTO formDTO);
Map<String, SubAgencyProjectResultDTO> getAgencyProjectTotal(OrgStatisticsFormDTO formDTO);
Map<String, Integer> getMemberMap(String agencyId);
PageData<MemberProjectInfoResultDTO> getMemberList(OrgStatisticsFormDTO formDTO);
}

157
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java

@ -1,63 +1,69 @@
package com.epmet.dataaggre.service.datastats.impl;
import cn.afterturn.easypoi.excel.entity.ExportParams;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.enums.OrgLevelEnum;
import com.epmet.commons.tools.enums.OrgTypeEnum;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.feign.ResultDataResolver;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.poi.excel.ExportMultiView;
import com.epmet.dataaggre.constant.DataSourceConstant;
import com.epmet.dataaggre.constant.OrgConstant;
import com.epmet.dataaggre.dao.datastats.DataStatsDao;
import com.epmet.dataaggre.dao.datastats.FactGridMemberStatisticsDailyDao;
import com.epmet.dataaggre.dto.datastats.FactGroupActDailyDTO;
import com.epmet.dataaggre.dto.datastats.form.*;
import com.epmet.dataaggre.dto.datastats.result.*;
import com.epmet.dataaggre.dto.epmetuser.FactIcuserCategoryAnalysisDailyDTO;
import com.epmet.dataaggre.dto.epmetuser.form.GridMemberPatrolListFormDTO;
import com.epmet.dataaggre.dto.epmetuser.result.GridMemberPatrolListResultDTO;
import com.epmet.dataaggre.dto.epmetuser.result.PatrolDailySumResult;
import com.epmet.dataaggre.dto.evaluationindex.ScreenAgencyOrGridListDTO;
import com.epmet.dataaggre.dto.evaluationindex.ScreenCustomerAgencyDTO;
import com.epmet.dataaggre.dto.evaluationindex.ScreenCustomerGridDTO;
import com.epmet.dataaggre.dto.evaluationindex.ScreenGovernRankDataDailyDTO;
import com.epmet.dataaggre.dto.govorg.form.GridLivelyFormDTO;
import com.epmet.dataaggre.dto.govorg.result.GridDateIdResultDTO;
import com.epmet.dataaggre.dto.govorg.result.GridMemberDataAnalysisResultDTO;
import com.epmet.dataaggre.dto.govproject.form.ProjectTotalFormDTO;
import com.epmet.dataaggre.dto.resigroup.ActCategoryDictDTO;
import com.epmet.dataaggre.dto.resigroup.result.GroupActRankDetailDTO;
import com.epmet.dataaggre.entity.datastats.DimAgencyEntity;
import com.epmet.dataaggre.entity.datastats.FactAgencyGovernDailyEntity;
import com.epmet.dataaggre.excel.CustomerDataManageExcel;
import com.epmet.dataaggre.service.datastats.DataStatsService;
import com.epmet.dataaggre.service.epmetuser.StatsStaffPatrolRecordDailyService;
import com.epmet.dataaggre.service.evaluationindex.EvaluationIndexService;
import com.epmet.dataaggre.service.govorg.GovOrgService;
import com.epmet.dataaggre.service.opercrm.CustomerRelation;
import com.github.pagehelper.PageHelper;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletResponse;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.NumberFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.enums.OrgLevelEnum;
import com.epmet.commons.tools.enums.OrgTypeEnum;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.feign.ResultDataResolver;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.poi.excel.ExportMultiView;
import com.epmet.dataaggre.constant.DataSourceConstant;
import com.epmet.dataaggre.constant.OrgConstant;
import com.epmet.dataaggre.dao.datastats.DataStatsDao;
import com.epmet.dataaggre.dao.datastats.FactGridMemberStatisticsDailyDao;
import com.epmet.dataaggre.dto.datastats.FactGroupActDailyDTO;
import com.epmet.dataaggre.dto.datastats.form.*;
import com.epmet.dataaggre.dto.datastats.result.*;
import com.epmet.dataaggre.dto.epmetuser.FactIcuserCategoryAnalysisDailyDTO;
import com.epmet.dataaggre.dto.epmetuser.form.GridMemberPatrolListFormDTO;
import com.epmet.dataaggre.dto.epmetuser.result.GridMemberPatrolListResultDTO;
import com.epmet.dataaggre.dto.epmetuser.result.PatrolDailySumResult;
import com.epmet.dataaggre.dto.evaluationindex.ScreenAgencyOrGridListDTO;
import com.epmet.dataaggre.dto.evaluationindex.ScreenCustomerAgencyDTO;
import com.epmet.dataaggre.dto.evaluationindex.ScreenCustomerGridDTO;
import com.epmet.dataaggre.dto.evaluationindex.ScreenGovernRankDataDailyDTO;
import com.epmet.dataaggre.dto.govorg.form.GridLivelyFormDTO;
import com.epmet.dataaggre.dto.govorg.form.OrgStatisticsFormDTO;
import com.epmet.dataaggre.dto.govorg.result.GridDateIdResultDTO;
import com.epmet.dataaggre.dto.govorg.result.GridMemberDataAnalysisResultDTO;
import com.epmet.dataaggre.dto.govorg.result.MemberProjectInfoResultDTO;
import com.epmet.dataaggre.dto.govorg.result.OrgCountDTO;
import com.epmet.dataaggre.dto.govproject.form.ProjectTotalFormDTO;
import com.epmet.dataaggre.dto.resigroup.ActCategoryDictDTO;
import com.epmet.dataaggre.dto.resigroup.result.GroupActRankDetailDTO;
import com.epmet.dataaggre.entity.datastats.DimAgencyEntity;
import com.epmet.dataaggre.entity.datastats.FactAgencyGovernDailyEntity;
import com.epmet.dataaggre.excel.CustomerDataManageExcel;
import com.epmet.dataaggre.service.datastats.DataStatsService;
import com.epmet.dataaggre.service.epmetuser.StatsStaffPatrolRecordDailyService;
import com.epmet.dataaggre.service.evaluationindex.EvaluationIndexService;
import com.epmet.dataaggre.service.govorg.GovOrgService;
import com.epmet.dataaggre.service.opercrm.CustomerRelation;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletResponse;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.NumberFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
* @Author sun
@ -2267,4 +2273,41 @@ public class DataStatsServiceImpl implements DataStatsService, ResultDataResolve
public List<GridDateIdResultDTO> getGridProejctToProjectMain(GridLivelyFormDTO formDTO) {
return dataStatsDao.getGridProejctToProjectMain(formDTO);
}
@Override
public Map<String, SubAgencyProjectResultDTO> getAgencyProjectTotal(OrgStatisticsFormDTO formDTO) {
List<SubAgencyProjectResultDTO> list = dataStatsDao.getAgencyProjectTotal(formDTO);
if (CollectionUtils.isEmpty(list)) {
return Collections.emptyMap();
}
return list.stream().collect(Collectors.toMap(SubAgencyProjectResultDTO::getAgencyId, Function.identity()));
}
/**
* 组织下网格的网格员数量统计
* @Param agencyId
* @Return {@link Map< String, Integer>}
* @Author zhaoqifeng
* @Date 2022/7/27 16:11
*/
@Override
public Map<String, Integer> getMemberMap(String agencyId) {
//当前日期前一天
String dateId = DateUtils.format(DateUtils.addDateDays(new Date(), NumConstant.ONE_NEG), DateUtils.DATE_PATTERN_YYYYMMDD);
List<OrgCountDTO> list = dataStatsDao.getMemberCount(agencyId, dateId);
if (CollectionUtils.isEmpty(list)) {
return Collections.emptyMap();
}
return list.stream().collect(Collectors.toMap(OrgCountDTO::getOrgId, OrgCountDTO::getCount, (o1, o2) -> o1));
}
@Override
public PageData<MemberProjectInfoResultDTO> getMemberList(OrgStatisticsFormDTO formDTO) {
//当前日期前一天
String dateId = DateUtils.format(DateUtils.addDateDays(new Date(), NumConstant.ONE_NEG), DateUtils.DATE_PATTERN_YYYYMMDD);
PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize());
List<MemberProjectInfoResultDTO> list = dataStatsDao.getMemberList(formDTO.getOrgId(), dateId);
PageInfo<MemberProjectInfoResultDTO> pageInfo = new PageInfo<>(list);
return new PageData<>(list, pageInfo.getTotal());
}
}

37
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java

@ -1,18 +1,24 @@
package com.epmet.dataaggre.service.epmetuser;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dataaggre.dto.epmetuser.form.*;
import com.epmet.dataaggre.dto.epmetuser.result.*;
import com.epmet.dataaggre.dto.govorg.form.GridLivelyFormDTO;
import com.epmet.dataaggre.dto.govorg.form.OrgStaffListFormDTO;
import com.epmet.dataaggre.dto.govorg.form.OrgStatisticsFormDTO;
import com.epmet.dataaggre.dto.govorg.form.StaffDetailV2FormDTO;
import com.epmet.dataaggre.dto.govorg.result.CoverageAnalisisDataListResultDTO;
import com.epmet.dataaggre.dto.govorg.result.GridDateIdResultDTO;
import com.epmet.dataaggre.dto.govorg.result.GridStaffResultDTO;
import com.epmet.dataaggre.dto.govorg.result.MemberProjectInfoResultDTO;
import com.epmet.dataaggre.dto.govproject.result.ProjectAnalysisResultDTO;
import com.epmet.dataaggre.entity.epmetuser.CustomerStaffEntity;
import com.epmet.dataaggre.entity.epmetuser.IcResiUserEntity;
import com.epmet.dto.IcResiUserDTO;
import com.epmet.dto.UserBaseInfoDTO;
import java.util.List;
import java.util.Map;
/**
* @Author zxc
@ -199,4 +205,35 @@ public interface EpmetUserService {
* @return
*/
List<StaffSelectResDTO> staffSelectList(List<String> staffIds);
List<ResiByPolicyInfoResultDTO> listByPolicyRules(String customerId, String orgIdPath, String orgId, String orgType, String neighborHoodId, String buildingId, String unitId,
String houseId, String idCard, String name, Integer pageNo, Integer pageSize,
List<ResisByPolicyRulesFormDTO.ResiRule> resiRule, List<String> houseIds);
Integer getTotalByPolicyRules(String customerId, String orgIdPath, String orgId, String orgType, String neighborHoodId, String buildingId, String unitId,
String houseId, String idCard, String name,
List<ResisByPolicyRulesFormDTO.ResiRule> resiRule, List<String> houseIds);
/**
* 统计各组织下网格员数量
*
* @Param customerId
* @Return {@link Map< String, Integer>}
* @Author zhaoqifeng
* @Date 2022/7/27 14:58
*/
Map<String, Integer> getMemberCount(String customerId);
/**
* 获取组织下网格员列表
*
* @Param agencyId
* @Return {@link PageData< MemberProjectInfoResultDTO>}
* @Author zhaoqifeng
* @Date 2022/7/27 17:32
*/
PageData<MemberProjectInfoResultDTO> getMemberList(OrgStatisticsFormDTO formDTO);
Integer countVolunteers(String customerId, String agencyId, String staffOrgIds, String search, String resiCategory);
List<IcResiUserEntity> listVolunteers(String customerId, String agencyId, String staffOrgIds, String search, String resiCategory);
}

14
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/IcResiService.java

@ -1,6 +1,8 @@
package com.epmet.dataaggre.service.epmetuser;
import com.epmet.dataaggre.dto.epmetuser.result.IcResiInfoResultDTO;
import com.epmet.dataaggre.dto.govorg.form.CoverageHomeSearchFormDTO;
import com.epmet.dataaggre.dto.govorg.result.UserInfoResultDTO;
import com.epmet.dataaggre.entity.epmetuser.IcResiUserEntity;
import java.util.List;
@ -22,7 +24,7 @@ public interface IcResiService {
List<IcResiUserEntity> listResisByCategories4Coverage(String customerId, String agencyId, String queryPids, String categoryKey, String search,
Integer pageNo, Integer pageSize, Boolean isPage);
Integer countResisByCategories4Coverage(String customerId, String agencyId, String queryPids, String categoryKey, String search);
Integer countResisByCategories4Coverage(String customerId, String agencyId, String queryPids, String categoryKey, String search,String gridId);
/**
* 使用特殊人群类别查询居民列表
@ -38,5 +40,13 @@ public interface IcResiService {
List<IcResiInfoResultDTO> listSpecialResisBySpecialType(String customerId, String agencyId, String queryPids, String categoryKey, String search,
Integer pageNo, Integer pageSize, Boolean isPage);
Integer countSpecialResisBySpecialType(String customerId, String agencyId, String staffOrgIds, String categoryKey, String search);
Integer countSpecialResisBySpecialType(String customerId, String agencyId, String staffOrgIds, String categoryKey, String search,String gridId);
/**
* Desc: 获取icUser
* @param formDTO
* @author zxc
* @date 2022/7/27 17:09
*/
List<UserInfoResultDTO> getAllIcUser(CoverageHomeSearchFormDTO formDTO);
}

83
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java

@ -7,6 +7,7 @@ import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.dto.form.IdAndNameDTO;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
import com.epmet.commons.tools.enums.OrgTypeEnum;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.redis.common.CustomerStaffRedis;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils;
@ -25,16 +26,11 @@ import com.epmet.dataaggre.dto.govorg.CustomerDepartmentDTO;
import com.epmet.dataaggre.dto.govorg.CustomerGridDTO;
import com.epmet.dataaggre.dto.govorg.form.GridLivelyFormDTO;
import com.epmet.dataaggre.dto.govorg.form.OrgStaffListFormDTO;
import com.epmet.dataaggre.dto.govorg.form.OrgStatisticsFormDTO;
import com.epmet.dataaggre.dto.govorg.form.StaffDetailV2FormDTO;
import com.epmet.dataaggre.dto.govorg.result.GridDateIdResultDTO;
import com.epmet.dataaggre.dto.govorg.result.GridStaffResultDTO;
import com.epmet.dataaggre.dto.govorg.result.StaffOrgNameResultDTO;
import com.epmet.dataaggre.dto.govorg.result.StaffOrgRelationResultDTO;
import com.epmet.dataaggre.dto.govorg.result.*;
import com.epmet.dataaggre.dto.govproject.result.ProjectAnalysisResultDTO;
import com.epmet.dataaggre.entity.epmetuser.CustomerStaffEntity;
import com.epmet.dataaggre.entity.epmetuser.GovStaffRoleEntity;
import com.epmet.dataaggre.entity.epmetuser.ResiUserBadgeEntity;
import com.epmet.dataaggre.entity.epmetuser.StaffRoleEntity;
import com.epmet.dataaggre.entity.epmetuser.*;
import com.epmet.dataaggre.service.datastats.DataStatsService;
import com.epmet.dataaggre.service.epmetuser.EpmetUserService;
import com.epmet.dataaggre.service.epmetuser.StaffPatrolDetailService;
@ -45,6 +41,8 @@ import com.epmet.dataaggre.service.opercustomize.CustomerFootBarService;
import com.epmet.dto.IcResiUserDTO;
import com.epmet.dto.UserBaseInfoDTO;
import com.epmet.dto.result.StaffRoleResultDTO;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
@ -604,6 +602,9 @@ public class EpmetUserServiceImpl implements EpmetUserService {
queryWrapper.eq(CustomerStaffEntity::getUserId,staffId)
.eq(CustomerStaffEntity::getDelFlag,NumConstant.ZERO_STR);
CustomerStaffEntity staffEntity = customerStaffDao.selectOne(queryWrapper);
if (null == staffEntity) {
return null;
}
CustomerStaffResultDTO result = ConvertUtils.sourceToTarget(staffEntity, CustomerStaffResultDTO.class);
//查询工作人员所属组织信息
@ -844,5 +845,71 @@ public class EpmetUserServiceImpl implements EpmetUserService {
return customerStaffDao.staffSelectList(staffIds);
}
@Override
public List<ResiByPolicyInfoResultDTO> listByPolicyRules(String customerId, String orgIdPath, String orgId, String orgType, String neighborHoodId, String buildingId, String unitId,
String houseId, String idCard, String name, Integer pageNo, Integer pageSize,
List<ResisByPolicyRulesFormDTO.ResiRule> resiRule, List<String> houseIds) {
PageHelper.startPage(pageNo, pageSize);
return icResiUserDao.listByPolicyRules(customerId, orgIdPath, orgId, orgType, neighborHoodId, buildingId, unitId, houseId, idCard, name, resiRule, houseIds);
}
@Override
public Integer getTotalByPolicyRules(String customerId, String orgIdPath, String orgId, String orgType, String neighborHoodId, String buildingId, String unitId, String houseId, String idCard, String name, List<ResisByPolicyRulesFormDTO.ResiRule> resiRule, List<String> houseIds) {
return icResiUserDao.getTotalByPolicyRules(customerId, orgIdPath, orgId, orgType, neighborHoodId, buildingId, unitId, houseId, idCard, name, resiRule, houseIds);
}
/**
* 统计各组织下网格员数量
*
* @param customerId
* @Param customerId
* @Return {@link Map< String, Integer>}
* @Author zhaoqifeng
* @Date 2022/7/27 14:58
*/
@Override
public Map<String, Integer> getMemberCount(String customerId) {
List<OrgCountDTO> list = staffRoleDao.getMemberCount(customerId);
if (CollectionUtils.isEmpty(list)) {
return Collections.emptyMap();
}
return list.stream().collect(Collectors.toMap(OrgCountDTO::getOrgId, OrgCountDTO::getCount, (o1, o2) -> o1));
}
/**
* 获取组织下网格员列表
*
* @param formDTO
* @Param agencyId
* @Return {@link PageData < MemberProjectInfoResultDTO>}
* @Author zhaoqifeng
* @Date 2022/7/27 17:32
*/
@Override
public PageData<MemberProjectInfoResultDTO> getMemberList(OrgStatisticsFormDTO formDTO) {
PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize());
List<MemberProjectInfoResultDTO> list = staffRoleDao.getMemberList(formDTO.getCustomerId(), formDTO.getAgencyList());
PageInfo<MemberProjectInfoResultDTO> pageInfo = new PageInfo<>(list);
return new PageData<>(list, pageInfo.getTotal());
}
@Override
public Integer countVolunteers(String customerId, String agencyId, String staffOrgIds, String search, String resiCategory) {
if ("others".equals(resiCategory)) {
//others需要特殊处理,它是指那些勾选了是志愿者,但是没有选择具体志愿者类型的居民,实际上志愿者类型里面没有others这个类别的
return icResiUserDao.countVolunteersWithoutVolCategory(customerId, agencyId, staffOrgIds, search);
} else {
return icResiUserDao.countVolunteersByCategory(customerId, agencyId, staffOrgIds, search, resiCategory);
}
}
@Override
public List<IcResiUserEntity> listVolunteers(String customerId, String agencyId, String staffOrgIds, String search, String resiCategory) {
if ("others".equals(resiCategory)) {
//others需要特殊处理,它是指那些勾选了是志愿者,但是没有选择具体志愿者类型的居民,实际上志愿者类型里面没有others这个类别的
return icResiUserDao.listVolunteersWithoutVolCategory(customerId, agencyId, staffOrgIds, search);
} else {
return icResiUserDao.listVolunteersByCategory(customerId, agencyId, staffOrgIds, search, resiCategory);
}
}
}

63
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/IcResiServiceImpl.java

@ -2,9 +2,12 @@ package com.epmet.dataaggre.service.epmetuser.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.tools.enums.ResiCategoryEnum;
import com.epmet.dataaggre.constant.DataSourceConstant;
import com.epmet.dataaggre.dao.epmetuser.IcResiUserDao;
import com.epmet.dataaggre.dto.epmetuser.result.IcResiInfoResultDTO;
import com.epmet.dataaggre.dto.govorg.form.CoverageHomeSearchFormDTO;
import com.epmet.dataaggre.dto.govorg.result.UserInfoResultDTO;
import com.epmet.dataaggre.entity.epmetuser.IcResiUserEntity;
import com.epmet.dataaggre.service.epmetuser.IcResiService;
import com.github.pagehelper.PageHelper;
@ -37,7 +40,7 @@ public class IcResiServiceImpl implements IcResiService {
PageHelper.startPage(pageNo, pageSize);
}
LambdaQueryWrapper<IcResiUserEntity> query = constructQueryWrapper4Coverage(customerId, agencyId, queryPids, categoryKey, search);
LambdaQueryWrapper<IcResiUserEntity> query = constructQueryWrapper4Coverage(customerId, agencyId, queryPids, categoryKey, search, null);
query.orderByAsc(IcResiUserEntity::getCreatedTime);
return resiUserDao.selectList(query);
}
@ -52,8 +55,8 @@ public class IcResiServiceImpl implements IcResiService {
* @return
*/
@Override
public Integer countResisByCategories4Coverage(String customerId, String agencyId, String queryPids, String categoryKey, String search) {
LambdaQueryWrapper<IcResiUserEntity> query = constructQueryWrapper4Coverage(customerId, agencyId, queryPids, categoryKey, search);
public Integer countResisByCategories4Coverage(String customerId, String agencyId, String queryPids, String categoryKey, String search, String gridId) {
LambdaQueryWrapper<IcResiUserEntity> query = constructQueryWrapper4Coverage(customerId, agencyId, queryPids, categoryKey, search,gridId);
return resiUserDao.selectCount(query);
}
@ -66,11 +69,12 @@ public class IcResiServiceImpl implements IcResiService {
* @param search
* @return
*/
LambdaQueryWrapper<IcResiUserEntity> constructQueryWrapper4Coverage(String customerId, String agencyId, String queryPids, String categoryKey, String search) {
LambdaQueryWrapper<IcResiUserEntity> constructQueryWrapper4Coverage(String customerId, String agencyId, String queryPids, String categoryKey, String search,String gridId) {
LambdaQueryWrapper<IcResiUserEntity> query = new LambdaQueryWrapper<>();
query.eq(IcResiUserEntity::getCustomerId, customerId);
query.eq(IcResiUserEntity::getStatus, "0"); // 只查询0 正常的居民。
query.and(q -> q.eq(IcResiUserEntity::getAgencyId, agencyId).or().likeRight(IcResiUserEntity::getPids, queryPids));
query.eq(StringUtils.isNotBlank(gridId), IcResiUserEntity::getGridId, gridId);
if ("resi_xfry".equals(categoryKey)) {
// 信访人员
query.eq(IcResiUserEntity::getIsXfry, true);
@ -78,6 +82,42 @@ public class IcResiServiceImpl implements IcResiService {
query.eq(IcResiUserEntity::getIsSn, true);
} else if ("resi_szry".equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsSz, true);
} else if (ResiCategoryEnum.IS_PARTY.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsParty, true);
} else if (ResiCategoryEnum.IS_DBH.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsDbh, true);
} else if (ResiCategoryEnum.IS_ENSURE_HOUSE.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsEnsureHouse, true);
} else if (ResiCategoryEnum.IS_UNEMPLOYED.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsUnemployed, true);
} else if (ResiCategoryEnum.IS_YLFN.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsYlfn, true);
} else if (ResiCategoryEnum.IS_VETERANS.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsVeterans, true);
} else if (ResiCategoryEnum.IS_UNITED_FRONT.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsUnitedFront, true);
} else if (ResiCategoryEnum.IS_XFRY.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsXfry, true);
} else if (ResiCategoryEnum.IS_VOLUNTEER.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsVolunteer, true);
} else if (ResiCategoryEnum.IS_OLD_PEOPLE.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsOldPeople, true);
} else if (ResiCategoryEnum.IS_KC.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsKc, true);
} else if (ResiCategoryEnum.IS_SD.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsSd, true);
} else if (ResiCategoryEnum.IS_SN.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsSn, true);
} else if (ResiCategoryEnum.IS_SZ.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsSz, true);
} else if (ResiCategoryEnum.IS_CJ.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsCj, true);
} else if (ResiCategoryEnum.IS_DB.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsDb, true);
} else if (ResiCategoryEnum.IS_MB.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsMb, true);
} else if (ResiCategoryEnum.IS_SPECIAL.getColName().equals(categoryKey)) {
query.eq(IcResiUserEntity::getIsSpecial, true);
}
if (StringUtils.isNotBlank(search)) {
@ -97,7 +137,18 @@ public class IcResiServiceImpl implements IcResiService {
}
@Override
public Integer countSpecialResisBySpecialType(String customerId, String agencyId, String staffOrgIds, String categoryKey, String search) {
return resiUserDao.countSpecialResisBySpecialType(customerId, agencyId, staffOrgIds, categoryKey, search);
public Integer countSpecialResisBySpecialType(String customerId, String agencyId, String staffOrgIds, String categoryKey, String search, String gridId) {
return resiUserDao.countSpecialResisBySpecialType(customerId, agencyId, staffOrgIds, categoryKey, search,gridId);
}
/**
* Desc: 获取icUser
* @param formDTO
* @author zxc
* @date 2022/7/27 17:09
*/
@Override
public List<UserInfoResultDTO> getAllIcUser(CoverageHomeSearchFormDTO formDTO) {
return resiUserDao.getAllIcUser(formDTO);
}
}

19
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgCoverageService.java

@ -1,16 +1,13 @@
package com.epmet.dataaggre.service.govorg;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.dataaggre.dto.govorg.result.IcEnterisePatrolResultDTO;
import com.epmet.dataaggre.entity.govorg.*;
import com.epmet.dataaggre.entity.heart.IcCommunitySelfOrganizationEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* org库的图层service
@ -115,11 +112,11 @@ public interface GovOrgCoverageService {
Integer countSuporiorResourceEntities(String customerId, String staffOrgIds, String search, String categoryKey);
Integer countEnterprisePatrol(String customerId, String agencyId, String staffOrgIds, String search, String categoryKey);
Integer countEnterprisePatrol(String customerId, String agencyId, String staffOrgIds, String search, String categoryKey,String latestResult,String gridId);
List<IcEnterisePatrolResultDTO> listEnterprisePatrol(String customerId, String agencyId, String staffOrgIds,
String search, String categoryKey, Boolean isPage, Integer pageNo,
Integer pageSize);
Integer pageSize, String latestResult);
/**
* 通过居民数量等条件查询房屋数量
@ -137,4 +134,16 @@ public interface GovOrgCoverageService {
* @return
*/
IcCoverageCategoryDictEntity selectByCategoryKey(String categoryKey);
/**
* Desc: 根据客户ID和数据类型获取字典对应的url
* @param customerId
* @param dataType
* @author zxc
* @date 2022/7/27 16:52
*/
List<String> getAllTypeCoverageByCustomerAndType(String customerId,String dataType);
List<IcCoverageCategoryDictEntity> listResourceCategoryEntities(String coverageType);
List<IcCoverageCategoryDictEntity> listGovernedTargetCategoryEntities();
}

77
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java

@ -1,7 +1,9 @@
package com.epmet.dataaggre.service.govorg;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.redis.common.bean.BuildingInfoCache;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.dataaggre.dto.epmetuser.form.ResisByPolicyRulesFormDTO;
import com.epmet.dataaggre.dto.epmetuser.result.StaffSelectResDTO;
import com.epmet.dataaggre.dto.govorg.CustomerAgencyDTO;
import com.epmet.dataaggre.dto.govorg.CustomerDepartmentDTO;
@ -10,6 +12,7 @@ import com.epmet.dataaggre.dto.govorg.form.*;
import com.epmet.dataaggre.dto.govorg.result.*;
import com.epmet.dataaggre.dto.resigroup.result.OrgInfoCommonDTO;
import com.epmet.dataaggre.entity.govorg.CustomerAgencyEntity;
import com.epmet.dto.IcNeighborHoodDTO;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@ -212,4 +215,78 @@ public interface GovOrgService {
* @return
*/
CustomerAgencyEntity getRootAgencyByCustomerId(String customerId);
List<String> listHouseIdsByRules(String customerId, String orgIdPath, String orgId, String orgType, String neighborHoodId, String buildingId,
String unitId, String houseId, List<ResisByPolicyRulesFormDTO.HouseRule> houseRule,
List<ResisByPolicyRulesFormDTO.StatRule> statRule, Integer pageNo, Integer pageSize);
List<IcNeighborHoodDTO> neighborhoodsByIds(List<String> neighborhoodIds);
/**
* 组织项目统计
*
* @Param tokenDto
* @Param formDTO
* @Return {@link PageData< MemberProjectInfoResultDTO>}
* @Author zhaoqifeng
* @Date 2022/7/27 9:43
*/
PageData<OrgProjectDetailResultDTO> orgProjectDetailList(TokenDto tokenDto, OrgStatisticsFormDTO formDTO);
/**
* 网格员项目相关统计
*
* @Param tokenDto
* @Param formDTO
* @Return {@link PageData< MemberProjectInfoResultDTO>}
* @Author zhaoqifeng
* @Date 2022/7/27 9:44
*/
PageData<MemberProjectInfoResultDTO> memberProjectInfoList(TokenDto tokenDto, OrgStatisticsFormDTO formDTO);
/**
* Desc: 资源获取城市管理信息
* @param formDTO
* @author zxc
* @date 2022/7/28 10:22
*/
List<ResourceInfoResultDTO> getCityManageInfos(CoverageHomeSearchFormDTO formDTO);
Integer getCityManageInfosCount(CoverageHomeSearchFormDTO formDTO);
/**
* Desc: 资源获取公共服务信息
* @param formDTO
* @author zxc
* @date 2022/7/28 10:22
*/
List<ResourceInfoResultDTO> getPublicServiceInfos(CoverageHomeSearchFormDTO formDTO);
Integer getPublicServiceInfosCount(CoverageHomeSearchFormDTO formDTO);
/**
* Desc: 资源获取重点危化品企业信息
* @param formDTO
* @author zxc
* @date 2022/7/28 10:22
*/
List<ResourceInfoResultDTO> getDangerousChemicalsInfos(CoverageHomeSearchFormDTO formDTO);
Integer getDangerousChemicalsInfosCount(CoverageHomeSearchFormDTO formDTO);
/**
* Desc: 资源获取优势资源信息
* @param formDTO
* @author zxc
* @date 2022/7/28 10:22
*/
List<ResourceInfoResultDTO> getSuperiorResourceInfos(CoverageHomeSearchFormDTO formDTO);
Integer getSuperiorResourceInfosCount(CoverageHomeSearchFormDTO formDTO);
/**
* Desc: 资源获取企事业单位巡查信息
* @param formDTO
* @author zxc
* @date 2022/7/28 10:22
*/
List<ResourceInfoResultDTO> getEnterpriseInfos(CoverageHomeSearchFormDTO formDTO);
Integer getEnterpriseInfosCount(CoverageHomeSearchFormDTO formDTO);
}

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

Loading…
Cancel
Save