wangxianzhang 3 years ago
parent
commit
49833400f5
  1. 10
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java
  2. 9
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/datastats/FactAgencyGovernDailyEntity.java
  3. 5
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java
  4. 10
      epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml
  5. 9
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/FactAgencyGovernDailyDTO.java
  6. 9
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/FactGridGovernDailyDTO.java
  7. 2
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/org/CustomerStaffGridDTO.java
  8. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/constant/ProjectConstant.java
  9. 11
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java
  10. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectMainDailyDao.java
  11. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/screen/ScreenProjectDataDao.java
  12. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectDao.java
  13. 8
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/evaluationindex/extract/FactAgencyGovernDailyEntity.java
  14. 11
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/evaluationindex/extract/FactGridGovernDailyEntity.java
  15. 19
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/HistoryDataService.java
  16. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/FactOriginProjectMainDailyService.java
  17. 27
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/FactAgencyGovernDailyServiceImpl.java
  18. 16
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/FactGridGovernDailyServiceImpl.java
  19. 16
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/FactOriginProjectMainDailyServiceImpl.java
  20. 6
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/ProjectExtractServiceImpl.java
  21. 16
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenProjectSettleServiceImpl.java
  22. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenProjectDataService.java
  23. 15
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ScreenProjectDataServiceImpl.java
  24. 75
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/HistoryDataServiceImpl.java
  25. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectService.java
  26. 16
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectServiceImpl.java
  27. 13
      epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/V0.0.30__add_project_origin.sql
  28. 18
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml
  29. 15
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectDataDao.xml
  30. 1
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/CustomerGridDao.xml
  31. 12
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml
  32. 12
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/redis/GovCustomerMenuRedis.java
  33. 5
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/GovCustomerMenuServiceImpl.java
  34. 11
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectApprovalFormDTO.java
  35. 5
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ProjectConstant.java
  36. 5
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java
  37. 8
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java
  38. 2
      epmet-module/gov-project/gov-project-server/src/main/resources/db/migration/V0.0.20__project_origin.sql
  39. 4
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml
  40. 12
      epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/service/impl/UserPatrolRecordServiceImpl.java
  41. 10
      epmet-module/open-data-worker/open-data-worker-server/src/main/resources/mapper/ExDeptDao.xml
  42. 16
      epmet-module/open-data-worker/open-data-worker-server/src/main/resources/mapper/ExUserDao.xml

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

@ -734,6 +734,14 @@ public class RedisKeys {
}
public static String getCustomerMenuList(String customerId, Integer type) {
return rootPrefix.concat("oper:access:nav:customerId:").concat(customerId).concat(":type:")+type;
return getCustomerMenuListPrefix().concat(customerId).concat(":type:")+type;
}
/**
* desc:菜单缓存前缀
* @return
*/
public static String getCustomerMenuListPrefix() {
return rootPrefix.concat("oper:access:nav:customerId:");
}
}

9
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/datastats/FactAgencyGovernDailyEntity.java

@ -179,6 +179,13 @@ public class FactAgencyGovernDailyEntity extends BaseEpmetEntity {
* 当前组织内结案的项目中由区直部门结案的项目总数
*/
private Integer districtDeptClosedCount;
/**
* 17当前组织内来源于工作人员上报事件的项目结案已解决数
*/
private Integer workEventResolvedCount;
/**
* 18当前组织内来源于工作人员上报事件的项目结案无需解决数
*/
private Integer workEventUnResolvedCount;
}

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

@ -1197,8 +1197,11 @@ public class DataStatsServiceImpl implements DataStatsService, ResultDataResolve
Integer projectUnResolvedCount = list.stream().mapToInt(FactAgencyGovernDailyEntity::getApprovalProjectUnResolvedCount).sum();
Integer eventResolvedCount = list.stream().mapToInt(FactAgencyGovernDailyEntity::getEventResolvedCount).sum();
Integer eventUnResolvedCount = list.stream().mapToInt(FactAgencyGovernDailyEntity::getEventUnResolvedCount).sum();
Integer workEventResolvedCount = list.stream().mapToInt(FactAgencyGovernDailyEntity::getWorkEventResolvedCount).sum();
Integer workEventUnResolvedCount = list.stream().mapToInt(FactAgencyGovernDailyEntity::getWorkEventUnResolvedCount).sum();
Integer closedProjectTotal = issueResolvedCount + issueUnResolvedCount+projectResolvedCount
+ projectUnResolvedCount + eventResolvedCount + eventUnResolvedCount;
+ projectUnResolvedCount + eventResolvedCount + eventUnResolvedCount
+ workEventResolvedCount + workEventUnResolvedCount;
resultDTO.setProblemResolvedCount(closedProjectTotal);
resultDTO.setGroupSelfGovernRatio(getPercentage(inGroupTopicResolvedCount + inGroupTopicUnResolvedCount, problemResolvedCount));
resultDTO.setGridSelfGovernRatio(getPercentage(gridSelfGovernProjectTotal, closedProjectTotal));

10
epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml

