From 12a7b95ea5bc3dc8dc9bf8445f3aecc157f21462 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Sat, 19 Sep 2020 09:48:07 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BD=91=E6=A0=BC=E7=9B=B8=E5=85=B3=20?= =?UTF-8?q?=E6=B2=BB=E7=90=86=E8=83=BD=E5=8A=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/extract/result/AutoNoMyResultDTO.java | 30 ++++++++++++++++ .../extract/FactOriginProjectLogDailyDao.java | 10 ++++++ .../FactOriginProjectLogDailyService.java | 10 ++++++ .../extract/impl/CalGridIndexServiceImpl.java | 35 ++++++++++++++++--- .../FactOriginProjectLogDailyServiceImpl.java | 13 +++++++ .../extract/FactOriginProjectLogDailyDao.xml | 25 +++++++++++++ 6 files changed, 118 insertions(+), 5 deletions(-) create mode 100644 epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/AutoNoMyResultDTO.java 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