jianjun 4 years ago
parent
commit
4d0251a5a7
  1. 10
      epmet-admin/epmet-admin-server/src/main/resources/db/migration/V0.0.9__add_data_type.sql
  2. 12
      epmet-commons/epmet-commons-mybatis/src/main/java/com/epmet/commons/mybatis/handler/FieldMetaObjectHandler.java
  3. 18
      epmet-commons/epmet-commons-rocketmq/src/main/java/com/epmet/commons/rocketmq/constants/ConsomerGroupConstants.java
  4. 20
      epmet-commons/epmet-commons-rocketmq/src/main/java/com/epmet/commons/rocketmq/constants/TopicConstants.java
  5. 19
      epmet-commons/epmet-commons-rocketmq/src/main/java/com/epmet/commons/rocketmq/messages/CalPartyUnitSatisfactionFormDTO.java
  6. 28
      epmet-commons/epmet-commons-rocketmq/src/main/java/com/epmet/commons/rocketmq/messages/ServerSatisfactionCalFormDTO.java
  7. 2
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/MqConstant.java
  8. 2
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/mq/eventmsg/BasePointEventMsg.java
  9. 1
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/DictTypeEnum.java
  10. 1
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/EventEnum.java
  11. 9
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java
  12. 12
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisUtils.java
  13. 3
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpClientManager.java
  14. 5
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/IpUtils.java
  15. 23
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/Md5Util.java
  16. 15
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerAgencyDTO.java
  17. 15
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerDepartmentDTO.java
  18. 20
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerGridDTO.java
  19. 15
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerAgencyEntity.java
  20. 15
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerDepartmentEntity.java
  21. 20
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerGridEntity.java
  22. 19
      epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml
  23. 19
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/form/heart/VolunteerDemandServiceFormDTO.java
  24. 12
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/heart/DataReportHeartDemandController.java
  25. 5
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/fact/FactVolunteerServiceDailyDao.java
  26. 12
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/GrassRootsGovernServiceImpl.java
  27. 8
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/GrassrootsPartyDevServiceImpl.java
  28. 4
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/IndexServiceImpl.java
  29. 20
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/PartyMemberLeadServiceImpl.java
  30. 2
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/heart/DemandService.java
  31. 44
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/heart/impl/DemandServiceImpl.java
  32. 8
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java
  33. 13
      epmet-module/data-report/data-report-server/src/main/resources/mapper/fact/FactVolunteerServiceDailyDao.xml
  34. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/heart/IcUserDemandServiceDao.java
  35. 9
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/stats/FactVolunteerServiceDailyEntity.java
  36. 8
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/model/ParseIndexExcelResult.java
  37. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/GroupExtractServiceImpl.java
  38. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/ProjectExtractServiceImpl.java
  39. 8
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateServiceImpl.java
  40. 6
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenDifficultyDataServiceImpl.java
  41. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/HeartDemandService.java
  42. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/impl/HeartDemandServiceImpl.java
  43. 83
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/DemandServiceImpl.java
  44. 20
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectProcessServiceImpl.java
  45. 12
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectServiceImpl.java
  46. 6
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/DimTopicStatusServiceImpl.java
  47. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/ScreenCentralZoneDataExtractServiceImpl.java
  48. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/topic/impl/TopicStatisticalServiceImpl.java
  49. 20
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java
  50. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/support/normalizing/ScoreCalculator.java
  51. 14
      epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/V0.0.27__volunteer_service_daily_add_gridid.sql
  52. 2
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/heart/IcUserDemandServiceDao.xml
  53. 2
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactVolunteerServiceDailyDao.xml
  54. 50
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/WorkDayServiceImpl.java
  55. 21
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/ActInfoDTO.java
  56. 5
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPartyActivityDTO.java
  57. 7
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcUserDemandRecDTO.java
  58. 9
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcUserDemandSatisfactionDTO.java
  59. 5
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcUserDemandServiceDTO.java
  60. 20
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/LatestActInfoDTO.java
  61. 11
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/VolunteerInfoDTO.java
  62. 20
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/AutoEvaluateDemandFormDTO.java
  63. 13
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/CancelDemandFormDTO.java
  64. 3
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/DemandAddFromDTO.java
  65. 4
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/DemandDetailFormDTO.java
  66. 47
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/EvaluateDemandFormDTO.java
  67. 26
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/FinishStaffFromDTO.java
  68. 34
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/ListHallFormDTO.java
  69. 4
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/PageListAnalysisFormDTO.java
  70. 112
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/ReportDemandFormDTO.java
  71. 56
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/ResiClientMyDemandFormDTO.java
  72. 21
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/TakeOrderFormDTO.java
  73. 23
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/UserDemandRelFormDTO.java
  74. 37
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiVolunteerAuthenticateFormDTO.java
  75. 12
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/VolunteerCommonFormDTO.java
  76. 1
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/ActIdFormDTO.java
  77. 1
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/ActPreviewFormDTO.java
  78. 20
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/DraftActInfoFormDTO.java
  79. 25
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/PublishActInfoFormDTO.java
  80. 25
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/RePublishFormDTO.java
  81. 23
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandCategoryResDTO.java
  82. 3
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandDataDTO.java
  83. 121
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandDetailResDTO.java
  84. 79
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandHallResultDTO.java
  85. 3
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandPageResDTO.java
  86. 18
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandRecResultDTO.java
  87. 30
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/FinishResultDTO.java
  88. 4
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/IcResiUserReportDemandRes.java
  89. 1
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/OptionDTO.java
  90. 74
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/ResiClientMyDemandResDTO.java
  91. 15
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/TakeOrderResultDTO.java
  92. 18
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/UserDemandRelResDTO.java
  93. 21
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActDetailResultDTO.java
  94. 5
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActInfoResultDTO.java
  95. 5
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiInProgressActResultDTO.java
  96. 5
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLatestActResultDTO.java
  97. 5
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLookBackActResultDTO.java
  98. 5
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiMyActResultDTO.java
  99. 21
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/ActPreviewResultDTO.java
  100. 21
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/CanceledActDetailResultDTO.java

10
epmet-admin/epmet-admin-server/src/main/resources/db/migration/V0.0.9__add_data_type.sql