@ -630,7 +630,8 @@
`level` AS level,
ISSUE_PROJECT_RESOLVED_COUNT+ISSUE_PROJECT_UN_RESOLVED_COUNT
+APPROVAL_PROJECT_RESOLVED_COUNT+APPROVAL_PROJECT_UN_RESOLVED_COUNT
+EVENT_RESOLVED_COUNT+EVENT_UN_RESOLVED_COUNT AS problemResolvedCount,
+EVENT_RESOLVED_COUNT+EVENT_UN_RESOLVED_COUNT
+WORK_EVENT_RESOLVED_COUNT+WORK_EVENT_UN_RESOLVED_COUNT AS problemResolvedCount,
concat(ROUND(group_self_govern_ratio*100, 1),'%') AS groupSelfGovernRatio,
concat(ROUND(grid_self_govern_ratio*100, 1),'%') AS gridSelfGovernRatio,
concat(ROUND(community_closed_ratio*100, 1),'%') AS communityResolvedRatio,
@ -652,7 +653,8 @@
grid_id AS gridId,
ISSUE_PROJECT_RESOLVED_COUNT+ISSUE_PROJECT_UN_RESOLVED_COUNT
+APPROVAL_PROJECT_RESOLVED_COUNT+APPROVAL_PROJECT_UN_RESOLVED_COUNT
+EVENT_RESOLVED_COUNT+EVENT_UN_RESOLVED_COUNT AS problemResolvedCount,
+EVENT_RESOLVED_COUNT+EVENT_UN_RESOLVED_COUNT
+WORK_EVENT_RESOLVED_COUNT+WORK_EVENT_UN_RESOLVED_COUNT AS problemResolvedCount,
concat(ROUND(group_self_govern_ratio*100, 1),'%') AS groupSelfGovernRatio,
concat(ROUND(grid_self_govern_ratio*100, 1),'%') AS gridSelfGovernRatio,
concat(ROUND(community_closed_ratio*100, 1),'%') AS communityResolvedRatio,
@ -689,7 +691,9 @@
APPROVAL_PROJECT_RESOLVED_COUNT,
APPROVAL_PROJECT_UN_RESOLVED_COUNT,
EVENT_RESOLVED_COUNT,
EVENT_UN_RESOLVED_COUNT
EVENT_UN_RESOLVED_COUNT,
WORK_EVENT_RESOLVED_COUNT,
WORK_EVENT_UN_RESOLVED_COUNT
FROM
fact_agency_govern_daily
WHERE

9
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/FactAgencyGovernDailyDTO.java

