diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/AutoNoMyResultDTO.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/AutoNoMyResultDTO.java new file mode 100644 index 0000000000..234142eb80 --- /dev/null +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/AutoNoMyResultDTO.java @@ -0,0 +1,30 @@ +package com.epmet.dto.extract.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2020/9/18 5:22 下午 + */ +@Data +public class AutoNoMyResultDTO implements Serializable { + + private static final long serialVersionUID = 5812052000386418907L; + + /** + * 动作code + */ + private String actionCode; + + /** + * 网格ID + */ + private String gridId; + + /** + * 项目ID + */ + private String projectId; +} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectLogDailyDao.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectLogDailyDao.java index b142c32e60..293163e1d9 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectLogDailyDao.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectLogDailyDao.java @@ -19,6 +19,7 @@ package com.epmet.dao.evaluationindex.extract; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.extract.result.OrgStatisticsResultDTO; +import com.epmet.dto.extract.result.AutoNoMyResultDTO; import com.epmet.dto.extract.result.NotReturnProjectResultDTO; import com.epmet.dto.extract.result.ProjectEvaluateResultDTO; import com.epmet.entity.evaluationindex.extract.FactOriginProjectLogDailyEntity; @@ -63,6 +64,15 @@ public interface FactOriginProjectLogDailyDao extends BaseDao selectProjectEvaluate(@Param("customerId") String customerId,@Param("monthId") String monthId); + /** + * @Description 网格项目自治率查询 + * @param customerId + * @param monthId + * @author zxc + * @date 2020/9/18 5:25 下午 + */ + List selectProjectAutoNoMy(@Param("customerId") String customerId,@Param("monthId") String monthId); + /** * 根据日期删除数据 * @author zhaoqifeng diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactOriginProjectLogDailyService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactOriginProjectLogDailyService.java index a10f53783a..ba3b6f5239 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactOriginProjectLogDailyService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactOriginProjectLogDailyService.java @@ -21,6 +21,7 @@ import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.dto.extract.FactOriginProjectLogDailyDTO; import com.epmet.dto.extract.result.OrgStatisticsResultDTO; +import com.epmet.dto.extract.result.AutoNoMyResultDTO; import com.epmet.dto.extract.result.NotReturnProjectResultDTO; import com.epmet.dto.extract.result.ProjectEvaluateResultDTO; import com.epmet.entity.evaluationindex.extract.FactOriginProjectLogDailyEntity; @@ -132,4 +133,13 @@ public interface FactOriginProjectLogDailyService extends BaseService selectProjectAutoNoMy(String customerId,String monthId); } \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/CalGridIndexServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/CalGridIndexServiceImpl.java index 9fca7973bd..b1f8d8833a 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/CalGridIndexServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/CalGridIndexServiceImpl.java @@ -9,10 +9,7 @@ import com.epmet.constant.ProjectEvaluateConstant; import com.epmet.dao.evaluationindex.indexcoll.FactIndexGovrnAblityGridMonthlyDao; import com.epmet.dto.extract.form.GovernAbilityGridMonthlyFormDTO; import com.epmet.dto.extract.form.GridIssueCountResultDTO; -import com.epmet.dto.extract.result.GridProjectClosedTotalResultDTO; -import com.epmet.dto.extract.result.GridProjectCountResultDTO; -import com.epmet.dto.extract.result.NotReturnProjectResultDTO; -import com.epmet.dto.extract.result.ProjectEvaluateResultDTO; +import com.epmet.dto.extract.result.*; import com.epmet.service.evaluationindex.extract.CalGridIndexService; import com.epmet.service.evaluationindex.extract.FactOriginProjectLogDailyService; import com.epmet.service.evaluationindex.extract.FactOriginProjectMainDailyService; @@ -89,7 +86,28 @@ public class CalGridIndexServiceImpl implements CalGridIndexService { }); } //网格自治项目数 从议题创建到项目关闭,包括处理人,自始至终没有出过议题所属网格 - + List projectAutoNoMyList = projectLogService.selectProjectAutoNoMy(customerId, monthId); + Map autoMap = new HashMap<>(16); + if (!CollectionUtils.isEmpty(projectAutoNoMyList)){ + Map> groupByGrid = projectAutoNoMyList.stream().collect(Collectors.groupingBy(AutoNoMyResultDTO::getGridId)); + groupByGrid.forEach((gridId,projectList) -> { + Map> groupByProject = projectList.stream().collect(Collectors.groupingBy(AutoNoMyResultDTO::getProjectId)); + AtomicReference autoSelf = new AtomicReference<>(true); + AtomicReference count = new AtomicReference<>(NumConstant.ZERO); + groupByProject.forEach((projectId,projects) -> { + String disposeGrid = projects.get(NumConstant.ZERO).getGridId(); + projects.forEach(p -> { + if (!disposeGrid.equals(p.getGridId())){ + autoSelf.set(false); + } + }); + if (autoSelf.get() == true){ + count.getAndSet(count.get() + NumConstant.ONE); + } + }); + autoMap.put(gridId,count.get()); + }); + } //网格办结项目数 List gridProjectClosedTotalList = projectMainService.selectGridClosedProject(customerId, monthId, ExtractConstant.CLOSED); //网格吹哨部门准确率 【没被退回的项目数/项目总数 】 @@ -180,6 +198,13 @@ public class CalGridIndexServiceImpl implements CalGridIndexService { }); } // 6. 网格自治项目数 + if (null != autoMap){ + autoMap.forEach((k,v) -> { + if (r.getGridId().equals(k)){ + r.setSelfSolveProjectCount(v); + } + }); + } }); return true; } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactOriginProjectLogDailyServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactOriginProjectLogDailyServiceImpl.java index 1cb438c8c3..e23ab2e626 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactOriginProjectLogDailyServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactOriginProjectLogDailyServiceImpl.java @@ -26,6 +26,7 @@ import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.dao.evaluationindex.extract.FactOriginProjectLogDailyDao; import com.epmet.dto.extract.FactOriginProjectLogDailyDTO; import com.epmet.dto.extract.result.OrgStatisticsResultDTO; +import com.epmet.dto.extract.result.AutoNoMyResultDTO; import com.epmet.dto.extract.result.NotReturnProjectResultDTO; import com.epmet.dto.extract.result.ProjectEvaluateResultDTO; import com.epmet.entity.evaluationindex.extract.FactOriginProjectLogDailyEntity; @@ -134,4 +135,16 @@ public class FactOriginProjectLogDailyServiceImpl extends BaseServiceImpl selectProjectAutoNoMy(String customerId, String monthId) { + return baseDao.selectProjectAutoNoMy(customerId, monthId); + } + } \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectLogDailyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectLogDailyDao.xml index aa2d887e13..cfb6ff85b7 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectLogDailyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectLogDailyDao.xml @@ -60,4 +60,29 @@ AND (ACTION_CODE = 'bad' OR ACTION_CODE = 'good' OR ACTION_CODE = 'perfect') + + + \ No newline at end of file