@ -0,0 +1,10 @@
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 ('1000000000000000012', 'grid_type', '网格类型', '', 12, 0, 0, '', '2021-12-23 18:23:27', '', '2021-12-23 18:23: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 ('1000000000000000300', 1000000000000000012, '党政机关', '0', '0', '', 0, 0, 0, '', '2021-12-23 18:39:18', '', '2021-12-23 18:39: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 ('1000000000000000301', 1000000000000000012, '企业', '1', '0', '', 0, 0, 0, '', '2021-12-23 18:39:18', '', '2021-12-23 18:39: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 ('1000000000000000302', 1000000000000000012, '园区', '2', '0', '', 4, 0, 0, '', '2021-12-23 18:39:18', '', '2021-12-23 18:39: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 ('1000000000000000303', 1000000000000000012, '商圈', '3', '0', '', 4, 0, 0, '', '2021-12-23 18:39:18', '', '2021-12-23 18:39: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 ('1000000000000000304', 1000000000000000012, '市场', '4', '0', '', 4, 0, 0, '', '2021-12-23 18:39:18', '', '2021-12-23 18:39: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 ('1000000000000000305', 1000000000000000012, '景区', '5', '0', '', 4, 0, 0, '', '2021-12-23 18:39:18', '', '2021-12-23 18:39: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 ('1000000000000000306', 1000000000000000012, '医院', '6', '0', '', 4, 0, 0, '', '2021-12-23 18:39:18', '', '2021-12-23 18:39: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 ('1000000000000000307', 1000000000000000012, '学校', '7', '0', '', 4, 0, 0, '', '2021-12-23 18:39:18', '', '2021-12-23 18:39:18');

12
epmet-commons/epmet-commons-mybatis/src/main/java/com/epmet/commons/mybatis/handler/FieldMetaObjectHandler.java

@ -147,10 +147,12 @@ public class FieldMetaObjectHandler implements MetaObjectHandler {
updatedTime = metaObject.getValue(FieldConstant.UPDATED_TIME_HUMP);
}
if (updatedTime == null) {
if(metaObject.hasGetter(FieldConstant.CREATED_TIME_HUMP))
if(metaObject.hasGetter(FieldConstant.CREATED_TIME_HUMP)) {
updatedTime = metaObject.getValue(FieldConstant.CREATED_TIME_HUMP);
if(updatedTime == null)
}
if(updatedTime == null) {
updatedTime = new Date();
}
}
return updatedTime;
}
@ -163,11 +165,13 @@ public class FieldMetaObjectHandler implements MetaObjectHandler {
}
if (value == null) {
if(metaObject.hasGetter(FieldConstant.CREATED_BY_HUMP))
if(metaObject.hasGetter(FieldConstant.CREATED_BY_HUMP)) {
value = metaObject.getValue(FieldConstant.CREATED_BY_HUMP);
}
if(null == value)
if(null == value) {
value = Optional.ofNullable(loginUserUtil.getLoginUserId()).orElse(Constant.APP_USER_FLAG);
}
}
return value;

18
epmet-commons/epmet-commons-rocketmq/src/main/java/com/epmet/commons/rocketmq/constants/ConsomerGroupConstants.java

@ -41,10 +41,24 @@ public interface ConsomerGroupConstants {
*/
String PROJECT_OPERATION_LOG_GROUP = "project_operation_log_group";
/**
* 积分操作消费组
* 积分操作日志消费组
*/
String POINT_OPERATION_LOG_GROUP = "point_operation_log_group";
/**
* 爱心互助积分操作消费组
*/
String EPMET_HEART_POINT_OPERATION_GROUP = "epmet_heart_point_operation_group";
/**
* 楼院小组积分操作消费组
*/
String RESI_GROUP_POINT_OPERATION_GROUP = "resi_group_point_operation_group";
/**
* 社区服务(原居民需求)积分操作消费组
*/
String COMMUNITY_SERVICE_POINT_OPERATION_GROUP = "community_service_point_operation_group";
/**
* 开放的对接数据(中间库) 组织变更事件监听器分组
*/
@ -73,5 +87,5 @@ public interface ConsomerGroupConstants {
/**
* 需求完成如果服务方是区域化党建单位重新计算这个单位的满意度
*/
String CAL_PARTY_UNIT_SATISFACTION = "cal_party_unit_satisfaction";
String USER_DEMAND_FINISH_GROUP = "user_demand_finish_group";
}

20
epmet-commons/epmet-commons-rocketmq/src/main/java/com/epmet/commons/rocketmq/constants/TopicConstants.java

@ -55,7 +55,23 @@ public interface TopicConstants {
String IC_RESI_USER = "ic_resi_user";
/**
* 需求完成如果服务方是区域化党建单位重新计算这个单位的满意度
* 需求完成
* 1如果服务方是区域化党建单位重新计算这个单位的满意度
*/
String CAL_PARTY_UNIT_SATISFACTION = "cal_party_unit_satisfaction";
String USER_DEMAND = "user_demand";
/**
* 爱心互助
*/
String EPMET_HEART = "epmet_heart";
/**
* 楼院小组
*/
String RESI_GROUP = "resi_group";
/**
* 社区服务原居民需求
*/
String COMMUNITY_SERVICE="community_service";
}

19
epmet-commons/epmet-commons-rocketmq/src/main/java/com/epmet/commons/rocketmq/messages/CalPartyUnitSatisfactionFormDTO.java

@ -1,19 +0,0 @@
package com.epmet.commons.rocketmq.messages;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* 需求完成如果服务方是区域化党建单位重新计算这个单位的满意度,或者直接计算整个客户
*/
@Data
public class CalPartyUnitSatisfactionFormDTO implements Serializable {
public interface AddUserInternalGroup {
}
@NotBlank(message = "客户id不能为空",groups = AddUserInternalGroup.class)
private String customerId;
private String partyUnitId;
}

28
epmet-commons/epmet-commons-rocketmq/src/main/java/com/epmet/commons/rocketmq/messages/ServerSatisfactionCalFormDTO.java

@ -0,0 +1,28 @@
package com.epmet.commons.rocketmq.messages;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* 需求完成如果服务方是区域化党建单位重新计算这个单位的满意度,或者直接计算整个客户
*/
@Data
public class ServerSatisfactionCalFormDTO implements Serializable {
public interface AddUserInternalGroup {
}
@NotBlank(message = "客户id不能为空",groups = AddUserInternalGroup.class)
private String customerId;
/**
* 服务方id可以值区域化党建单位id
* 后面也可以是社会组织社区自组织id...
*/
private String serverId;
/**
* 服务方类型志愿者volunteer社会组织social_org社区自组织community_org区域党建单位party_unit
*/
@NotBlank(message = "serviceType不能为空",groups = AddUserInternalGroup.class)
private String serviceType;
}

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

@ -17,4 +17,6 @@ public interface MqConstant {
* 减分标识 minus
*/
String MINUS="minus";
String SOURCE_TYPE_DEMAND="demand";
}

2
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/mq/eventmsg/BasePointEventMsg.java

@ -92,4 +92,6 @@ public class BasePointEventMsg implements Serializable {
private String eventTag;
private String eventClass;
private String objectId;
private String eventName;
}

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

@ -21,6 +21,7 @@ public enum DictTypeEnum {
USER_DEMAND_SERVICE_TYPE("user_demand_service_type","居民需求服务方类型",10),
AGE_GROUP("age_group", "年龄范围", 11),
PATROL_WORK_TYPE("patrol_work_type", "例行工作分类", 13),
GRID_TYPE("grid_type", "网格类型", 12),
;
private final String code;

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

@ -18,6 +18,7 @@ public enum EventEnum {
SHIFT_TOPIC_TO_ISSUE("shift_topic_to_issue","resi_group","转话题为议题(将自建小组中话题转为议题)"),
TOPIC_SHIFTED_TO_PROJECT("topic_to_project","resi_group","话题被转为项目"),
LEADER_RESOLVE_TOPIC("leader_resolve_topic","resi_group","组长解决组内话题"),
FINISH_USER_DEMAND("finish_user_demand","community_service","服务完成"),
;
private String eventClass;

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

@ -85,14 +85,6 @@ public enum EpmetErrorCode {
BUILDING_NAME_EXITED(8215,"楼栋名称已存在"),
DOOR_NAME_EXITED(8216,"门牌号已存在"),
NEIGHBOOR_NAME_EXITED(8217,"小区名称已存在"),
DEMAND_NAME_EXITED(8218, "分类名称已存在"),
DEMAND_CAN_NOT_CANCEL(8219, "需求已完成,不可取消"),
DEMAND_CAN_NOT_ASSIGN(8220, "当前状态,不可指派"),
DEMAND_CAN_NOT_FINISH(8221, "当前状态,不能评价"),
DEMAND_FINISHED(8222,"需求已完成"),
DEMAND_CAN_NOT_UPDATE(8223,"当前状态,不可更新需求"),
DEMAND_NOT_EXITS(8224,"需求不存在"),
DEMAND_SERVICE_NOT_EXITS(8225,"服务记录不存在"),
REQUIRE_PERMISSION(8301, "您没有足够的操作权限"),
THIRD_PLAT_REQUEST_ERROR(8302, "请求第三方平台错误"),
@ -121,6 +113,7 @@ public enum EpmetErrorCode {
CAN_NOT_REPLY_RESI_EVENT_SELF(8606,"当前事件待处理,不可回复"),
RESI_EVENT_CAN_NOT_CLOSE_CASE(8607,"事件尚未处理,请处理完成后进行办结"),
RESI_EVENT_SHIFT_PROJECT(8608,"事件已立项,请勿重复操作"),
RESI_EVENT_SUBMIT(8616,"事件内容和语音不能同时为空"),
PLEASE_CHOOSE_RECEIVER(8609,"请选择接收人"),
REPLY_INFO_CONTENT_NOT_NULL(8610,"回复内容不能为空"),

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

@ -193,7 +193,9 @@ public class RedisUtils {
public <T> List<T> lrange(String key,long start,long end,Class<T> clazz){
List<Object> content = redisTemplate.opsForList().range(key,start,end);
if(CollectionUtils.isEmpty(content)) return null;
if(CollectionUtils.isEmpty(content)) {
return null;
}
return content.stream().map( o -> {
try {
T target = clazz.newInstance();
@ -314,7 +316,9 @@ public class RedisUtils {
**/
public Map<String, Object> hincrby(String key,String field,Long delta){
Map<String,Object> existed = hGetAll(key);
if(null == existed || existed.size() < NumConstant.ONE) return null;
if(null == existed || existed.size() < NumConstant.ONE) {
return null;
}
//hincrby
redisTemplate.opsForHash().increment(key,field,delta);
@ -367,7 +371,9 @@ public class RedisUtils {
public <T> Set<T> zReverseRange(String key, long start, long end, Class<T> clazz) {
Set<Object> objects = redisTemplate.opsForZSet().reverseRange(key, start, end);
if(CollectionUtils.isEmpty(objects)) return null;
if(CollectionUtils.isEmpty(objects)) {
return null;
}
return objects.stream().map(o->{
try {
T target = clazz.newInstance();

3
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpClientManager.java

@ -200,8 +200,9 @@ public class HttpClientManager {
httppost.addHeader(HEADER_CONTENT_TYPE, HEADER_APPLICATION_JSON);
if (null != headerMap) {
headerMap.forEach((k, v) -> {
if (v != null)
if (v != null) {
httppost.addHeader(k, v.toString());
}
});
}
if (StringUtils.isNotEmpty(jsonStrParam)) {

5
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/IpUtils.java

@ -141,8 +141,9 @@ public class IpUtils {
}
private static boolean isValidAddress(InetAddress address) {
if (address == null || address.isLoopbackAddress())
return false;
if (address == null || address.isLoopbackAddress()) {
return false;
}
String name = address.getHostAddress();
return (name != null
&& !ANYHOST.equals(name)

23
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/Md5Util.java

@ -55,16 +55,18 @@ public class Md5Util {
private static String byteArrayToHexString(byte[] b) {
StringBuffer resultSb = new StringBuffer();
for (int i = 0; i < b.length; i++)
resultSb.append(byteToHexString(b[i]));
for (int i = 0; i < b.length; i++) {
resultSb.append(byteToHexString(b[i]));
}
return resultSb.toString();
}
private static String byteToHexString(byte b) {
int n = b;
if (n < 0)
n += 256;
if (n < 0) {
n += 256;
}
int d1 = n / 16;
int d2 = n % 16;
return hexDigits[d1] + "" + hexDigits[d2];
@ -75,12 +77,13 @@ public class Md5Util {
try {
resultString = origin;
MessageDigest md = MessageDigest.getInstance("MD5");
if (charsetname == null || "".equals(charsetname))
resultString = byteArrayToHexString(md.digest(resultString
.getBytes()));
else
resultString = byteArrayToHexString(md.digest(resultString
.getBytes(charsetname)));
if (charsetname == null || "".equals(charsetname)) {
resultString = byteArrayToHexString(md.digest(resultString
.getBytes()));
} else {
resultString = byteArrayToHexString(md.digest(resultString
.getBytes(charsetname)));
}
} catch (Exception e) {
log.error("MD5Encode is error,msg={0}", e);
}

15
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerAgencyDTO.java

@ -157,4 +157,19 @@ public class CustomerAgencyDTO implements Serializable {
* 中心位置纬度
*/
private String latitude;
/**
* 组织编码
*/
private String code;
/**
* 负责人姓名
*/
private String contacts;
/**
* 联系电话
*/
private String mobile;
}

15
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerDepartmentDTO.java

@ -94,4 +94,19 @@ public class CustomerDepartmentDTO implements Serializable {
*/
private Date updatedTime;
/**
* 组织编码
*/
private String code;
/**
* 负责人姓名
*/
private String contacts;
/**
* 联系电话
*/
private String mobile;
}

20
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerGridDTO.java

@ -133,4 +133,24 @@ public class CustomerGridDTO implements Serializable {
* 组织-网格
*/
private String gridNamePath;
/**
* 网格编码
*/
private String code;
/**
* 组织编码
*/
private String gridType;
/**
* 负责人姓名
*/
private String contacts;
/**
* 联系电话
*/
private String mobile;
}

15
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerAgencyEntity.java

@ -108,4 +108,19 @@ public class CustomerAgencyEntity extends BaseEpmetEntity {
* 社区
*/
private String community;
/**
* 组织编码
*/
private String code;
/**
* 负责人姓名
*/
private String contacts;
/**
* 联系电话
*/
private String mobile;
}

15
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerDepartmentEntity.java

@ -64,4 +64,19 @@ public class CustomerDepartmentEntity extends BaseEpmetEntity {
* 部门所属的行政地区编码:实际就是所属组织的地区编码
*/
private String areaCode;
/**
* 组织编码
*/
private String code;
/**
* 负责人姓名
*/
private String contacts;
/**
* 联系电话
*/
private String mobile;
}

20
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerGridEntity.java

@ -79,4 +79,24 @@ public class CustomerGridEntity extends BaseEpmetEntity {
* 所有上级组织ID
*/
private String pids;
/**
* 网格编码
*/
private String code;
/**
* 组织编码
*/
private String gridType;
/**
* 负责人姓名
*/
private String contacts;
/**
* 联系电话
*/
private String mobile;
}

19
epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml

@ -27,25 +27,12 @@
ca.level,
ca.area_code,
ca.parent_area_code,
( CASE WHEN ca.longitude is null THEN
( SELECT longitude FROM customer_agency
WHERE del_flag = '0' AND customer_id = (SELECT customer_id FROM customer_agency WHERE id = ca.id)
ORDER BY pid ASC LIMIT 1
)
ELSE ca.longitude
END
) longitude,
( CASE WHEN ca.latitude is null THEN
( SELECT latitude FROM customer_agency
WHERE del_flag = '0' AND customer_id = (SELECT customer_id FROM customer_agency WHERE id = ca.id)
ORDER BY pid ASC LIMIT 1
)
ELSE ca.latitude
END
) latitude
IFNULL(ca.longitude, cc.longitude) longitude,
IFNULL(ca.latitude, cc.latitude) latitude
FROM
customer_staff_agency csa
INNER JOIN customer_agency ca ON csa.agency_id = ca.id
INNER JOIN customer_agency cc ON cc.pid = '0' AND ca.customer_id = cc.customer_id
WHERE
csa.del_flag = '0'
AND ca.del_flag = '0'

19
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/form/heart/VolunteerDemandServiceFormDTO.java

@ -0,0 +1,19 @@
package com.epmet.dto.form.heart;
import lombok.Data;
/**
* @Description
* @Author wangxianzhang
* @Date 2021/12/22 3:12 下午
* @Version 1.0
*/
@Data
public class VolunteerDemandServiceFormDTO {
/**
* 组织ID
*/
private String agencyId;
}

12
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/heart/DataReportHeartDemandController.java

@ -3,10 +3,13 @@ package com.epmet.datareport.controller.heart;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.datareport.service.heart.DemandService;
import com.epmet.dto.form.heart.VolunteerDemandServiceFormDTO;
import com.epmet.dto.result.heart.VolunteerDemandServiceStatsResultDTO;
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;
@ -29,9 +32,14 @@ public class DataReportHeartDemandController {
* @return
*/
@PostMapping("volunteer/service")
public Result<VolunteerDemandServiceStatsResultDTO> getVolunteerServiceStats(@LoginUser TokenDto loginUser) {
public Result<VolunteerDemandServiceStatsResultDTO> getVolunteerServiceStats(@LoginUser TokenDto loginUser, @RequestBody VolunteerDemandServiceFormDTO input) {
ValidatorUtils.validateEntity(input);
String agencyId = input.getAgencyId();
String customerId = loginUser.getCustomerId();
VolunteerDemandServiceStatsResultDTO r = demandService.getVolunteerServiceStats(customerId);
VolunteerDemandServiceStatsResultDTO r = demandService.getVolunteerServiceStats(customerId, agencyId);
return new Result<VolunteerDemandServiceStatsResultDTO>().ok(r);
}

5
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/fact/FactVolunteerServiceDailyDao.java

@ -36,8 +36,9 @@ public interface FactVolunteerServiceDailyDao extends BaseDao<FactVolunteerServi
/**
* 查询最新一条"志愿者需求服务统计信息"
* @param customerId
* @param customerId 客户ID
* @param agencyPids 查询条件的组织的PIDS
* @return
*/
VolunteerDemandServiceStatsResultDTO getLatestVolunteerDemandServiceStats(@Param("customerId") String customerId);
VolunteerDemandServiceStatsResultDTO getLatestVolunteerDemandServiceStats(@Param("customerId") String customerId, @Param("agencyPids") String agencyPids);
}

12
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/GrassRootsGovernServiceImpl.java

@ -121,7 +121,9 @@ public class GrassRootsGovernServiceImpl implements GrassRootsGovernService {
resultDTO.setImgUrl(StrConstant.EPMETY_STR);
}
}
if(null == result) return new ArrayList<>();
if(null == result) {
return new ArrayList<>();
}
return result;
}
@ -404,7 +406,9 @@ public class GrassRootsGovernServiceImpl implements GrassRootsGovernService {
private String convertPercentStr(BigDecimal percent,Integer digits){
if(null == percent) percent = BigDecimal.ZERO;
if(null == percent) {
percent = BigDecimal.ZERO;
}
String percentStr = percent.setScale(digits, BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString();
return percentStr.concat(ModuleConstant.SYMBOL_PERCENT);
}
@ -418,7 +422,9 @@ public class GrassRootsGovernServiceImpl implements GrassRootsGovernService {
*/
private ScreenCustomerAgencyDTO agencyInfo(String agencyId){
ScreenCustomerAgencyDTO agencyInfo = agencyDao.selectByAgencyId(agencyId);
if(null == agencyInfo) throw new RenException("获取Agency信息失败");
if(null == agencyInfo) {
throw new RenException("获取Agency信息失败");
}
return agencyInfo;
}

8
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/GrassrootsPartyDevServiceImpl.java

@ -249,7 +249,9 @@ public class GrassrootsPartyDevServiceImpl implements GrassrootsPartyDevService
if(StringUtils.isBlank(param.getMonthId())){
param.setMonthId(dateUtils.getCurrentMonthId());
}
if(NumConstant.ZERO == param.getTopNum()) param.setTopNum(NumConstant.MAX);
if(NumConstant.ZERO == param.getTopNum()) {
param.setTopNum(NumConstant.MAX);
}
PageHelper.startPage(NumConstant.ONE,param.getTopNum());
List<BranchBuildOrderByCountResultDTO> orderList =
screenPartyBranchDataDao.selectBranchDataByTypeOrder(param.getAgencyId(),param.getCategory(),param.getMonthId(),param.getBottomMonthId());
@ -278,7 +280,9 @@ public class GrassrootsPartyDevServiceImpl implements GrassrootsPartyDevService
private String convertPercentStr(BigDecimal percent){
if (null == percent || BigDecimal.ZERO.equals(percent)) return "0.00%";
if (null == percent || BigDecimal.ZERO.equals(percent)) {
return "0.00%";
}
String percentStr = percent.setScale(NumConstant.TWO, BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString();
return percentStr.concat(ModuleConstant.SYMBOL_PERCENT);
}

4
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/IndexServiceImpl.java

@ -171,7 +171,9 @@ public class IndexServiceImpl implements IndexService {
//针对X轴,数据集合不全则进行数据填充
a:for(int i = NumConstant.ZERO; i < _ymList.size(); i++){
//这里的collect必须是有序且升序的
if(cursor >= collect.size()) break a;
if(cursor >= collect.size()) {
break a;
}
//如果存在过期数据,即从数据库中查询出超出横坐标左边界的月份值
if(Integer.parseInt(collect.get(cursor).getMonthId()) < Integer.parseInt(_ymList.get(NumConstant.ZERO))) {
//控制当前循环重复进行

20
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/PartyMemberLeadServiceImpl.java

@ -276,7 +276,9 @@ public class PartyMemberLeadServiceImpl implements PartyMemberLeadService {
PageHelper.startPage(NumConstant.ONE,param.getTopNum());
gridData = screenOrgRankDataDao.selectGridDataMonthlyAreaCode(monthId,param.getAreaCode());
}
if(null == gridData || gridData.isEmpty()) return result;
if(null == gridData || gridData.isEmpty()) {
return result;
}
int num=1;
for(OrgRankDataResultDTO data:gridData){
AdvanceBranchRankResultDTO o = ConvertUtils.sourceToTarget(data,AdvanceBranchRankResultDTO.class);
@ -297,7 +299,9 @@ public class PartyMemberLeadServiceImpl implements PartyMemberLeadService {
PageHelper.startPage(NumConstant.ONE,param.getTopNum());
gridData = screenOrgRankDataDao.selectGridDataMonthly(param.getAgencyId(),monthId);
}
if(null == gridData || gridData.isEmpty()) return result;
if(null == gridData || gridData.isEmpty()) {
return result;
}
int num=1;
for(OrgRankDataResultDTO data:gridData){
AdvanceBranchRankResultDTO o = ConvertUtils.sourceToTarget(data,AdvanceBranchRankResultDTO.class);
@ -323,7 +327,9 @@ public class PartyMemberLeadServiceImpl implements PartyMemberLeadService {
@DataSource(value = DataSourceConstant.EVALUATION_INDEX,datasourceNameFromArg = true)
@Override
public List<PartyUserPointResultDTO> advancedPartymemberRank(AgencyAndNumFormDTO param) {
if(null == param.getTopNum()) param.setTopNum(NumConstant.TEN);
if(null == param.getTopNum()) {
param.setTopNum(NumConstant.TEN);
}
PageHelper.startPage(NumConstant.ONE,param.getTopNum());
List<PartyUserPointResultDTO> result=new ArrayList<>();
if(StringUtils.isNotBlank(param.getAreaCode())){
@ -332,13 +338,17 @@ public class PartyMemberLeadServiceImpl implements PartyMemberLeadService {
}else{
result=screenPartyUserRankDataDao.selectPartymemberPointOrder(param.getAgencyId());
}
if(null == result) return new ArrayList<>();
if(null == result) {
return new ArrayList<>();
}
return result;
}
private String convertPercentStr(BigDecimal percent){
if (null == percent || BigDecimal.ZERO.equals(percent)) return "0.0%";
if (null == percent || BigDecimal.ZERO.equals(percent)) {
return "0.0%";
}
String percentStr = percent.setScale(NumConstant.ONE, BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString();
return percentStr.concat(ModuleConstant.SYMBOL_PERCENT);
}

2
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/heart/DemandService.java

@ -9,5 +9,5 @@ import com.epmet.dto.result.heart.VolunteerDemandServiceStatsResultDTO;
* @Version 1.0
*/
public interface DemandService {
VolunteerDemandServiceStatsResultDTO getVolunteerServiceStats(String customerId);
VolunteerDemandServiceStatsResultDTO getVolunteerServiceStats(String customerId, String agencyId);
}

44
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/heart/impl/DemandServiceImpl.java

@ -1,12 +1,14 @@
package com.epmet.datareport.service.heart.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.constant.DataSourceConstant;
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.datareport.dao.fact.FactVolunteerServiceDailyDao;
import com.epmet.datareport.entity.heart.FactVolunteerServiceDailyEntity;
import com.epmet.datareport.service.heart.DemandService;
import com.epmet.dto.CustomerAgencyDTO;
import com.epmet.dto.result.heart.VolunteerDemandServiceStatsResultDTO;
import com.epmet.feign.GovOrgOpenFeignClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -17,13 +19,41 @@ import org.springframework.stereotype.Service;
* @Version 1.0
*/
@Service
public class DemandServiceImpl implements DemandService {
public class DemandServiceImpl implements DemandService, ResultDataResolver {
@Autowired
private FactVolunteerServiceDailyDao factVolunteerServiceDailyDao;
@Autowired
private GovOrgOpenFeignClient govOrgOpenFeignClient;
@Override
public VolunteerDemandServiceStatsResultDTO getVolunteerServiceStats(String customerId) {
return factVolunteerServiceDailyDao.getLatestVolunteerDemandServiceStats(customerId);
public VolunteerDemandServiceStatsResultDTO getVolunteerServiceStats(String customerId, String agencyId) {
String errorMsg = "【查询志愿者需求服务信息】查询选中组织信息失败";
CustomerAgencyDTO agencyInfo = getResultDataOrThrowsException(govOrgOpenFeignClient.getAgencyById(agencyId),
ServiceConstant.GOV_ORG_SERVER,
EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),
errorMsg, errorMsg);
if (agencyInfo == null) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), errorMsg, errorMsg);
}
String agencyIdPath = agencyInfo.getPids().concat(":").concat(agencyId);
agencyIdPath = agencyIdPath.startsWith(":") ? agencyIdPath.replaceFirst(":", "") : agencyIdPath;
VolunteerDemandServiceStatsResultDTO r = factVolunteerServiceDailyDao.getLatestVolunteerDemandServiceStats(customerId, agencyIdPath);
if (r == null) {
r = new VolunteerDemandServiceStatsResultDTO();
r.setCustomerId(customerId);
r.setDateId(null);
r.setPartyServiceTotal(0);
r.setServiceTotal(0);
r.setResiServiceTotal(0);
r.setVolunteerTotal(0);
r.setPartyTotal(0);
r.setResiTotal(0);
}
return r;
}
}

8
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java

@ -337,7 +337,9 @@ public class ProjectServiceImpl implements ProjectService {
}
}
if (null == resultList) return new ArrayList<>();
if (null == resultList) {
return new ArrayList<>();
}
return resultList;
}
@ -360,7 +362,9 @@ public class ProjectServiceImpl implements ProjectService {
result.get(i).setImgUrlList(imgUrlList);
}
if (null == result) return new ArrayList<>();
if (null == result) {
return new ArrayList<>();
}
return result;
}

13
epmet-module/data-report/data-report-server/src/main/resources/mapper/fact/FactVolunteerServiceDailyDao.xml

@ -24,12 +24,21 @@
<select id="getLatestVolunteerDemandServiceStats"
resultType="com.epmet.dto.result.heart.VolunteerDemandServiceStatsResultDTO">
select *
select CUSTOMER_ID CUSTOMER_ID,
DATE_ID DATE_ID,
sum(VOLUNTEER_TOTAL) VOLUNTEER_TOTAL,
sum(PARTY_TOTAL) PARTY_TOTAL,
sum(RESI_TOTAL) RESI_TOTAL,
sum(SERVICE_TOTAL) SERVICE_TOTAL,
sum(PARTY_SERVICE_TOTAL) PARTY_SERVICE_TOTAL,
sum(RESI_SERVICE_TOTAL) RESI_SERVICE_TOTAL
from fact_volunteer_service_daily
where DEL_FLAG = 0
and CUSTOMER_ID = #{customerId}
and PIDS like CONCAT(#{agencyPids}, "%")
group by CUSTOMER_ID, DATE_ID
order by DATE_ID desc
limit 1
limit 1
</select>

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/heart/IcUserDemandServiceDao.java

@ -40,5 +40,5 @@ public interface IcUserDemandServiceDao extends BaseDao<IcUserDemandServiceEntit
* @param customerId 客户id
* @param serviceType 服务者类型
*/
List<DemandServiceCountResultDTO> listDemandServeTimes(@Param("customerId") String customerId, @Param("endTime") Date endTime, @Param("serviceType") String serviceType);
List<DemandServiceCountResultDTO> listDemandServeTimes(@Param("customerId") String customerId, @Param("gridId") String gridId, @Param("endTime") Date endTime, @Param("serviceType") String serviceType);
}

9
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/stats/FactVolunteerServiceDailyEntity.java

@ -43,6 +43,11 @@ public class FactVolunteerServiceDailyEntity extends BaseEpmetEntity {
*/
private String customerId;
/**
* 网格ID
*/
private String gridId;
/**
* yyyyMMdd
*/
@ -82,5 +87,9 @@ public class FactVolunteerServiceDailyEntity extends BaseEpmetEntity {
* 居民服务总次数
*/
private Integer resiServiceTotal;
private String pid;
private String pids;
}

8
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/model/ParseIndexExcelResult.java

@ -39,8 +39,12 @@ public class ParseIndexExcelResult implements Serializable {
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
ParseIndexExcelResult that = (ParseIndexExcelResult) o;
return indexCode.equals(that.indexCode) &&
indexName.equals(that.indexName) &&

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/GroupExtractServiceImpl.java

@ -98,7 +98,9 @@ public class GroupExtractServiceImpl implements GroupExtractService {
for(Iterator<FactOriginGroupMainDailyDTO> iter = originGroupData.iterator();
iter.hasNext();){
FactOriginGroupMainDailyDTO pointer = iter.next();
if(null == gridMap.get(pointer.getGridId()))iter.remove();
if(null == gridMap.get(pointer.getGridId())) {
iter.remove();
}
}
//记录全量中的垃圾数

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/ProjectExtractServiceImpl.java

@ -513,7 +513,9 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
public void projectProcessCostTimeDataCompensation() {
List<String> customers = dimCustomerService.getAllCustomerId();
if(CollectionUtils.isEmpty(customers)) return ;
if(CollectionUtils.isEmpty(customers)) {
return ;
}
customers.forEach(local -> {
// projectProcessService.getProjectPeriod(true, local,null);
});

8
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateServiceImpl.java

@ -218,7 +218,9 @@ public class IndexCalculateServiceImpl implements IndexCalculateService {
return false;
}
customerIds = externalCustomerIds.getData();
}else customerIds.add(formDTO.getCustomerId());
}else {
customerIds.add(formDTO.getCustomerId());
}
List<String> monthIds = new ArrayList<>();
if (StringUtils.isNotEmpty(formDTO.getStartMonth()) && StringUtils.isNotEmpty(formDTO.getEndMonth())){
monthIds = DateUtils.getMonthBetween(formDTO.getStartMonth(),formDTO.getEndMonth());
@ -227,7 +229,9 @@ public class IndexCalculateServiceImpl implements IndexCalculateService {
if (StringUtils.isEmpty(formDTO.getMonthId())){
// 默认上月
monthIds.add(DimIdGenerator.getMonthDimId(DateUtils.addDateMonths(new Date(), -1)));
}else monthIds.add(formDTO.getMonthId());
}else {
monthIds.add(formDTO.getMonthId());
}
}
List<String> finalMonthIds = monthIds;
customerIds.forEach(customerId -> {

6
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenDifficultyDataServiceImpl.java

@ -47,7 +47,9 @@ public class ScreenDifficultyDataServiceImpl extends BaseServiceImpl<ScreenDiffi
@Override
public List<String> selectExistedInfo(String customerId) {
if (baseDao.selectCountByCustomerId(customerId) > NumConstant.ZERO) return baseDao.selectClosedProjectId(customerId);
if (baseDao.selectCountByCustomerId(customerId) > NumConstant.ZERO) {
return baseDao.selectClosedProjectId(customerId);
}
return null;
}
@ -80,4 +82,4 @@ public class ScreenDifficultyDataServiceImpl extends BaseServiceImpl<ScreenDiffi
public List<ScreenDifficultyDataEntity> getAllDifficultyByCustomerId(String customerId) {
return baseDao.selectAllDifficultyByCustomerId(customerId);
}
}
}

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/HeartDemandService.java

@ -11,5 +11,5 @@ import java.util.List;
*@Date 2021/12/8
*/
public interface HeartDemandService {
List<DemandServiceCountResultDTO> listDemandServeTimesPage(String customerId, Date endTime, int serviceCountPageNo, int serviceCountPageSize);
List<DemandServiceCountResultDTO> listDemandServeTimesPage(String customerId, String gridId, Date endTime, int serviceCountPageNo, int serviceCountPageSize);
}

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/impl/HeartDemandServiceImpl.java

@ -29,11 +29,11 @@ public class HeartDemandServiceImpl implements HeartDemandService {
private IcUserDemandServiceDao demandServiceDao;
@Override
public List<DemandServiceCountResultDTO> listDemandServeTimesPage(String customerId, Date endTime, int serviceCountPageNo, int serviceCountPageSize) {
public List<DemandServiceCountResultDTO> listDemandServeTimesPage(String customerId, String gridId, Date endTime, int serviceCountPageNo, int serviceCountPageSize) {
return PageHelper.startPage(serviceCountPageNo, serviceCountPageSize).doSelectPage(new ISelect() {
@Override
public void doSelect() {
demandServiceDao.listDemandServeTimes(customerId, endTime, "volunteer");
demandServiceDao.listDemandServeTimes(customerId, gridId, endTime, "volunteer");
}
});
}

83
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/DemandServiceImpl.java

@ -1,11 +1,16 @@
package com.epmet.service.impl;
import com.epmet.commons.tools.constant.EpmetRoleKeyConstant;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.feign.ResultDataResolver;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.dto.CustomerGridDTO;
import com.epmet.dto.form.CustomerGridFormDTO;
import com.epmet.dto.heart.result.DemandServiceCountResultDTO;
import com.epmet.entity.crm.CustomerEntity;
import com.epmet.entity.heart.VolunteerInfoEntity;
import com.epmet.entity.stats.FactVolunteerServiceDailyEntity;
import com.epmet.feign.GovOrgOpenFeignClient;
import com.epmet.service.DemandService;
import com.epmet.service.crm.CustomerService;
import com.epmet.service.heart.HeartDemandService;
@ -27,7 +32,7 @@ import java.util.stream.Collectors;
* @Version 1.0
*/
@Service
public class DemandServiceImpl implements DemandService {
public class DemandServiceImpl implements DemandService, ResultDataResolver {
@Autowired
private HeartDemandService heartDemandService;
@ -37,12 +42,15 @@ public class DemandServiceImpl implements DemandService {
@Autowired
private UserService userService;
@Autowired
private DemandStatsService demandStatsService;
@Autowired
private CustomerService customerService;
@Autowired
private GovOrgOpenFeignClient govOrgOpenFeignClient;
@Override
public void statsVolunteerDemandServicesDaily(String customerId) {
@ -50,7 +58,7 @@ public class DemandServiceImpl implements DemandService {
Date now = new Date();
Date today = DateUtils.integrate(now, "yyyy-MM-dd");
Date yestoday = DateUtils.addDateDays(today, -1);
if (StringUtils.isNotBlank(customerId)) {
// 只计算单个客户
clearOldDatas(Arrays.asList(customerId), yestoday);
@ -67,7 +75,8 @@ public class DemandServiceImpl implements DemandService {
/**
* 清理旧数据
* @param targetDate 要清理哪天的数据
*
* @param targetDate 要清理哪天的数据
* @param customerIds 要清理哪些客户的
*/
private void clearOldDatas(List<String> customerIds, Date targetDate) {
@ -80,12 +89,44 @@ public class DemandServiceImpl implements DemandService {
/**
* 统计单个客户的志愿者服务情况
*
* @param customerId 客户ID
* @param endTime 统计截止时间(<endTime)
* @param endTime 统计截止时间(<endTime)
*/
private void statsVolunteerDemandServicesDaily4Customer(String customerId, Date endTime, Date belongTime) {
// 一.将客户下所有志愿者,按照网格ID,放到map中去
// 网格ID和志愿者列表。key:网格id;value:志愿者列表
HashMap<String, List<VolunteerInfoEntity>> gridIdAndVolunteers = new HashMap<>();
heartVolunteerService.listVolunteers(customerId, endTime).forEach(v -> {
String volunteerGridId = v.getGridId();
if (StringUtils.isNotBlank(volunteerGridId)) {
if (!gridIdAndVolunteers.containsKey(volunteerGridId)) {
gridIdAndVolunteers.put(volunteerGridId, new ArrayList<>());
}
gridIdAndVolunteers.get(volunteerGridId).add(v);
}
});
// 2.按网格分别统计,且持久化
for (Map.Entry<String, List<VolunteerInfoEntity>> entry : gridIdAndVolunteers.entrySet()) {
statsVolunteerDemandServicesDaily4Grid(customerId, entry.getKey(), endTime, entry.getValue(), belongTime);
}
}
/**
* 按日统计网格需求服务数据
* @param customerId
* @param gridId
* @param endTime 统计截止时间
* @param volunteers 志愿者volunteerInfo列表
* @param belongTime 该次统计要归属到哪一天即createTime
* @return 统计结果entity以备他用
*/
private FactVolunteerServiceDailyEntity statsVolunteerDemandServicesDaily4Grid(String customerId, String gridId, Date endTime, List<VolunteerInfoEntity> volunteers, Date belongTime) {
// 1.志愿者分流为党员志愿者&普通居民志愿者
Integer volunteerTotalCount = 0;
Integer volunteerTotalCount = volunteers.size();
// 党员志愿者数量
Integer partymemberVolunteerCount = 0;
// 居民志愿者数量
@ -94,15 +135,13 @@ public class DemandServiceImpl implements DemandService {
// 党员志愿者用户id列表
List<String> partymemberVolunteerUserIds = new ArrayList<>(16);
List<VolunteerInfoEntity> volunteers = heartVolunteerService.listVolunteers(customerId, endTime);
volunteerTotalCount = volunteers.size();
//--------------------------------【以上是结果数据变量】------------------------------------------
// 分片开始下标
int shardingStartIndex = 0;
// 分片大小(条数)
int shardingSize = 100;
// 分片去确定党员身份,防止in条件过大
while (true) {
int realShardingSize = Math.min(shardingSize, volunteerTotalCount - shardingStartIndex);
@ -141,7 +180,7 @@ public class DemandServiceImpl implements DemandService {
while (true) {
// 取出每一个服务者的服务次数
List<DemandServiceCountResultDTO> damendServeTimes = heartDemandService.listDemandServeTimesPage(customerId, endTime, serviceCountPageNo, serviceCountPageSize);
List<DemandServiceCountResultDTO> damendServeTimes = heartDemandService.listDemandServeTimesPage(customerId, gridId, endTime, serviceCountPageNo, serviceCountPageSize);
for (DemandServiceCountResultDTO damendServiceTimes : damendServeTimes) {
String serverId = damendServiceTimes.getServerId();
@ -158,11 +197,12 @@ public class DemandServiceImpl implements DemandService {
}
totalDemandServeTimes = partymemberDemandServeTimes + resiDemandServeTimes;
// 3.持久化
// 3.组装entity数据返回,待存储
FactVolunteerServiceDailyEntity insert = new FactVolunteerServiceDailyEntity();
insert.setDateId(DimIdGenerator.getDateDimId(belongTime));
insert.setCustomerId(customerId);
insert.setGridId(gridId);
insert.setMonthId(DimIdGenerator.getMonthDimId(belongTime));
insert.setPartyServiceTotal(partymemberDemandServeTimes);
insert.setServiceTotal(totalDemandServeTimes);
@ -171,6 +211,19 @@ public class DemandServiceImpl implements DemandService {
insert.setResiTotal(resiVolunteerCount);
insert.setVolunteerTotal(volunteerTotalCount);
CustomerGridFormDTO gridForm = new CustomerGridFormDTO();
gridForm.setGridId(gridId);
String errorMsg = "【志愿者服务按日统计】查询网格基本信息失败";
CustomerGridDTO gridInfo = getResultDataOrThrowsException(govOrgOpenFeignClient.getGridBaseInfoByGridId(gridForm), ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), errorMsg, errorMsg);
Optional.ofNullable(gridInfo).ifPresent(gi -> {
insert.setPid(gi.getPid());
insert.setPids(gi.getPids());
});
// 持久化
demandStatsService.addVolunteerServiceDaily(insert);
return insert;
}
}

20
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectProcessServiceImpl.java

@ -139,9 +139,13 @@ public class ProjectProcessServiceImpl extends BaseServiceImpl<ProjectProcessDao
*/
@Override
public void updateProjectStatus(List<ScreenProjectDataDTO> list,String dateId,String customerId) {
if(CollectionUtils.isEmpty(list)) return;
if(CollectionUtils.isEmpty(list)) {
return;
}
List<ProjectProcessDTO> closedInfo = baseDao.selectClosedProjectOnAppointedDay(customerId, dateId);
if(CollectionUtils.isEmpty(closedInfo)) return;
if(CollectionUtils.isEmpty(closedInfo)) {
return;
}
list = list.stream().flatMap(target -> closedInfo.stream().filter(closedCase -> StringUtils.equals(closedCase.getProjectId(),target.getProjectId())).map(
merge -> {
@ -161,9 +165,13 @@ public class ProjectProcessServiceImpl extends BaseServiceImpl<ProjectProcessDao
*/
@Override
public void updateProjectCloseTime(List<ScreenProjectDataDTO> list) {
if(CollectionUtils.isEmpty(list)) return;
if(CollectionUtils.isEmpty(list)) {
return;
}
List<ProjectProcessDTO> closedInfo = baseDao.selectClosedProjectByProjectIds(list.stream().map(ScreenProjectDataDTO::getProjectId).distinct().collect(Collectors.toList()));
if(CollectionUtils.isEmpty(closedInfo)) return;
if(CollectionUtils.isEmpty(closedInfo)) {
return;
}
list = list.stream().flatMap(target -> closedInfo.stream().filter(closedCase -> StringUtils.equals(closedCase.getProjectId(),target.getProjectId())).map(
merge -> {
@ -186,7 +194,9 @@ public class ProjectProcessServiceImpl extends BaseServiceImpl<ProjectProcessDao
@Override
public List<ScreenProjectProcessDTO> buildNewScreenProjectProcessData(String customerId, String dateId, boolean ifRanged, String projectId) {
List<ScreenProjectProcessDTO> processes = baseDao.selectProjectProcessAndDirection(customerId, ifRanged ? null : dateId, dateId, projectId);
if(CollectionUtils.isEmpty(processes)) return null;
if(CollectionUtils.isEmpty(processes)) {
return null;
}
return processes.stream().map(target -> {
List<ProjectStaffDTO> points = target.getPoints();
if(!CollectionUtils.isEmpty(points)){

12
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectServiceImpl.java

@ -98,7 +98,9 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
@Override
public Integer getOvertimeProjectByParameter(String customerId) {
String parameter = baseDao.selectParameterValueByKey(customerId);
if(StringUtils.isBlank(parameter)) parameter = baseDao.selectParameterValueByKey("default");
if(StringUtils.isBlank(parameter)) {
parameter = baseDao.selectParameterValueByKey("default");
}
return StringUtils.isBlank(parameter) ? NumConstant.FIVE : Integer.parseInt(parameter);
}
@ -136,9 +138,13 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
*/
@Override
public Map<String, Set<String>> getProjectCategory(List<String> projectIds) {
if(CollectionUtils.isEmpty(projectIds)) return null;
if(CollectionUtils.isEmpty(projectIds)) {
return null;
}
List<ProjectCategoryDTO> categories = baseDao.selectProjectCategory(projectIds);
if(CollectionUtils.isEmpty(categories)) return null;
if(CollectionUtils.isEmpty(categories)) {
return null;
}
Map<String, Set<String>> map = new HashMap<>();
Map<String, List<ProjectCategoryDTO>> projectMap = categories.stream().collect(Collectors.groupingBy(ProjectCategoryDTO::getProjectId));
projectMap.forEach((k,v) -> {

6
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/DimTopicStatusServiceImpl.java

@ -66,7 +66,9 @@ public class DimTopicStatusServiceImpl extends BaseServiceImpl<DimTopicStatusDao
private QueryWrapper<DimTopicStatusEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
String delFlag = (String)params.get(FieldConstant.DEL_FLAG_HUMP);
if(StringUtils.isBlank(delFlag)) delFlag = NumConstant.ZERO_STR;
if(StringUtils.isBlank(delFlag)) {
delFlag = NumConstant.ZERO_STR;
}
QueryWrapper<DimTopicStatusEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
@ -101,4 +103,4 @@ public class DimTopicStatusServiceImpl extends BaseServiceImpl<DimTopicStatusDao
baseDao.deleteBatchIds(Arrays.asList(ids));
}
}
}

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/ScreenCentralZoneDataExtractServiceImpl.java

@ -77,7 +77,9 @@ public class ScreenCentralZoneDataExtractServiceImpl implements ScreenCentralZon
if(DateUtils.getBeforeNDay(NumConstant.ONE).equals(dimId)){
result = factRegUserGridDailyDao.selectUserAndPartymemberByOrgLevel(ORG_LEVEL_AGENCY,customerId,DateUtils.getBeforeNDay(NumConstant.TWO));
}
if(null == result) result = new LinkedList<>();
if(null == result) {
result = new LinkedList<>();
}
}
// 网格级别
List<ScreenUserTotalDataEntity> gridUserResult =

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/topic/impl/TopicStatisticalServiceImpl.java

@ -52,7 +52,9 @@ public class TopicStatisticalServiceImpl implements TopicStatisticalService {
@Override
@Transactional(rollbackFor = Exception.class)
public void insertUniquely(TopicStatisticalData data) {
if(null == data) return;
if(null == data) {
return;
}
if(StringUtils.isBlank(data.getDateId()) || StringUtils.isBlank(data.getMonthId())){
logger.warn("缺失重要参数:dateId或monthId");

20
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java

@ -149,9 +149,13 @@ public class TopicServiceImpl implements TopicService {
*/
@Override
public Map<String,List<ScreenDifficultyImgDataEntity>> getTopicImgs(List<ProjectSourceMapFormDTO> list) {
if(CollectionUtils.isEmpty(list)) return Collections.EMPTY_MAP;
if(CollectionUtils.isEmpty(list)) {
return Collections.EMPTY_MAP;
}
List<ScreenDifficultyImgDataEntity> imgs = topicDao.selectTopicImgs(list);
if(CollectionUtils.isEmpty(imgs)) return Collections.EMPTY_MAP;
if(CollectionUtils.isEmpty(imgs)) {
return Collections.EMPTY_MAP;
}
//key -> topicId | value -> projectId
Map<String,String> projectTopicMap = list.stream().collect(Collectors.toMap(ProjectSourceMapFormDTO :: getSourceId,ProjectSourceMapFormDTO :: getProjectId,(o,n)->n));
//key -> topicId
@ -179,9 +183,13 @@ public class TopicServiceImpl implements TopicService {
*/
@Override
public Map<String, String> getTopicContent(List<ProjectSourceMapFormDTO> list) {
if(CollectionUtils.isEmpty(list)) return Collections.EMPTY_MAP;
if(CollectionUtils.isEmpty(list)) {
return Collections.EMPTY_MAP;
}
List<TopicContentResultDTO> contents = topicDao.selectTopicContent(list);
if(CollectionUtils.isEmpty(contents)) return Collections.EMPTY_MAP;
if(CollectionUtils.isEmpty(contents)) {
return Collections.EMPTY_MAP;
}
Map<String,String> topicContentMap = contents.stream().collect(Collectors.toMap(TopicContentResultDTO :: getTopicId,TopicContentResultDTO::getContent));
//key -> topicId | value -> projectId
Map<String,String> projectTopicMap = list.stream().collect(Collectors.toMap(ProjectSourceMapFormDTO :: getSourceId,ProjectSourceMapFormDTO :: getProjectId,(o,n)->n));
@ -227,7 +235,9 @@ public class TopicServiceImpl implements TopicService {
@Override
public List<ScreenProjectImgDataDTO> buildNewScreenProjectImgData(List<ScreenProjectDataDTO> list) {
List<ScreenProjectImgDataDTO> imgs = topicDao.initNewScreenProjectImgData(list.get(NumConstant.ZERO).getCustomerId(), list);
if(CollectionUtils.isEmpty(imgs)) return null;
if(CollectionUtils.isEmpty(imgs)) {
return null;
}
return imgs.stream().flatMap(img -> list.stream().filter(project -> StringUtils.equals(img.getTopicId(),project.getTopicId())).map(
match -> {
ScreenProjectImgDataDTO matchedImg

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/support/normalizing/ScoreCalculator.java

@ -168,7 +168,9 @@ public abstract class ScoreCalculator<T> {
*/
protected BigDecimal calcuteCoefficient(BigDecimal min, BigDecimal max) {
BigDecimal fenmu = max.subtract(min);
if (fenmu.compareTo(BigDecimal.ZERO)==0)return new BigDecimal(0);
if (fenmu.compareTo(BigDecimal.ZERO)==0) {
return new BigDecimal(0);
}
BigDecimal fenzi = maxScore.subtract(minScore);
BigDecimal divide = fenzi.divide(fenmu, MathContext.DECIMAL32);
return divide;

14
epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/V0.0.27__volunteer_service_daily_add_gridid.sql

@ -0,0 +1,14 @@
-- 发布前执行
alter table fact_volunteer_service_daily add column GRID_ID varchar(64) not null comment '网格ID' after CUSTOMER_ID;
alter table fact_volunteer_service_daily add column PID varchar(64) default '' comment 'pid网格父级ID' after RESI_SERVICE_TOTAL;
alter table fact_volunteer_service_daily add column PIDS varchar(255) default '' comment 'pid网格父级ID路径,包含PID' after PID;
-- 发布后执行
delete from fact_volunteer_service_daily;
alter table fact_volunteer_service_daily drop key uni_vsd;
alter table fact_volunteer_service_daily
add constraint uni_vsd
unique (GRID_ID, DATE_ID, DEL_FLAG);

2
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/heart/IcUserDemandServiceDao.xml

@ -24,11 +24,13 @@
select service.SERVER_ID, SERVICE_TYPE, count(1) as SERVE_TIMES
from ic_user_demand_rec damend
inner join ic_user_demand_service service on (damend.ID = service.DEMAND_REC_ID and service.DEL_FLAG = 0)
inner join volunteer_info v on (service.SERVER_ID = v.USER_ID and v.DEL_FLAG = 0)
where damend.DEL_FLAG = 0
and damend.STATUS = 'finished'
and damend.CUSTOMER_ID = #{customerId}
and service.SERVICE_END_TIME <![CDATA[<]]> #{endTime}
and service.SERVICE_TYPE = #{serviceType}
and v.GRID_ID = #{gridId}
group by service.SERVER_ID, SERVICE_TYPE
</select>
</mapper>

2
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactVolunteerServiceDailyDao.xml

@ -14,6 +14,8 @@
<result property="serviceTotal" column="SERVICE_TOTAL"/>
<result property="partyServiceTotal" column="PARTY_SERVICE_TOTAL"/>
<result property="resiServiceTotal" column="RESI_SERVICE_TOTAL"/>
<result property="pid" column="PID"/>
<result property="pids" column="PIDS"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>

50
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/WorkDayServiceImpl.java

@ -119,7 +119,9 @@ public class WorkDayServiceImpl implements WorkDayService {
@Override
public Map<String,Integer> workMinutes(WorkMinuteFormDTO param) {
List<TimestampIntervalFormDTO> params = param.getTimeList();
if(CollectionUtils.isEmpty(params)) return null;
if(CollectionUtils.isEmpty(params)) {
return null;
}
Map<String,Integer> result = new LinkedHashMap<>();
//默认非精准计算
if(StringUtils.isBlank(param.getIfPrecise()) || !StringUtils.equals(ProjectConstant.PRECISE_CALCULATION,param.getIfPrecise())){
@ -192,7 +194,9 @@ public class WorkDayServiceImpl implements WorkDayService {
private Integer calculateImpreciseDetentionMinutes(Date left, Date right){
if(null == left){ logger.error("计算工作日,传入的开始日期为空!");return null;}
//给右区间赋值,默认当前时间
if(null == right || right.compareTo(left) < NumConstant.ZERO) right = new Date();
if(null == right || right.compareTo(left) < NumConstant.ZERO) {
right = new Date();
}
List<CalenderEntity> list = calenderDao.selectByStartAndEnd(format.format(left),format.format(right));
if(!CollectionUtils.isEmpty(list)){
@ -204,10 +208,14 @@ public class WorkDayServiceImpl implements WorkDayService {
//集合中有两个元素以上,说明两个时间存在跨度
else{
int costMin = NumConstant.ZERO;
if(NumConstant.TWO == list.size()) return costMin;
for(int index = NumConstant.ZERO ; index < list.size() ; index++)
if(StringUtils.equals(ProjectConstant.DAY_TYPE_WORK,list.get(index).getType()))
if(NumConstant.TWO == list.size()) {
return costMin;
}
for(int index = NumConstant.ZERO ; index < list.size() ; index++) {
if(StringUtils.equals(ProjectConstant.DAY_TYPE_WORK,list.get(index).getType())) {
costMin += NumConstant.TWENTY_FOUR * NumConstant.SIXTY;
}
}
return costMin;
}
@ -228,15 +236,17 @@ public class WorkDayServiceImpl implements WorkDayService {
private Integer calculateDetentionMinutes(Date left ,Date right){
if(null == left){ logger.error("计算工作日,传入的开始日期为空!");return null;}
//给右区间赋值,默认当前时间
if(null == right || right.compareTo(left) < NumConstant.ZERO) right = new Date();
if(null == right || right.compareTo(left) < NumConstant.ZERO) {
right = new Date();
}
List<CalenderEntity> list = calenderDao.selectByStartAndEnd(format.format(left),format.format(right));
if(!CollectionUtils.isEmpty(list)){
//集合中只有一个元素,说明两个时间在同一天
if(list.size() == NumConstant.ONE){
if(ProjectConstant.DAY_TYPE_WORK.equals(list.get(NumConstant.ZERO).getType()))
if(ProjectConstant.DAY_TYPE_WORK.equals(list.get(NumConstant.ZERO).getType())) {
return (int)((right.getTime() - left.getTime())/NumConstant.ONE_THOUSAND/NumConstant.SIXTY);
else {
} else {
logger.warn("计算工作日,传入的起始时间都在同一天且是在节假日,开始时间:{},结束时间:{},节日类型:{}(1工作日、2周末、3、节假日)",left,right);
return NumConstant.ZERO;
}
@ -263,10 +273,14 @@ public class WorkDayServiceImpl implements WorkDayService {
//ChronoUnit日期枚举类,between方法计算两个时间对象之间的时间量
costMin += ChronoUnit.SECONDS.between(localDateTime, initialTime)/NumConstant.SIXTY;
}
if(NumConstant.TWO == list.size()) return costMin;
for(int index = NumConstant.ONE ; index < list.size() - NumConstant.ONE ; index++)
if(StringUtils.equals(ProjectConstant.DAY_TYPE_WORK,list.get(index).getType()))
if(NumConstant.TWO == list.size()) {
return costMin;
}
for(int index = NumConstant.ONE ; index < list.size() - NumConstant.ONE ; index++) {
if(StringUtils.equals(ProjectConstant.DAY_TYPE_WORK,list.get(index).getType())) {
costMin += NumConstant.TWENTY_FOUR * NumConstant.SIXTY;
}
}
return costMin;
}
@ -290,7 +304,9 @@ public class WorkDayServiceImpl implements WorkDayService {
if(null == left){ logger.error("计算工作日,传入的开始日期为空!");return null;}
if(null == start || null == end){start = "9:00:00"; end = "17:00:00";}
//给右区间赋值,默认当前时间
if(null == right || right.compareTo(left) < NumConstant.ZERO) right = new Date();
if(null == right || right.compareTo(left) < NumConstant.ZERO) {
right = new Date();
}
//自定义起始时间
String standardStartDateStr = format.format(left).concat(" ").concat(start);
//自定义截至时间
@ -359,10 +375,14 @@ public class WorkDayServiceImpl implements WorkDayService {
costMin += delta_T;
}
}
if(NumConstant.TWO == list.size()) return costMin;
for(int index = NumConstant.ONE ; index < list.size() - NumConstant.ONE ; index++)
if(StringUtils.equals(ProjectConstant.DAY_TYPE_WORK,list.get(index).getType()))
if(NumConstant.TWO == list.size()) {
return costMin;
}
for(int index = NumConstant.ONE ; index < list.size() - NumConstant.ONE ; index++) {
if(StringUtils.equals(ProjectConstant.DAY_TYPE_WORK,list.get(index).getType())) {
costMin += delta_T * NumConstant.SIXTY;
}
}
return costMin;
}

21
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/ActInfoDTO.java

@ -44,6 +44,27 @@ public class ActInfoDTO implements Serializable {
*/
private String customerId;
/**
* 活动类型爱心活动heart 联建活动party
*/
private String actType;
/**
* 联建单位
*/
private String unitId;
private String unitName;
/**
* 活动目标
*/
private String target;
/**
* 服务事项
*/
private String serviceMatter;
private String serviceMatterName;
/**
* 活动标题
*/

5
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPartyActivityDTO.java

@ -58,6 +58,11 @@ public class IcPartyActivityDTO implements Serializable {
*/
private String pids;
/**
* act_info表ID
*/
private String actId;
/**
* 单位ID
*/

7
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcUserDemandRecDTO.java

@ -145,6 +145,11 @@ public class IcUserDemandRecDTO implements Serializable {
*/
private Boolean evaluateFlag;
/**
* 奖励积分
*/
private Integer awardPoint;
/**
* 删除标识0.未删除 1.已删除
*/
@ -175,4 +180,6 @@ public class IcUserDemandRecDTO implements Serializable {
*/
private Date updatedTime;
private String serverId;
private String serviceType;
}

9
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcUserDemandSatisfactionDTO.java

@ -17,11 +17,11 @@
package com.epmet.dto;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 居民需求评价记录表
@ -69,6 +69,11 @@ public class IcUserDemandSatisfactionDTO implements Serializable {
*/
private BigDecimal score;
/**
* 评价时填写的完成情况
*/
private String remark;
/**
* 删除标识0.未删除 1.已删除
*/

5
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcUserDemandServiceDTO.java

@ -17,9 +17,10 @@
package com.epmet.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
@ -69,7 +70,7 @@ public class IcUserDemandServiceDTO implements Serializable {
private Date serviceEndTime;
/**
* 完成情况
* 此列暂时没有用完成情况在ic_user_demand_satisfaction.remark
*/
private String finishDesc;

20
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/LatestActInfoDTO.java

@ -179,6 +179,26 @@ public class LatestActInfoDTO implements Serializable {
*/
private Boolean auditSwitch;
/**
* 活动类型爱心活动heart 联建活动party
*/
private String actType;
/**
* 联建单位
*/
private String unitId;
/**
* 活动目标
*/
private String target;
/**
* 服务事项
*/
private String serviceMatter;
/**
* 乐观锁
*/

11
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/VolunteerInfoDTO.java

@ -17,9 +17,10 @@
package com.epmet.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
@ -97,4 +98,12 @@ public class VolunteerInfoDTO implements Serializable {
* 志愿者注册所在网格名称
*/
private String gridName;
/**
* 网格所属的组织id
*/
private String pid;
/**
* 网格的所有上级
*/
private String pids;
}

20
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/AutoEvaluateDemandFormDTO.java

@ -0,0 +1,20 @@
package com.epmet.dto.form;
import lombok.Data;
import java.io.Serializable;
/**
* 自动评价参数
*/
@Data
public class AutoEvaluateDemandFormDTO implements Serializable {
private String customerId;
private Integer exceedValue;
/**
* day
* minute
*/
private String type;
}

13
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/StaffCancelFormDTO.java → epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/CancelDemandFormDTO.java

@ -4,8 +4,11 @@ import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 取消需求入参dto
*/
@Data
public class StaffCancelFormDTO {
public class CancelDemandFormDTO {
public interface AddUserInternalGroup {}
@NotBlank(message = "需求id不能为空",groups = AddUserInternalGroup.class)
private String demandRecId;
@ -14,4 +17,12 @@ public class StaffCancelFormDTO {
private String userId;
@NotBlank(message = "customerId不能为空", groups = AddUserInternalGroup.class)
private String customerId;
/**
* staff:pc工作人员取消
* resi:居民端用户主动需求
* 代码里写死的UserDemandConstant.RESI/STAFF
*/
private String userType;
}

3
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/DemandAddFromDTO.java

@ -10,6 +10,9 @@ import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
/**
* pc录入需求入参
*/
@Data
public class DemandAddFromDTO implements Serializable {

4
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/DemandDetailFormDTO.java

@ -5,6 +5,10 @@ import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* 需求大厅-需求详情入参
* 我的需求-需求详情入参
*/
@Data
public class DemandDetailFormDTO implements Serializable {
private static final long serialVersionUID = 514538389753713095L;

47
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/EvaluateDemandFormDTO.java

@ -0,0 +1,47 @@
package com.epmet.dto.form.demand;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 居民端-需求-服务评价入参
*/
@Data
public class EvaluateDemandFormDTO implements Serializable {
public interface AddUserInternalGroup {
}
public interface ShowGroup extends CustomerClientShowGroup {
}
@NotBlank(message = "需求id不能为空", groups = AddUserInternalGroup.class)
private String demandRecId;
@NotBlank(message = "服务id不能为空", groups = AddUserInternalGroup.class)
private String serviceId;
@NotBlank(message = "完成结果不能为空", groups = ShowGroup.class)
private String finishResult;
@Length(max = 1000,message = "最多输入1000字",groups = {ShowGroup.class})
private String finishDesc;
@NotNull(message = "得分不能为空", groups = ShowGroup.class)
private BigDecimal score;
@NotBlank(message = "userId不能为空", groups = AddUserInternalGroup.class)
private String userId;
@NotBlank(message = "customerId不能为空", groups = AddUserInternalGroup.class)
private String customerId;
// 政府端:gov、居民端:resi、运营端:oper
@NotBlank(message = "app不能为空", groups = AddUserInternalGroup.class)
private String app;
}

26
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/FinishStaffFromDTO.java

@ -16,27 +16,31 @@ public class FinishStaffFromDTO implements Serializable {
public interface AddUserInternalGroup {
}
public interface AddUserShowGroup extends CustomerClientShowGroup {
public interface IcShowGroup extends CustomerClientShowGroup {
}
public interface ResiShowGroup extends CustomerClientShowGroup {
}
@NotBlank(message = "需求id不能为空", groups = AddUserInternalGroup.class)
private String demandRecId;
@NotBlank(message = "服务id不能为空", groups = AddUserShowGroup.class)
@NotBlank(message = "服务id不能为空", groups = AddUserInternalGroup.class)
private String serviceId;
@NotNull(message = "实际服务开始不能为空", groups = AddUserShowGroup.class)
@NotNull(message = "实际服务开始不能为空", groups = {IcShowGroup.class,ResiShowGroup.class})
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date serviceStartTime;
@NotNull(message = "实际服务结束不能为空", groups = AddUserShowGroup.class)
@NotNull(message = "实际服务结束不能为空", groups = {IcShowGroup.class,ResiShowGroup.class})
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date serviceEndTime;
@NotBlank(message = "完成结果不能为空", groups = AddUserShowGroup.class)
// @NotBlank(message = "完成结果不能为空", groups = IcShowGroup.class)
private String finishResult;
// @Length(max = 1000,message = "最多输入1000字",groups = {IcShowGroup.class})
private String finishDesc;
@NotNull(message = "得分不能为空", groups = AddUserShowGroup.class)
// @NotNull(message = "得分不能为空", groups = IcShowGroup.class)
private BigDecimal score;
@ -45,4 +49,14 @@ public class FinishStaffFromDTO implements Serializable {
private String userId;
@NotBlank(message = "customerId不能为空", groups = AddUserInternalGroup.class)
private String customerId;
/**
* pc完成情况完成+评价 UserDemandConstant.FINISH_AND_EVALUATE
* 居民端完成UserDemandConstant.FINISHED
*/
private String type;
/**
* pc完成情况UserDemandConstant.STAFF
* 居民端完成UserDemandConstant.RESI
*/
private String userType;
}

34
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/ListHallFormDTO.java

@ -0,0 +1,34 @@
package com.epmet.dto.form.demand;
import com.epmet.commons.tools.dto.form.PageFormDTO;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* * 居民端-需求大厅未处理处理中已完成入参
*/
@Data
public class ListHallFormDTO extends PageFormDTO implements Serializable {
public interface AddUserInternalGroup {}
/**
* 当前所在网格id
*/
@NotBlank(message = "gridId不能为空", groups = AddUserInternalGroup.class)
private String gridId;
/**
* 未处理unprocessed处理中processing已完成finished
*/
@NotBlank(message = "type不能为空,未处理:unprocessed;处理中:processing;已完成:finished", groups = AddUserInternalGroup.class)
private String type;
// 以下入参从token中获取
@NotBlank(message = "tokenDto获取userId不能为空", groups = AddUserInternalGroup.class)
private String currentUserId;
@NotBlank(message = "tokenDto获取customerId不能为空", groups = AddUserInternalGroup.class)
private String customerId;
}

4
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/PageListAnalysisFormDTO.java

@ -49,4 +49,8 @@ public class PageListAnalysisFormDTO implements Serializable {
private Boolean pageFlag;
/**
* 数据分析-服务措施分析排除已取消
*/
private String excludeStatus;
}

112
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/ReportDemandFormDTO.java

@ -0,0 +1,112 @@
package com.epmet.dto.form.demand;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
/**
* 居民端-上报需求或者修改需求
*/
@Data
public class ReportDemandFormDTO implements Serializable {
private static final long serialVersionUID = -2931148629441558468L;
public interface Add extends CustomerClientShowGroup {
}
public interface AddInternalGroup {
}
public interface Update extends CustomerClientShowGroup {
}
public interface UpdateInternalGroup {
}
@NotBlank(message = "需求id不能为空",groups = UpdateInternalGroup.class)
private String demandRecId;
@NotBlank(message = "customerId不能为空", groups = {AddInternalGroup.class, UpdateInternalGroup.class})
private String customerId;
/**
* 网格id
*/
@NotBlank(message = "所属网格不能为空",groups = {AddInternalGroup.class})
private String gridId;
/**
* 需求内容1000字
*/
@NotBlank(message = "需求内容不能为空", groups = {Add.class, Update.class})
@Length(max = 1000, message = "需求内容至多输入1000字", groups = {Add.class, Update.class})
private String content;
/**
* 二级需求分类编码
*/
@NotBlank(message = "需求类别不能为空",groups = Add.class)
private String categoryCode;
/**
* 父级需求分类编码
*/
@NotBlank(message = "父级分类不能为空",groups = Add.class)
private String parentCode;
/**
* 希望服务时间
*/
@NotNull(message = "服务时间不能为空",groups = {Add.class, Update.class})
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date wantServiceTime;
/**
* 需求人user.id或者ic_resi_user.id
*/
@NotBlank(message = "需求人不能为空",groups ={AddInternalGroup.class, UpdateInternalGroup.class})
private String demandUserId;
/**
* 需求人联系姓名
*/
@NotBlank(message = "联系人不能为空",groups = {Add.class, Update.class})
private String demandUserName;
/**
* 需求人联系电话
*/
@NotBlank(message = "联系电话不能为空",groups = {Add.class, Update.class})
private String demandUserMobile;
/**
* 服务地点工作端指派默认居民居住房屋地址居民端地图选择
*/
@NotBlank(message = "服务地点不能为空",groups = {Add.class, Update.class})
private String serviceLocation;
/**
* 门牌号详细地址
*/
@Length(max = 200, message = "门牌号至多输入200字", groups = {Add.class, Update.class})
private String locationDetail;
/**
* 经度,需求人是ic的居民时取所住楼栋的中心点位
*/
private String longitude;
/**
* 纬度,需求人是ic的居民时取所住楼栋的中心点位
*/
private String latitude;
}

56
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/ResiClientMyDemandFormDTO.java

@ -0,0 +1,56 @@
package com.epmet.dto.form.demand;
import com.epmet.commons.tools.dto.form.PageFormDTO;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* 居民端-我的需求列表入参
*/
@Data
public class ResiClientMyDemandFormDTO extends PageFormDTO implements Serializable {
/*List<String> userIds=new ArrayList<>();
userIds.add(formDTO.getIcResiUserId());
if(CollectionUtils.isNotEmpty(formDTO.getEpmetUserIdList())){
userIds.addAll(formDTO.getEpmetUserIdList());
}
formDTO.setUserIds(userIds);
//2、小程序内自己上报+赋能平台待录入的
PageInfo<IcResiUserReportDemandRes> pageInfo = PageHelper.startPage(formDTO.getPageNo(),
formDTO.getPageSize()).doSelectPageInfo(() -> baseDao.selectUserDemand(formDTO));
List<IcResiUserReportDemandRes> list = pageInfo.getList();
if (CollectionUtils.isNotEmpty(list)) {
// 1、状态字典
Result<Map<String, String>> statusRes = adminOpenFeignClient.dictMap(DictTypeEnum.USER_DEMAND_STATUS.getCode());
Map<String, String> statusMap = statusRes.success() && MapUtils.isNotEmpty(statusRes.getData()) ? statusRes.getData() : new HashMap<>();
//2、查询分类名称
List<String> categoryCodes = list.stream().map(IcResiUserReportDemandRes::getCategoryCode).collect(Collectors.toList());
List<IcResiDemandDictEntity> dictList = demandDictService.listByCodes(formDTO.getCustomerId(), categoryCodes);
Map<String, String> dictMap = dictList.stream().collect(Collectors.toMap(IcResiDemandDictEntity::getCategoryCode, IcResiDemandDictEntity::getCategoryName));
for (IcResiUserReportDemandRes resDto : list) {
resDto.setStatusName(statusMap.containsKey(resDto.getStatus()) ? statusMap.get(resDto.getStatus()) : StrConstant.EPMETY_STR);
if (null != dictMap && dictMap.containsKey(resDto.getCategoryCode())) {
resDto.setCategoryName(dictMap.get(resDto.getCategoryCode()));
}
resDto.setFirstCategoryName(demandDictService.getCategoryName(formDTO.getCustomerId(),resDto.getFirstCategoryCode()));
}
}*/
public interface AddUserInternalGroup {}
@NotBlank(message = "gridId不能为空",groups = AddUserInternalGroup.class)
private String gridId;
/**
* 待处理unprocessed处理中processing已完成finished已取消canceled
*/
@NotBlank(message = "type不能为空,待处理:unprocessed;处理中:processing;已完成:finished;已取消:canceled",groups = AddUserInternalGroup.class)
private String type;
@NotBlank(message = "userId不能为空",groups = AddUserInternalGroup.class)
private String userId;
@NotBlank(message = "customerId不能为空",groups = AddUserInternalGroup.class)
private String customerId;
}

21
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/TakeOrderFormDTO.java

@ -0,0 +1,21 @@
package com.epmet.dto.form.demand;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* 需求大厅-我要接单
*/
@Data
public class TakeOrderFormDTO implements Serializable {
private static final long serialVersionUID = -2030750128789890382L;
public interface AddUserInternalGroup {
}
@NotBlank(message = "demandRecId不能为空", groups = AddUserInternalGroup.class)
private String demandRecId;
@NotBlank(message = "tokenDto获取userId不能为空", groups = AddUserInternalGroup.class)
private String userId;
}

23
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/UserDemandRelFormDTO.java

@ -0,0 +1,23 @@
package com.epmet.dto.form.demand;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* 当前用户与需求消息的关系
*/
@Data
public class UserDemandRelFormDTO implements Serializable {
private static final long serialVersionUID = 948510931204329428L;
public interface AddInternalGroup {
}
@NotBlank(message = "需求id不能为空",groups = AddInternalGroup.class)
private String demandRecId;
@NotBlank(message = "userId不能为空",groups = AddInternalGroup.class)
private String userId;
}

37
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiVolunteerAuthenticateFormDTO.java

@ -17,80 +17,67 @@ import java.io.Serializable;
public class ResiVolunteerAuthenticateFormDTO implements Serializable {
private static final long serialVersionUID = 1L;
//>>>>>>>>>>>>>>>>>校验分组开始>>>>>>>>>>>>>>>>>>>>>
/**
* 添加用户操作的内部异常分组
* 出现错误会提示给前端7000错误码返回信息为服务器开小差...
*/
public interface AddUserInternalGroup {}
/**
* 添加用户操作的用户可见异常分组
* 该分组用于校验需要返回给前端错误信息提示的列需要继承CustomerClientShowGroup
* 返回错误码为8999提示信息为DTO中具体的列的校验注解message的内容
*/
public interface AddUserShowGroup extends CustomerClientShowGroup {}
// <<<<<<<<<<<<<<<<<<<校验分组结束<<<<<<<<<<<<<<<<<<<<<<<<
/**
* 用户id
*/
@NotBlank(message = "tokenDto中获取userId为空", groups = {AddUserInternalGroup.class })
private String userId;
/**
* 客户id
*/
@NotBlank(message = "客户id不能为空", groups = {AddUserShowGroup.class })
@NotBlank(message = "tokenDto中获取customerId为空", groups = {AddUserInternalGroup.class })
private String customerId;
/**
*
*/
@NotBlank(message = "姓不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class })
@NotBlank(message = "姓不能为空", groups = {AddUserShowGroup.class })
private String surname;
/**
*
*/
@NotBlank(message = "名不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class })
@NotBlank(message = "名不能为空", groups = {AddUserShowGroup.class })
private String name;
/**
* 性别1男2女0未知
*/
@NotBlank(message = "性别不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class })
@NotBlank(message = "性别不能为空", groups = {AddUserShowGroup.class })
private String gender;
/**
* 手机号
*/
@NotBlank(message = "手机号不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class })
@NotBlank(message = "手机号不能为空", groups = {AddUserShowGroup.class })
private String mobile;
/**
* 身份证号码
*/
@NotBlank(message = "身份证号码不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class })
@NotBlank(message = "身份证号码不能为空", groups = {AddUserShowGroup.class })
private String idNum;
/**
* 街道
*/
@NotBlank(message = "街道不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class })
@NotBlank(message = "居住地址:街道不能为空", groups = {AddUserShowGroup.class })
private String street;
/**
* 小区名
*/
@NotBlank(message = "小区名不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class })
@NotBlank(message = "居住地址:小区名不能为空", groups = {AddUserShowGroup.class })
private String district;
/**
* 楼栋单元
*/
@NotBlank(message = "楼栋单元不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class })
@NotBlank(message = "居住地址:楼栋单元不能为空", groups = {AddUserShowGroup.class })
private String buildingAddress;
/**
@ -101,13 +88,13 @@ public class ResiVolunteerAuthenticateFormDTO implements Serializable {
/**
* 昵称
*/
@NotBlank(message = "昵称不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class })
@NotBlank(message = "昵称不能为空", groups = {AddUserInternalGroup.class})
private String nickname;
/**
* 头像
*/
@NotBlank(message = "头像不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class })
@NotBlank(message = "头像不能为空", groups = {AddUserInternalGroup.class})
private String avatarUrl;
/**

12
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/VolunteerCommonFormDTO.java

@ -14,12 +14,16 @@ import javax.validation.constraints.NotNull;
@Data
public class VolunteerCommonFormDTO {
public interface VolunteerPage {
}
@NotBlank(message = "客户ID不能为空", groups = {VolunteerPage.class})
/**
* 客户ID
*/
private String customerId;
/**
* 组织ID
*/
private String agencyId;
private Integer pageNo = 0;
private Integer pageSize = 20;

1
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/ActIdFormDTO.java

@ -21,4 +21,5 @@ public class ActIdFormDTO implements Serializable {
*/
@NotBlank(message = "活动id不能为空", groups = { ActIdFormDTO.AddUserInternalGroup.class })
private String actId;
private String customerId;
}

1
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/ActPreviewFormDTO.java

@ -23,4 +23,5 @@ public class ActPreviewFormDTO implements Serializable {
*/
@NotBlank(message = "活动草稿id不能为空", groups = {UserInternalGroup.class})
private String actDraftId;
private String customerId;
}

20
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/DraftActInfoFormDTO.java

@ -161,4 +161,24 @@ public class DraftActInfoFormDTO implements Serializable {
*/
private String sponsorTel;
/**
* 活动类型爱心活动heart 联建活动party
*/
private String actType = "heart";
/**
* 联建单位
*/
private String unitId;
/**
* 活动目标
*/
private String target;
/**
* 服务事项
*/
private String serviceMatter;
}

25
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/PublishActInfoFormDTO.java

@ -25,6 +25,8 @@ public class PublishActInfoFormDTO implements Serializable {
public interface AddUserInternalGroup {
}
public interface AddPartyActivityGroup {
}
public interface AddUserShowGroup extends CustomerClientShowGroup {
}
@ -189,4 +191,27 @@ public class PublishActInfoFormDTO implements Serializable {
*/
@NotBlank(message = "联系电话不能为空", groups = {AddUserShowGroup.class})
private String sponsorTel;
/**
* 活动类型爱心活动heart 联建活动party
*/
private String actType = "heart";
/**
* 联建单位
*/
@NotBlank(message = "联建单位不能为空", groups = {AddPartyActivityGroup.class})
private String unitId;
/**
* 活动目标
*/
@NotBlank(message = "活动目标不能为空", groups = {AddPartyActivityGroup.class})
private String target;
/**
* 服务事项
*/
@NotBlank(message = "服务事项不能为空", groups = {AddPartyActivityGroup.class})
private String serviceMatter;
}

25
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/work/RePublishFormDTO.java

@ -24,6 +24,8 @@ public class RePublishFormDTO implements Serializable {
private static final long serialVersionUID = -959956652123514886L;
public interface AddUserInternalGroup {
}
public interface AddPartyActivityGroup {
}
public interface AddUserShowGroup extends CustomerClientShowGroup {
}
@ -195,4 +197,27 @@ public class RePublishFormDTO implements Serializable {
*/
@NotBlank(message = "联系电话不能为空", groups = {AddUserShowGroup.class})
private String sponsorTel;
/**
* 活动类型爱心活动heart 联建活动party
*/
private String actType = "heart";
/**
* 联建单位
*/
@NotBlank(message = "联建单位不能为空", groups = {AddPartyActivityGroup.class})
private String unitId;
/**
* 活动目标
*/
@NotBlank(message = "活动目标不能为空", groups = {AddPartyActivityGroup.class})
private String target;
/**
* 服务事项
*/
@NotBlank(message = "服务事项不能为空", groups = {AddPartyActivityGroup.class})
private String serviceMatter;
}

23
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandCategoryResDTO.java

@ -0,0 +1,23 @@
package com.epmet.dto.result.demand;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 1居民端-我有需求分类列表发布餐可用
* 2居民端-我有需求最近预约返参
*/
@Data
public class DemandCategoryResDTO implements Serializable {
private String categoryId;
private String categoryCode;
private String parentCode;
private String categoryName;
@JsonIgnore
private String customerId;
private List<DemandCategoryResDTO> children;
}

3
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandDataDTO.java

@ -5,6 +5,9 @@ import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 数据分析-个人档案-需求详情研判分析的 分类以及分类下的需求
*/
@Data
public class DemandDataDTO implements Serializable {
private String firstCategoryCode;

121
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandDetailResDTO.java

@ -0,0 +1,121 @@
package com.epmet.dto.result.demand;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 需求大厅-需求详情
* 我的需求-需求详情 todo
*/
@Data
public class DemandDetailResDTO implements Serializable {
private String demandRecId;
@JsonIgnore
private String categoryCode;
@JsonIgnore
private String parentCode;
/**
* 二级分类名称
*/
private String categoryName;
/**
* 奖励积分
*/
private Integer awardPoint;
/**
* 需求内容
*/
private String content;
/**
* 服务要求-服务时间yyyy-MM-dd HH:mm
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date wantServiceTime;
/**
* 服务要求-联系人需求人名称
*/
private String demandUserName;
/**
* 服务要求-联系人需求人电话
*/
private String demandUserMobile;
/**
* 服务地点
*/
private String serviceAddress;
// 服务地点,工作端指派默认居民居住房屋地址,居民端地图选择
private String serviceLocation;
// 门牌号详细地址
private String locationDetail;
// 经度,需求人是ic的居民时,取所住楼栋的中心点位
private String longitude;
// 纬度,需求人是ic的居民时,取所住楼栋的中心点位
private String latitude;
/**
* 实际服务开始时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date serviceStartTime;
/**
* 实际服务结束时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date serviceEndTime;
/**
* 得分可为半星
*/
private BigDecimal score;
/**
* 完成结果已解决 resolved未解决 unresolved
*/
private String finishResult;
/**
* 完成情况
*/
private String finishDesc;
/**
* 待处理pending已取消canceled已派单assigned已接单have_order已完成finished
*/
private String status;
/**
* 1已评价0未评价;评价后ic_user_satisfaction表有记录
*/
private Boolean evaluateFlag;
/**
* 服务记录主键
*/
private String serviceId;
@JsonIgnore
private String serverId;
// 以下几个返参在我的需求详情中返回:
private String serviceType;
private String serviceUserName;
private String serviceUserMobile;
private String serviceUnitName;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date cancelTime;
}

79
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandHallResultDTO.java

@ -0,0 +1,79 @@
package com.epmet.dto.result.demand;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 居民端-需求大厅未处理处理中已完成返参DTO
* 返参DTO
*/
@Data
public class DemandHallResultDTO implements Serializable {
/**
* 需求id
*/
private String demandRecId;
/**
* 分类编码
*/
@JsonIgnore
private String categoryCode;
/**
* 父级分类编码
*/
@JsonIgnore
private String parentCode;
/**
* 服务事项实际就是需求分类二级分类名字
*/
private String categoryName;
/**
* 服务时间yyyy-MM-dd HH:mm
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date wantServiceTime;
/**
* 服务地点
*/
private String serviceAddress;
/**
* 奖励积分
*/
private Integer awardPoint;
/**
* 需求人名字
*/
private String demandUserName;
/**
* 需求人联系电话
*/
private String demandUserMobile;
/**
* 得分可为半星
*/
private BigDecimal score;
/**
* 待处理pending已取消canceled已派单assigned已接单have_order已完成finished
*/
private String status;
/**
* 1已评价0未评价;评价后ic_user_satisfaction表有记录
*/
private Boolean evaluateFlag;
}

3
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandPageResDTO.java

@ -6,6 +6,9 @@ import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* 需求分类列表返参
*/
@Data
public class DemandPageResDTO implements Serializable {
private String customerId;

18
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/DemandRecResultDTO.java

@ -121,4 +121,22 @@ public class DemandRecResultDTO implements Serializable {
private String icResiUserId;
private String epmetUserId;
/**
* 奖励积分
*/
private Integer awardPoint;
/**
* 服务地点
*/
private String serviceAddress;
// 服务地点,工作端指派默认居民居住房屋地址,居民端地图选择
private String serviceLocation;
// 门牌号详细地址
private String locationDetail;
// 经度,需求人是ic的居民时,取所住楼栋的中心点位
private String longitude;
// 纬度,需求人是ic的居民时,取所住楼栋的中心点位
private String latitude;
}

30
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/FinishResultDTO.java

@ -6,10 +6,34 @@ import java.io.Serializable;
/**
* 完成需求时是否需要计算 区域化党建单位的满意度
*
*/
@Data
public class FinishResultDTO implements Serializable {
private Boolean sendCalStatisfaction;
private String partyUnitId;
/**
* 服务方id可以值区域化党建单位id也可以是社会组织社区自组织id爱心互助的志愿者用户id
*/
private String serverId;
/**
* 服务方类型志愿者volunteer社会组织social_org社区自组织community_org区域党建单位party_unit
*/
private String serviceType;
/**
* 奖励积分只有服务方是志愿者且积分大于0时才发放积分
*/
private Integer awardPoint;
/**
* 1已评价0未评价;评价后ic_user_satisfaction表有记录
*/
private Boolean evaluateFlag;
/**
* 完成了XXX的需求
*/
private String remark;
private String firstCategoryName;
private String categoryCode;
/**
* 完成结果已解决 resolved未解决 unresolved
*/
private String finishResult;
}

4
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/IcResiUserReportDemandRes.java

@ -7,6 +7,10 @@ import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 数据分析-个人档案居民需求列表table
* 数据分析-个人档案需求详情研判分析-需求列表
*/
@Data
public class IcResiUserReportDemandRes implements Serializable {
private static final long serialVersionUID = 7043350476644105434L;

1
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/OptionDTO.java

@ -9,4 +9,5 @@ public class OptionDTO implements Serializable {
private static final long serialVersionUID = -6722370308097497466L;
private String label;
private String value;
private Integer awardPoint;
}

74
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/ResiClientMyDemandResDTO.java

@ -0,0 +1,74 @@
package com.epmet.dto.result.demand;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 居民端-我的需求列表入参
*/
@Data
public class ResiClientMyDemandResDTO implements Serializable {
private String demandRecId;
@JsonIgnore
private String categoryCode;
@JsonIgnore
private String parentCode;
/**
* 二级分类名称
*/
private String categoryName;
/**
* 服务要求-服务时间yyyy-MM-dd HH:mm
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date wantServiceTime;
/**
* 服务地点
*/
private String serviceAddress;
/**
* 根据服务方类型找名字
*/
//服务方类型:服务方类型:志愿者:volunteer;社会组织:social_org;社区自组织:community_org;区域党建单位:party_unit;
@JsonIgnore
private String serviceType;
@JsonIgnore
private String serverId;
/**
* 服务方负责人姓名如果是志愿者返回志愿者的姓名
*/
private String serviceUserName;
/**
* 服务方负责人联系电话如果是志愿者返回志愿者的注册手机号
*/
private String serviceUserMobile;
/**
* 社会组织名
* 社区自组织名
* 区域党建单位名
*/
private String serviceUnitName;
/**
* 1已评价0未评价;评价后ic_user_satisfaction表有记录
*/
private Boolean evaluateFlag;
/**
* 得分可为半星
*/
private BigDecimal score;
/**
* 待处理pending已取消canceled已派单assigned已接单have_order已完成finished
*/
private String status;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date cancelTime;
}

15
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/TakeOrderResultDTO.java

@ -0,0 +1,15 @@
package com.epmet.dto.result.demand;
import lombok.Data;
import java.io.Serializable;
/**
* 需求大厅-我要接单
*/
@Data
public class TakeOrderResultDTO implements Serializable {
private static final long serialVersionUID = -4390598017224563310L;
private Boolean isVolunteer;
private String serviceId;
}

18
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/UserDemandRelResDTO.java

@ -0,0 +1,18 @@
package com.epmet.dto.result.demand;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.io.Serializable;
/**
* 当前用户与需求消息的关系
*/
@AllArgsConstructor
@Data
public class UserDemandRelResDTO implements Serializable {
private static final long serialVersionUID = -9007483306143283653L;
// 需求发布人:publisher ;服务人:server
private String identity;
}

21
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActDetailResultDTO.java

@ -175,4 +175,25 @@ public class ResiActDetailResultDTO implements Serializable {
* 取消活动的时间yyyy-MM-dd HH:mm
*/
private String cancelTime;
/**
* 活动类型爱心活动heart 联建活动party
*/
private String actType;
/**
* 联建单位
*/
private String unitId;
private String unitName;
/**
* 活动目标
*/
private String target;
/**
* 服务事项
*/
private String serviceMatter;
private String serviceMatterName;
}

5
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiActInfoResultDTO.java

@ -87,4 +87,9 @@ public class ResiActInfoResultDTO implements Serializable {
*用户报名状态no_signed_up: 未报名signed_up: 已报名
*/
private String signupFlag;
/**
* 活动类型 爱心活动heart 联建活动party
*/
private String actType;
}

5
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiInProgressActResultDTO.java

@ -41,4 +41,9 @@ public class ResiInProgressActResultDTO implements Serializable {
* 标题
*/
private String title;
/**
* 活动类型 爱心活动heart 联建活动party
*/
private String actType;
}

5
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLatestActResultDTO.java

@ -82,4 +82,9 @@ public class ResiLatestActResultDTO implements Serializable {
* 活动状态(报名中signing_up已报满enough截止报名: end_sign_up; 已开始 in_progress;
*/
private String actCurrentState;
/**
* 活动类型 爱心活动heart 联建活动party
*/
private String actType;
}

5
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiLookBackActResultDTO.java

@ -66,4 +66,9 @@ public class ResiLookBackActResultDTO implements Serializable {
* 活动状态(已结束finished)
*/
private String actCurrentState;
/**
* 活动类型 爱心活动heart 联建活动party
*/
private String actType;
}

5
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/resi/ResiMyActResultDTO.java

@ -82,4 +82,9 @@ public class ResiMyActResultDTO implements Serializable {
* 活动当前状态(审核中auditing审核通过passed审核不通过refused已结束canceld)
*/
private String actCurrentState;
/**
* 活动类型 爱心活动heart 联建活动party
*/
private String actType;
}

21
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/ActPreviewResultDTO.java

@ -89,4 +89,25 @@ public class ActPreviewResultDTO implements Serializable {
* 活动详情
*/
private List<ActPreviewContentResultDTO> actContent;
/**
* 活动类型爱心活动heart 联建活动party
*/
private String actType;
/**
* 联建单位
*/
private String unitId;
private String unitName;
/**
* 活动目标
*/
private String target;
/**
* 服务事项
*/
private String serviceMatter;
private String serviceMatterName;
}

21
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/work/CanceledActDetailResultDTO.java

@ -147,4 +147,25 @@ public class CanceledActDetailResultDTO implements Serializable {
* 活动签到打卡半径(单位)
*/
private Integer signInRadius;
/**
* 活动类型爱心活动heart 联建活动party
*/
private String actType;
/**
* 联建单位
*/
private String unitId;
private String unitName;
/**
* 活动目标
*/
private String target;
/**
* 服务事项
*/
private String serviceMatter;
private String serviceMatterName;
}

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

Loading…
Cancel
Save