@ -138,6 +138,15 @@ public class FactAgencyGovernDailyDTO implements Serializable {
*/
private Integer eventUnResolvedCount;
/**
* 17当前组织内来源于工作人员上报事件的项目结案已解决数
*/
private Integer workEventResolvedCount;
/**
* 18当前组织内来源于工作人员上报事件的项目结案无需解决数
*/
private Integer workEventUnResolvedCount;
/**
* 未出当前网格的结案项目数
*/

9
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/FactGridGovernDailyDTO.java

@ -149,6 +149,15 @@ public class FactGridGovernDailyDTO implements Serializable {
*/
private Integer eventUnResolvedCount;
/**
* 21当前组织内来源于工作人员上报事件的项目结案已解决数
*/
private Integer workEventResolvedCount;
/**
* 22当前组织内来源于工作人员上报事件的项目结案无需解决数
*/
private Integer workEventUnResolvedCount;
/**
* 15未出当前网格的结案项目数=11+12+13+14
*/

2
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/org/CustomerStaffGridDTO.java

@ -20,7 +20,6 @@ package com.epmet.dto.org;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
@ -46,6 +45,7 @@ public class CustomerStaffGridDTO implements Serializable {
* 网格ID
*/
private String gridId;
private String gridName;
/**
* 上级组织ID
*/

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/constant/ProjectConstant.java

@ -83,6 +83,8 @@ public interface ProjectConstant {
String PROJECT_ORIGIN_AGENCY="agency";
String PROJECT_ORIGIN_EVENT="resi_event";
String PROJECT_ORIGIN_WORK_EVENT="work_event";
/**
* 自办
*/

11
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java

@ -41,6 +41,7 @@ import com.epmet.entity.stats.DimAgencyEntity;
import com.epmet.entity.stats.DimCustomerEntity;
import com.epmet.entity.stats.DimDateEntity;
import com.epmet.entity.stats.DimMonthEntity;
import com.epmet.service.HistoryDataService;
import com.epmet.service.StatsDemoService;
import com.epmet.service.StatsPartyMemberVanguardService;
import com.epmet.service.evaluationindex.extract.dataToIndex.*;
@ -60,6 +61,7 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
@ -139,6 +141,8 @@ public class DemoController {
private DimCustomerService dimCustomerService;
@Autowired
private ScreenProjectDataService screenProjectDataService;
@Resource
private HistoryDataService historyDataService;
@GetMapping("testAlarm")
public void testAlarm() {
@ -1139,4 +1143,11 @@ public class DemoController {
long l = (end - start) / 1000;
return new Result<String>().ok("gridAndOrgDaily耗时" + l+ "s");
}
@PostMapping("projectHistoryData")
public Result projectHistoryData(@RequestBody ExtractOriginFormDTO formDTO) {
historyDataService.projectAddGridId(formDTO.getCustomerId());
return new Result();
}
}

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectMainDailyDao.java

@ -23,6 +23,7 @@ import com.epmet.dto.extract.result.GridProjectClosedTotalResultDTO;
import com.epmet.dto.extract.result.OrgStatisticsResultDTO;
import com.epmet.dto.extract.result.TransferRightRatioResultDTO;
import com.epmet.dto.indexcollect.result.CpcIndexCommonDTO;
import com.epmet.dto.org.CustomerStaffGridDTO;
import com.epmet.dto.pingyin.result.*;
import com.epmet.dto.screen.ScreenProjectDataDTO;
import com.epmet.dto.screen.form.ProjectSourceMapFormDTO;
@ -550,4 +551,13 @@ public interface FactOriginProjectMainDailyDao extends BaseDao<FactOriginProject
*/
List<OrgStatisticsResultDTO> getMemberProjectCount(@Param("customerId") String customerId, @Param("dateId") String dateId);
/**
* 更新历史数据
* @Param dto
* @Return
* @Author zhaoqifeng
* @Date 2022/3/16 9:48
*/
void updateHistoryData(CustomerStaffGridDTO dto);
}

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/screen/ScreenProjectDataDao.java

@ -19,6 +19,7 @@ package com.epmet.dao.evaluationindex.screen;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.extract.form.ExtractOriginFormDTO;
import com.epmet.dto.org.CustomerStaffGridDTO;
import com.epmet.dto.screen.ScreenProjectDataDTO;
import com.epmet.dto.screen.result.DataCheckDTO;
import com.epmet.dto.screen.result.GridAndOrgCategoryCountResultDTO;
@ -122,4 +123,13 @@ public interface ScreenProjectDataDao extends BaseDao<ScreenProjectDataEntity> {
* @Date 2022/3/7 16:00
*/
List<DataCheckDTO> getCheckResult(ExtractOriginFormDTO formDTO);
/**
* 更新历史数据
* @Param list
* @Return
* @Author zhaoqifeng
* @Date 2022/3/16 9:48
*/
void updateHistoryData(CustomerStaffGridDTO dto);
}

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectDao.java

@ -19,6 +19,7 @@ package com.epmet.dao.project;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.ProjectDTO;
import com.epmet.dto.org.CustomerStaffGridDTO;
import com.epmet.dto.project.*;
import com.epmet.dto.project.result.ProjectExceedParamsResultDTO;
import com.epmet.entity.project.ProjectEntity;
@ -204,4 +205,13 @@ public interface ProjectDao extends BaseDao<ProjectEntity> {
* @return
*/
List<ResiEventDTO> getEventList(@Param("customerId") String customerId, @Param("projectId") String projectId);
/**
* 更新历史数据
* @Param dto
* @Return
* @Author zhaoqifeng
* @Date 2022/3/16 9:48
*/
void updateHistoryData(CustomerStaffGridDTO dto);
}

8
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/evaluationindex/extract/FactAgencyGovernDailyEntity.java

@ -158,6 +158,14 @@ public class FactAgencyGovernDailyEntity extends BaseEpmetEntity {
* 12当前组织内来源于事件的项目结案无需解决数
*/
private Integer eventUnResolvedCount;
/**
* 17当前组织内来源于工作人员上报事件的项目结案已解决数
*/
private Integer workEventResolvedCount;
/**
* 18当前组织内来源于工作人员上报事件的项目结案无需解决数
*/
private Integer workEventUnResolvedCount;
/**
* 未出当前网格的结案项目数
*/

11
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/evaluationindex/extract/FactGridGovernDailyEntity.java

@ -177,6 +177,14 @@ public class FactGridGovernDailyEntity extends BaseEpmetEntity {
* 16当前组织内来源于事件的项目结案无需解决数
*/
private Integer eventUnResolvedCount;
/**
* 17当前组织内来源于工作人员上报事件的项目结案已解决数
*/
private Integer workEventResolvedCount;
/**
* 18当前组织内来源于工作人员上报事件的项目结案无需解决数
*/
private Integer workEventUnResolvedCount;
/**
@ -204,7 +212,6 @@ public class FactGridGovernDailyEntity extends BaseEpmetEntity {
//界面展示
this.problemResolvedCount = NumConstant.ZERO;
this.groupSelfGovernRatio=BigDecimal.ZERO;
this.gridSelfGovernProjectTotal=NumConstant.ZERO;
this.communityClosedRatio=BigDecimal.ZERO;
this.streetClosedRatio=BigDecimal.ZERO;
this.districtDeptClosedRatio=BigDecimal.ZERO;
@ -219,6 +226,8 @@ public class FactGridGovernDailyEntity extends BaseEpmetEntity {
this.approvalProjectUnResolvedCount=NumConstant.ZERO;
this.eventResolvedCount=NumConstant.ZERO;
this.eventUnResolvedCount=NumConstant.ZERO;
this.workEventResolvedCount=NumConstant.ZERO;
this.workEventUnResolvedCount=NumConstant.ZERO;
this.inGroupTopicResolvedCount=NumConstant.ZERO;
this.inGroupTopicUnResolvedCount=NumConstant.ZERO;
this.fromIssueResolvedInGridCount=NumConstant.ZERO;

19
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/HistoryDataService.java

@ -0,0 +1,19 @@
package com.epmet.service;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/3/15 10:09
*/
public interface HistoryDataService {
/**
* 网格员立项来源改为work_event
*
* @Param customerId
* @Return
* @Author zhaoqifeng
* @Date 2022/3/15 10:13
*/
void projectAddGridId(String customerId);
}

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/FactOriginProjectMainDailyService.java

@ -23,6 +23,7 @@ import com.epmet.dto.extract.result.GridProjectClosedTotalResultDTO;
import com.epmet.dto.extract.result.OrgStatisticsResultDTO;
import com.epmet.dto.extract.result.TransferRightRatioResultDTO;
import com.epmet.dto.indexcollect.result.CpcIndexCommonDTO;
import com.epmet.dto.org.CustomerStaffGridDTO;
import com.epmet.dto.pingyin.result.*;
import com.epmet.dto.screen.ScreenProjectDataDTO;
import com.epmet.dto.screen.form.ProjectSourceMapFormDTO;
@ -490,4 +491,13 @@ public interface FactOriginProjectMainDailyService extends BaseService<FactOrigi
* @return java.util.Map<java.lang.String,java.util.List<com.epmet.dto.extract.result.OrgStatisticsResultDTO>>
*/
Map<String, List<OrgStatisticsResultDTO>> getMemberProjectCount(String customerId, String dateId, Integer type);
/**
* 更新项目表历史数据
* @Param dto
* @Return
* @Author zhaoqifeng
* @Date 2022/3/16 9:46
*/
void updateHistoryData(CustomerStaffGridDTO dto);
}

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

@ -260,6 +260,31 @@ public class FactAgencyGovernDailyServiceImpl extends BaseServiceImpl<FactAgency
});
}
//2022.03.11 当前组织内:来源于工作人员上报事件的项目:结案已解决数
Map<String, OrgStatisticsResultDTO> workEventProjectResolvedTotal = factOriginProjectMainDailyService.getAgencyClosedProjectCount(customerId,
dateId, ProjectConstant.RESOLVED,
ProjectConstant.PROJECT_ORIGIN_WORK_EVENT);
if (!eventProjectResolvedTotal.isEmpty()) {
agencyGovernDailyList.forEach(item -> {
OrgStatisticsResultDTO dto = eventProjectResolvedTotal.get(item.getAgencyId());
if (null != dto) {
item.setWorkEventResolvedCount(dto.getSum());
}
});
}
//2022.03.11 当前组织内:来源于工作人员上报事件的项目:结案无需解决数
Map<String, OrgStatisticsResultDTO> workEventProjectUnResolvedTotal = factOriginProjectMainDailyService.getAgencyClosedProjectCount(customerId,
dateId, ProjectConstant.UNRESOLVED,
ProjectConstant.PROJECT_ORIGIN_WORK_EVENT);
if (!eventProjectUnResolvedTotal.isEmpty()) {
agencyGovernDailyList.forEach(item -> {
OrgStatisticsResultDTO dto = eventProjectUnResolvedTotal.get(item.getAgencyId());
if (null != dto) {
item.setWorkEventUnResolvedCount(dto.getSum());
}
});
}
// 2.党群自治占比:当前组织下,所有小组内关闭(已解决+无需解决)的话题数与问题解决总数之比(未出小组:未转议题的)
agencyGovernDailyList.forEach(item -> {
int count = item.getInGroupTopicResolvedCount() + item.getInGroupTopicUnResolvedCount();
@ -396,6 +421,8 @@ public class FactAgencyGovernDailyServiceImpl extends BaseServiceImpl<FactAgency
entity.setApprovalProjectUnResolvedCount(NumConstant.ZERO);
entity.setEventResolvedCount(NumConstant.ZERO);
entity.setEventUnResolvedCount(NumConstant.ZERO);
entity.setWorkEventResolvedCount(NumConstant.ZERO);
entity.setWorkEventUnResolvedCount(NumConstant.ZERO);
entity.setInGroupTopicResolvedCount(NumConstant.ZERO);
entity.setInGroupTopicUnResolvedCount(NumConstant.ZERO);
entity.setGridSelfGovernProjectTotal(NumConstant.ZERO);

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

@ -110,6 +110,8 @@ public class FactGridGovernDailyServiceImpl extends BaseServiceImpl<FactGridGove
Map<String,Integer> approvalProjectUnResolvedMap=getGridProjectMap(customerId,null,ProjectConstant.CLOSED,ProjectConstant.PROJECT_ORIGIN_AGENCY,DimObjectStatusConstant.UNRESOLVED);
Map<String,Integer> eventProjectResolvedMap=getGridProjectMap(customerId,null,ProjectConstant.CLOSED,ProjectConstant.PROJECT_ORIGIN_EVENT,DimObjectStatusConstant.RESOLVED);
Map<String,Integer> eventProjectUnResolvedMap=getGridProjectMap(customerId,null,ProjectConstant.CLOSED,ProjectConstant.PROJECT_ORIGIN_EVENT,DimObjectStatusConstant.UNRESOLVED);
Map<String,Integer> workEventProjectResolvedMap=getGridProjectMap(customerId,null,ProjectConstant.CLOSED,ProjectConstant.PROJECT_ORIGIN_WORK_EVENT,DimObjectStatusConstant.RESOLVED);
Map<String,Integer> workEventProjectUnResolvedMap=getGridProjectMap(customerId,null,ProjectConstant.CLOSED,ProjectConstant.PROJECT_ORIGIN_WORK_EVENT,DimObjectStatusConstant.UNRESOLVED);
Map<String, Integer> inGroupTopicResolvedMap=getTopicMap(customerId, null,ProjectConstant.CLOSED, DimObjectStatusConstant.RESOLVED,NumConstant.ZERO_STR);
Map<String, Integer> inGroupTopicUnResolvedMap=getTopicMap(customerId, null,ProjectConstant.CLOSED, DimObjectStatusConstant.UNRESOLVED,NumConstant.ZERO_STR);
Map<String, GovernGridClosedTotalCommonDTO> dtoMap=getGovernGridClosedTotalCommonDTOMap(customerId,gridIds);
@ -167,6 +169,16 @@ public class FactGridGovernDailyServiceImpl extends BaseServiceImpl<FactGridGove
insertEntity.setEventUnResolvedCount(eventProjectUnResolvedMap.get(insertEntity.getGridId()));
}
// 2022.03.11 当前组织内:来源于工作人员上报事件的项目:结案已解决数
if(workEventProjectResolvedMap.containsKey(insertEntity.getGridId())){
insertEntity.setWorkEventResolvedCount(workEventProjectResolvedMap.get(insertEntity.getGridId()));
}
// 2022.03.11 当前组织内:来源于工作人员上报事件的项目:结案无需解决数
if(workEventProjectUnResolvedMap.containsKey(insertEntity.getGridId())){
insertEntity.setWorkEventUnResolvedCount(workEventProjectUnResolvedMap.get(insertEntity.getGridId()));
}
// 党群自治占比:当前组织下,所有小组内关闭(已解决+无需解决)的话题数与问题解决总数之比(未出小组:未转议题的)
// 9、当前网格内,未出小组即未转议题的:话题关闭已解决数
if(inGroupTopicResolvedMap.containsKey(insertEntity.getGridId())){
@ -209,7 +221,9 @@ public class FactGridGovernDailyServiceImpl extends BaseServiceImpl<FactGridGove
+ insertEntity.getApprovalProjectResolvedCount()
+ insertEntity.getApprovalProjectUnResolvedCount()
+ insertEntity.getEventResolvedCount()
+ insertEntity.getEventUnResolvedCount();
+ insertEntity.getEventUnResolvedCount()
+ insertEntity.getWorkEventResolvedCount()
+ insertEntity.getWorkEventUnResolvedCount();
// 党群自治占比:当前组织下,所有小组内关闭(已解决+无需解决)的话题数与问题解决总数之比(未出小组:未转议题的)
//界面展示:2、党群自治占比=(9+10)/PROBLEM_RESOLVED_COUNT; 此列存储的是小数
int groupSelfGovernRatioFz=insertEntity.getInGroupTopicResolvedCount()+insertEntity.getInGroupTopicUnResolvedCount();

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

@ -31,6 +31,7 @@ import com.epmet.dto.extract.result.GridProjectClosedTotalResultDTO;
import com.epmet.dto.extract.result.OrgStatisticsResultDTO;
import com.epmet.dto.extract.result.TransferRightRatioResultDTO;
import com.epmet.dto.indexcollect.result.CpcIndexCommonDTO;
import com.epmet.dto.org.CustomerStaffGridDTO;
import com.epmet.dto.pingyin.result.*;
import com.epmet.dto.result.CostDayResultDTO;
import com.epmet.dto.screen.ScreenProjectDataDTO;
@ -44,6 +45,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
@ -734,5 +736,19 @@ public class FactOriginProjectMainDailyServiceImpl extends BaseServiceImpl<FactO
return list.stream().collect(Collectors.groupingBy(OrgStatisticsResultDTO::getStaffId));
}
/**
* 更新项目表历史数据
*
* @param dto
* @Return
* @Author zhaoqifeng
* @Date 2022/3/16 9:46
*/
@Override
@Transactional(rollbackFor = Exception.class)
public void updateHistoryData(CustomerStaffGridDTO dto) {
baseDao.updateHistoryData(dto);
}
}

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

@ -174,10 +174,10 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
entity.setTopicId("");
entity.setTopicCreatorId("");
entity.setGridId("");
entity.setIssueId("");
if (ProjectConstant.ISSUE.equals(project.getOrigin())) {
entity.setIssueId(project.getOriginId());
} else if (ProjectConstant.PROJECT_ORIGIN_EVENT.equals(project.getOrigin())){
entity.setIssueId("");
ResiEventDTO eventDTO = projectEventMap.get(project.getId());
if (null != eventDTO) {
if (ProjectConstant.PUBLISHER_TYPE_GRID.equals(eventDTO.getOrgType())) {
@ -185,8 +185,8 @@ public class ProjectExtractServiceImpl implements ProjectExtractService {
entity.setTopicCreatorId(eventDTO.getCreatedBy());
}
}
} else {
entity.setIssueId("");
} else if (ProjectConstant.PROJECT_ORIGIN_WORK_EVENT.equals(project.getOrigin())){
entity.setGridId(project.getOriginId());
}
String[] pIds = project.getOrgIdPath().split(StrConstant.COLON);
if (pIds.length > 1) {

16
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenProjectSettleServiceImpl.java

@ -119,6 +119,22 @@ public class ScreenProjectSettleServiceImpl implements ScreenProjectSettleServic
meta.setLongitude(new BigDecimal(projectInfo.getLocateLongitude()));
}
meta.setProjectAddress(projectInfo.getLocateAddress());
} else if (ProjectConstant.PROJECT_ORIGIN_WORK_EVENT.equals(projectInfo.getOrigin())) {
//直接立项的话 项目内容是项目背景 经纬度添加
meta.setOrgType(OrgTypeConstant.GRID);
meta.setOrgId(projectInfo.getOriginId());
//上面的initNewScreenProjectData已经赋值了orgName=组织名称
meta.setProjectContent(projectInfo.getBackGround());
meta.setLinkUserId(projectInfo.getCreatedBy());
meta.setLinkName(projectInfo.getCreatedBy());
if (StringUtils.isNotBlank(projectInfo.getLocateDimension())) {
meta.setLatitude(new BigDecimal(projectInfo.getLocateDimension()));
}
if (StringUtils.isNotBlank(projectInfo.getLocateLongitude())) {
meta.setLongitude(new BigDecimal(projectInfo.getLocateLongitude()));
}
meta.setProjectAddress(projectInfo.getLocateAddress());
meta.setOrgName(meta.getTempGridName());
}
//项目满意度得分
meta.setSatisfactionScore(projectService.calProjectSatisfactionScore(param.getCustomerId(),meta.getProjectId()));

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/ScreenProjectDataService.java

@ -20,6 +20,7 @@ package com.epmet.service.evaluationindex.screen;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.rocketmq.messages.DisputeProcessMQMsg;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.org.CustomerStaffGridDTO;
import com.epmet.dto.screen.ScreenProjectDataDTO;
import com.epmet.dto.screen.form.ScreenProjectDataInfoFormDTO;
import com.epmet.dto.screencoll.ScreenCollFormDTO;
@ -157,4 +158,13 @@ public interface ScreenProjectDataService extends BaseService<ScreenProjectDataE
*/
void extractCategory(String customerId);
/**
* 更新项目表历史数据
* @Param dto
* @Return
* @Author zhaoqifeng
* @Date 2022/3/16 9:46
*/
void updateHistoryData(CustomerStaffGridDTO dto);
}

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

@ -32,6 +32,7 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.DataSourceConstant;
import com.epmet.dao.evaluationindex.screen.ScreenProjectDataDao;
import com.epmet.dao.evaluationindex.screen.ScreenProjectImgDataDao;
import com.epmet.dto.org.CustomerStaffGridDTO;
import com.epmet.dto.screen.ScreenProjectDataDTO;
import com.epmet.dto.screen.ScreenProjectImgDataDTO;
import com.epmet.dto.screen.form.ScreenProjectDataInfoFormDTO;
@ -390,4 +391,18 @@ public class ScreenProjectDataServiceImpl extends BaseServiceImpl<ScreenProjectD
}
}
/**
* 更新项目表历史数据
*
* @Param dto
* @Return
* @Author zhaoqifeng
* @Date 2022/3/16 9:46
*/
@Override
@Transactional(rollbackFor = Exception.class)
public void updateHistoryData(CustomerStaffGridDTO dto) {
baseDao.updateHistoryData(dto);
}
}

75
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/HistoryDataServiceImpl.java

@ -0,0 +1,75 @@
package com.epmet.service.impl;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.constant.RoleKeyConstants;
import com.epmet.dto.org.CustomerStaffGridDTO;
import com.epmet.dto.user.result.StaffRoleInfoDTO;
import com.epmet.service.HistoryDataService;
import com.epmet.service.evaluationindex.extract.todata.FactOriginProjectMainDailyService;
import com.epmet.service.evaluationindex.screen.ScreenProjectDataService;
import com.epmet.service.org.CustomerGridService;
import com.epmet.service.project.ProjectService;
import com.epmet.service.user.UserService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/3/15 10:12
*/
@Service
public class HistoryDataServiceImpl implements HistoryDataService {
@Resource
CustomerGridService customerGridService;
@Resource
private UserService userService;
@Resource
private ProjectService projectService;
@Resource
private FactOriginProjectMainDailyService factOriginProjectMainDailyService;
@Resource
private ScreenProjectDataService screenProjectDataService;
/**
* 网格员立项来源改为work_event
*
* @param customerId
* @Param customerId
* @Return
* @Author zhaoqifeng
* @Date 2022/3/15 10:13
*/
@Override
public void projectAddGridId(String customerId) {
List<CustomerStaffGridDTO> staffGridList = customerGridService.getCustomerStaffGridList(customerId);
List<StaffRoleInfoDTO> staffInfoList = userService.getStaffByRoleKey(customerId, RoleKeyConstants.ROLE_KEY_GRID_MEMBER);
if (CollectionUtils.isEmpty(staffGridList) || CollectionUtils.isEmpty(staffInfoList)) {
return;
}
Map<String, StaffRoleInfoDTO> staffMap = staffInfoList.stream().collect(Collectors.toMap(StaffRoleInfoDTO :: getStaffId,
Function.identity()));
List<CustomerStaffGridDTO> list = staffGridList.stream().filter(p -> null != staffMap.get(p.getStaffId())).map(item -> {
StaffRoleInfoDTO staffInfo = staffMap.get(item.getStaffId());
CustomerStaffGridDTO dto = ConvertUtils.sourceToTarget(item, CustomerStaffGridDTO.class);
dto.setStaffId(staffInfo.getStaffId());
return dto;
}).collect(Collectors.toList());
list.forEach(part -> {
//更新project表
projectService.updateHistoryData(part);
//更新fact_origin_project_main_daily
factOriginProjectMainDailyService.updateHistoryData(part);
//更新screen_project_data
screenProjectDataService.updateHistoryData(part);
});
}
}

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectService.java

@ -20,6 +20,7 @@ package com.epmet.service.project;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.dto.ProjectCategoryDTO;
import com.epmet.dto.ProjectDTO;
import com.epmet.dto.org.CustomerStaffGridDTO;
import com.epmet.dto.project.ProjectAgencyDTO;
import com.epmet.dto.project.ProjectGridDTO;
import com.epmet.dto.project.ResiEventDTO;
@ -204,4 +205,13 @@ public interface ProjectService extends BaseService<ProjectEntity> {
* @return
*/
Map<String, ResiEventDTO> getEventList(String customerId, String projectId);
/**
* 更新项目表历史数据
* @Param dto
* @Return
* @Author zhaoqifeng
* @Date 2022/3/16 9:46
*/
void updateHistoryData(CustomerStaffGridDTO dto);
}

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

@ -23,6 +23,7 @@ import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.constant.DataSourceConstant;
import com.epmet.dao.project.ProjectDao;
import com.epmet.dto.ProjectDTO;
import com.epmet.dto.org.CustomerStaffGridDTO;
import com.epmet.dto.project.*;
import com.epmet.dto.project.result.ProjectExceedParamsResultDTO;
import com.epmet.entity.evaluationindex.extract.FactOriginProjectMainDailyEntity;
@ -31,6 +32,7 @@ import com.epmet.service.project.ProjectService;
import com.github.pagehelper.PageHelper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
@ -263,5 +265,19 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
return list.stream().collect(Collectors.toMap(ResiEventDTO::getProjectId, Function.identity()));
}
/**
* 更新项目表历史数据
*
* @param dto
* @Return
* @Author zhaoqifeng
* @Date 2022/3/16 9:46
*/
@Override
@Transactional(rollbackFor = Exception.class)
public void updateHistoryData(CustomerStaffGridDTO dto) {
baseDao.updateHistoryData(dto);
}
}

13
epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/V0.0.30__add_project_origin.sql

@ -0,0 +1,13 @@
ALTER TABLE `epmet_data_statistical`.`fact_origin_project_main_daily`
MODIFY COLUMN `ORIGIN` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '项目来源 来源:议题issue 组织agency,事件resi_event 工作人员上报:work_event' AFTER `PIDS`;
ALTER TABLE `epmet_evaluation_index`.`screen_project_data`
MODIFY COLUMN `ORIGIN` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '来源:议题issue 项目立项:agency 事件:resi_event; add1015\r\n工作人员上报:work_event' AFTER `ALL_PARENT_IDS`;
ALTER TABLE `epmet_data_statistical`.`fact_agency_govern_daily`
ADD COLUMN `WORK_EVENT_RESOLVED_COUNT` int(11) NULL DEFAULT 0 COMMENT '17、当前组织内:来源于工作人员上报事件的项目:结案已解决数' AFTER `EVENT_UN_RESOLVED_COUNT`,
ADD COLUMN `WORK_EVENT_UN_RESOLVED_COUNT` int(11) NULL DEFAULT 0 COMMENT '18、当前组织内:来源于工作人员上报事件的项目:结案无需解决数' AFTER `WORK_EVENT_RESOLVED_COUNT`;
ALTER TABLE `epmet_data_statistical`.`fact_grid_govern_daily`
ADD COLUMN `WORK_EVENT_RESOLVED_COUNT` int(11) NULL DEFAULT 0 COMMENT '21、当前组织内:来源于工作人员上报事件的项目:结案已解决数' AFTER `EVENT_UN_RESOLVED_COUNT`,
ADD COLUMN `WORK_EVENT_UN_RESOLVED_COUNT` int(11) NULL DEFAULT 0 COMMENT '22、当前组织内:来源于工作人员上报事件的项目:结案无需解决数' AFTER `WORK_EVENT_RESOLVED_COUNT`;

18
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml

@ -1184,7 +1184,7 @@
FROM
fact_origin_project_main_daily
WHERE
ORIGIN = 'agency'
ORIGIN = 'work_event'
AND CUSTOMER_ID = #{customerId}
<if test='null != dateId and "" != dateId'>
AND DATE_ID = #{dateId}
@ -1202,7 +1202,7 @@
FROM
fact_origin_project_main_daily
WHERE
ORIGIN = 'agency'
ORIGIN = 'work_event'
AND CUSTOMER_ID = #{customerId}
<if test='null != dateId and "" != dateId'>
AND DATE_ID &lt;= #{dateId}
@ -1211,4 +1211,18 @@
AGENCY_ID,
PROJECT_CREATOR
</select>
<update id="updateHistoryData">
UPDATE
fact_origin_project_main_daily
SET
ORIGIN = 'work_event',
ORIGIN_ID = #{gridId},
GRID_ID = #{gridId}
WHERE
PROJECT_CREATOR = #{staffId}
AND CUSTOMER_ID = #{customerId}
AND AGENCY_ID = #{agencyId}
AND ORIGIN = 'agency'
</update>
</mapper>

15
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectDataDao.xml

@ -458,4 +458,19 @@
AGENCY_ID,
DATE_ID DESC
</select>
<update id="updateHistoryData">
UPDATE
screen_project_data
SET
ORIGIN = 'work_event',
ORG_TYPE = 'grid',
ORG_ID = #{gridId},
ORG_NAME = #{gridName}
WHERE
PROJECT_CREATOR = #{staffId}
AND CUSTOMER_ID = #{customerId}
AND ORG_ID = #{agencyId}
AND ORIGIN = 'agency'
</update>
</mapper>

1
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/org/CustomerGridDao.xml

@ -120,6 +120,7 @@
ca.PID,
cg.PIDS,
csg.GRID_ID,
cg.GRID_NAME,
csg.USER_ID AS staffId
FROM
customer_staff_grid csg

12
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectDao.xml

@ -268,4 +268,16 @@
and rero.CUSTOMER_ID = #{customerId}
</select>
<update id="updateHistoryData">
UPDATE
project
SET
ORIGIN = 'work_event',
ORIGIN_ID = #{gridId}
WHERE
CREATED_BY = #{staffId}
AND CUSTOMER_ID = #{customerId}
AND AGENCY_ID = #{agencyId}
AND ORIGIN = 'agency'
</update>
</mapper>

12
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/redis/GovCustomerMenuRedis.java

@ -17,6 +17,7 @@
package com.epmet.redis;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.redis.RedisKeys;
import com.epmet.commons.tools.redis.RedisUtils;
import com.epmet.dto.GovMenuDTO;
@ -66,16 +67,11 @@ public class GovCustomerMenuRedis {
/**
* desc:删除客户菜单缓存
* @param customerId
* @param type
* @see com.epmet.enums.MenuTypeEnum
*/
public void delCustomerMenu(String customerId, Integer type) {
if (checkParam(customerId, type)) {
String key = RedisKeys.getCustomerMenuList(customerId, type);
redisUtils.delete(key);
}
public void delAllCustomerMenu() {
String key = RedisKeys.getCustomerMenuListPrefix().concat(StrConstant.STAR);
redisUtils.deleteByPattern(key);
}
private boolean checkParam(String customerId, Integer type) {

5
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/GovCustomerMenuServiceImpl.java

@ -28,7 +28,6 @@ import com.epmet.dao.GovCustomerMenuDao;
import com.epmet.dto.GovCustomerMenuDTO;
import com.epmet.dto.form.MenuConfigFormDTO;
import com.epmet.entity.GovCustomerMenuEntity;
import com.epmet.enums.MenuTypeEnum;
import com.epmet.redis.GovCustomerMenuRedis;
import com.epmet.service.GovCustomerMenuService;
import org.apache.commons.lang3.StringUtils;
@ -119,8 +118,8 @@ public class GovCustomerMenuServiceImpl extends BaseServiceImpl<GovCustomerMenuD
}
insertBatch(entities);
}
//删除缓存
formDTO.getCustomerIds().forEach(customerId-> govCustomerMenuRedis.delCustomerMenu(customerId, MenuTypeEnum.MENU.value()));
//删除全部客户缓存
govCustomerMenuRedis.delAllCustomerMenu();
}
@Override

11
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectApprovalFormDTO.java

@ -1,5 +1,6 @@
package com.epmet.dto.form;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
@ -64,5 +65,15 @@ public class ProjectApprovalFormDTO implements Serializable {
private String app;
private String client;
private String userId;
/**
* 立项类型 直接立项agency上报事件work_event
*/
@NotBlank(message = "立项类型不能为空",groups = {ProjectApprovalFormDTO.ApprovalCategory.class})
private String type = "agency";
/**
* 网格ID
*/
@NotBlank(message = "网格ID不能为空",groups = {AddGroup.class})
private String gridId;
}

5
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ProjectConstant.java

@ -15,6 +15,11 @@ public interface ProjectConstant {
*/
String AGENCY = "agency";
/**
* 项目来源-网格员上报事件
*/
String WORK_EVENT = "work_event";
String RESI_EVENT="resi_event";
/**
* 状态-待处理

5
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java

@ -7,6 +7,8 @@ import com.epmet.commons.tools.page.PageData;
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.commons.tools.validator.group.AddGroup;
import com.epmet.constant.ProjectConstant;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.service.ProjectProcessService;
@ -356,6 +358,9 @@ public class ProjectTraceController {
@RequirePermission(requirePermission = RequirePermissionEnum.WORK_PROJECT_APPROVAL)
public Result projectApproval(@LoginUser TokenDto tokenDTO, @RequestBody ProjectApprovalFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO,ProjectApprovalFormDTO.ApprovalCategory.class);
if (ProjectConstant.WORK_EVENT.equals(formDTO.getType())) {
ValidatorUtils.validateEntity(formDTO, AddGroup.class);
}
formDTO.setCustomerId(tokenDTO.getCustomerId());
formDTO.setApp(tokenDTO.getApp());
formDTO.setClient(tokenDTO.getClient());

8
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java

@ -382,8 +382,13 @@ public class ProjectTraceServiceImpl<ProjectTagService> implements ProjectTraceS
ProjectEntity projectEntity = new ProjectEntity();
projectEntity.setCustomerId(formDTO.getCustomerId());
projectEntity.setAgencyId(loginUser.getAgencyId());
if (ProjectConstant.WORK_EVENT.equals(formDTO.getType())) {
projectEntity.setOrigin(ProjectConstant.WORK_EVENT);
projectEntity.setOriginId(formDTO.getGridId());
} else {
projectEntity.setOrigin(ProjectConstant.AGENCY);
projectEntity.setOriginId(loginUser.getAgencyId());
}
projectEntity.setTitle(formDTO.getTitle());
projectEntity.setBackGround(formDTO.getBackGround());
projectEntity.setStatus(ProjectConstant.PENDING);
@ -413,6 +418,9 @@ public class ProjectTraceServiceImpl<ProjectTagService> implements ProjectTraceS
}
}
});
if (ProjectConstant.WORK_EVENT.equals(formDTO.getType())) {
processEntity.setGridId(formDTO.getGridId());
}
projectProcessService.insert(processEntity);
//3-3.项目人员表批量新增数据

2
epmet-module/gov-project/gov-project-server/src/main/resources/db/migration/V0.0.20__project_origin.sql

@ -0,0 +1,2 @@
ALTER TABLE `epmet_gov_project`.`project`
MODIFY COLUMN `ORIGIN` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '来源:议题issue 项目立项:agency 事件:resi_event 工作人员上报:work_event' AFTER `AGENCY_ID`;

4
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml

@ -313,7 +313,7 @@
project
WHERE DEL_FLAG = '0'
AND CREATED_TIME BETWEEN #{patrolStartTime} AND #{patrolEndTime}
AND ORIGIN = 'agency'
AND ORIGIN = 'work_event'
AND CREATED_BY = #{userId}
</select>
<select id="selectPendingListByGrid" resultType="com.epmet.dto.result.PendingResultDTO">
@ -493,7 +493,7 @@
project
WHERE
DEL_FLAG = '0'
AND ORIGIN = 'agency'
AND ORIGIN = 'work_event'
AND AGENCY_ID = #{agencyId}
<if test="staffId != null and staffId != ''">
AND CREATED_BY = #{staffId}

12
epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/service/impl/UserPatrolRecordServiceImpl.java

@ -85,7 +85,7 @@ public class UserPatrolRecordServiceImpl extends BaseServiceImpl<UserPatrolRecor
log.error("构建要插入的数据为空,param:{}", JSON.toJSONString(midPatrolFormDTO));
return false;
}
this.insertBatch(insertList, NumConstant.ONE_HUNDRED);
this.saveOrUpdateBatch(insertList, NumConstant.ONE_HUNDRED);
return true;
}
@ -110,15 +110,9 @@ public class UserPatrolRecordServiceImpl extends BaseServiceImpl<UserPatrolRecor
}
data.forEach(o->{
UserPatrolRecordEntity recordEntity = buildEntity(o);
//update
int effectRow = baseDao.updateById(recordEntity);
if (effectRow == NumConstant.ZERO) {
baseDao.insert(recordEntity);
}
this.saveOrUpdate(recordEntity);
UserPatrolDetailEntity detailEntity = buildDetailEntity(o);
//先删除再新增
userPatrolDetailService.deleteByPatrolId(recordEntity.getId());
boolean insert = userPatrolDetailService.insert(detailEntity);
userPatrolDetailService.saveOrUpdate(detailEntity);
});
return true;

10
epmet-module/open-data-worker/open-data-worker-server/src/main/resources/mapper/ExDeptDao.xml

@ -10,7 +10,7 @@
<trim prefix="qx_dept_id =(case" suffix="end),">
<foreach collection="list" item="item">
<if test='null != item.qxDeptId'>
when qx_dept_name = #{item.qxDeptName} then #{item.qxDeptId}
when dept_name = #{item.qxDeptName} then #{item.qxDeptId}
</if>
</foreach>
</trim>
@ -18,7 +18,7 @@
<trim prefix="qx_dept_name =(case" suffix="end),">
<foreach collection="list" item="item">
<if test='null != item.qxDeptName'>
when qx_dept_name = #{item.qxDeptName} then #{item.qxDeptId}
when dept_name = #{item.qxDeptName} then #{item.qxDeptName}
</if>
</foreach>
</trim>
@ -26,7 +26,7 @@
<trim prefix="qx_dept_code =(case" suffix="end),">
<foreach collection="list" item="item">
<if test='null != item.qxDeptCode'>
when qx_dept_name = #{item.qxDeptName} then #{item.qxDeptCode}
when dept_name = #{item.qxDeptName} then #{item.qxDeptCode}
</if>
</foreach>
</trim>
@ -34,7 +34,7 @@
<trim prefix="qx_customer_id =(case" suffix="end),">
<foreach collection="list" item="item">
<if test='null != item.qxCustomerId'>
when qx_dept_name = #{item.qxDeptName} then #{item.qxCustomerId}
when dept_name = #{item.qxDeptName} then #{item.qxCustomerId}
</if>
</foreach>
</trim>
@ -43,7 +43,7 @@
WHERE
1=1
<foreach collection="list" item="item" open="AND( " separator=" OR " index="index" close=")">
qx_dept_name = #{item.qxDeptName}
dept_name = #{item.qxDeptName}
</foreach>
</update>

16
epmet-module/open-data-worker/open-data-worker-server/src/main/resources/mapper/ExUserDao.xml

@ -7,10 +7,18 @@
UPDATE ex_user
<trim prefix="set" suffixOverrides=",">
<trim prefix="qx_user_id =(case" suffix="end),">
<foreach collection="list" item="item">
<if test='null != item.qxUserId'>
when (login_name = #{item.qxMobile} ) then #{item.qxUserId}
</if>
</foreach>
</trim>
<trim prefix="qx_user_name =(case" suffix="end),">
<foreach collection="list" item="item">
<if test='null != item.qxUserName'>
when (qx_user_id = #{item.qxUserId} ) then #{item.qxUserName}
when (login_name = #{item.qxMobile} ) then #{item.qxUserName}
</if>
</foreach>
</trim>
@ -18,7 +26,7 @@
<trim prefix="qx_mobile =(case" suffix="end),">
<foreach collection="list" item="item">
<if test='null != item.qxMobile'>
when (qx_user_id = #{item.qxUserId} ) then #{item.qxMobile}
when (login_name = #{item.qxMobile} ) then #{item.qxMobile}
</if>
</foreach>
</trim>
@ -26,7 +34,7 @@
<trim prefix="qx_customer_id =(case" suffix="end),">
<foreach collection="list" item="item">
<if test='null != item.qxCustomerId'>
when (qx_user_id = #{item.qxUserId} ) then #{item.qxCustomerId}
when (login_name = #{item.qxMobile} ) then #{item.qxCustomerId}
</if>
</foreach>
</trim>
@ -34,7 +42,7 @@
</trim>
WHERE 1=1
<foreach collection="list" item="item" open="AND ( " separator=" OR " index="index" close=")">
(qx_user_id = #{item.qxUserId} )
(login_name = #{item.qxMobile} )
</foreach>
</update>

Loading…
Cancel
Save