From 5aa12141546fa0ad3ed1da5cf688e29ecbef58b9 Mon Sep 17 00:00:00 2001 From: liyawei Date: Mon, 1 Aug 2022 16:53:23 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=BA=93-=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E8=AF=A6=E6=83=85-=E5=8F=82=E6=95=B0=E6=94=B6=E9=9B=86?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1-=E5=89=8D=E7=AB=AF=E6=8E=A5=E6=94=B6?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E7=BB=93=E6=9E=84=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...lsStatisticsCollectManifestController.java | 2 +- .../service/IParamsManifestEOService.java | 2 +- .../impl/ParamsManifestEOServiceImpl.java | 108 +++++++++--------- 3 files changed, 56 insertions(+), 56 deletions(-) diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/controller/ProjectDetailsStatisticsCollectManifestController.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/controller/ProjectDetailsStatisticsCollectManifestController.java index 6ba8d18ae..7b2d2a1c9 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/controller/ProjectDetailsStatisticsCollectManifestController.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/controller/ProjectDetailsStatisticsCollectManifestController.java @@ -44,7 +44,7 @@ public class ProjectDetailsStatisticsCollectManifestController { @GetMapping(value = "/getProjectDetailsStatisticsCollectManifestData") public Result getProjectDetailsStatisticsCollectManifestData(@RequestParam(name="paramsManifestId",required=true) String paramsManifestId, @RequestParam(name="cut",required=true) String cut) { - List> data = paramsManifestEOService.getStatisticsForProjectDetails(paramsManifestId, cut); + Map data = paramsManifestEOService.getStatisticsForProjectDetails(paramsManifestId, cut); return Result.OK(data); } } diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/IParamsManifestEOService.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/IParamsManifestEOService.java index 905f65650..ea5d647c5 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/IParamsManifestEOService.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/IParamsManifestEOService.java @@ -86,5 +86,5 @@ public interface IParamsManifestEOService extends IService { List> labelListForProjectDetails(String projectId); - List> getStatisticsForProjectDetails(String paramsManifestId, String cut); + Map getStatisticsForProjectDetails(String paramsManifestId, String cut); } diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java index 99df45140..85a5f5ed7 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java @@ -15,7 +15,6 @@ import com.jero.modules.cert.collect.entity.ParamsConfigEO; import com.jero.modules.cert.collect.entity.ParamsManifestEO; import com.jero.modules.cert.collect.enums.CollectManifestChangeFlagEnum; import com.jero.modules.cert.collect.enums.CollectManifestStateEnum; -import com.jero.modules.cert.collect.enums.CollectManifestStatisticsStateEnum; import com.jero.modules.cert.collect.enums.ManifestStateEnum; import com.jero.modules.cert.collect.mapper.ParamsCollectManifestEOMapper; import com.jero.modules.cert.collect.mapper.ParamsConfigEOMapper; @@ -637,10 +636,17 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl> getStatisticsForProjectDetails(String paramsManifestId, String cut) { + public Map getStatisticsForProjectDetails(String paramsManifestId, String cut) { // 查询所有责任领域 List dutyTerritoryDictList = sysDictMapper.queryDictItemsByCode("duty_territory"); + Map result = new LinkedHashMap<>(); + List dutyTerritoryNameList = new LinkedList<>(); + List> notStartList = new LinkedList<>(); + List> collectingList = new LinkedList<>(); + List> submitList = new LinkedList<>(); + List> syncReportList = new LinkedList<>(); + // 统计清单参数 ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO(); paramsCollectManifestEO.setParamsManifestId(paramsManifestId); @@ -648,68 +654,62 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl 0) { - List> result = new LinkedList<>(); - dutyTerritoryDictList.forEach(item->{ - // 计算数量 - double notStartNumber = listAll.stream().filter(e -> (CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.get("state")) - || CollectManifestStateEnum.SDT_BACK.getValue().equals(e.get("state")) - || CollectManifestStateEnum.CHANGE.getValue().equals(e.get("state"))) && item.getValue().equals(e.get("duty_territory"))) - .count(); // 未开始的参数项 数量 + dutyTerritoryDictList.forEach(item->{ - double collectingNumber = listAll.stream().filter(e -> (CollectManifestStateEnum.WAIT_SDT.getValue().equals(e.get("state")) - || CollectManifestStateEnum.WAIT_FILL.getValue().equals(e.get("state")) - || CollectManifestStateEnum.DRE_BACK.getValue().equals(e.get("state")) - || CollectManifestStateEnum.CERT_BACK.getValue().equals(e.get("state"))) && item.getValue().equals(e.get("duty_territory"))) - .count(); // 收集中的参数项 数量 + if (CutEnum.EN.getValue().equals(cut)) { + dutyTerritoryNameList.add(item.getTextEn()); - double submitNumber = listAll.stream().filter(e -> CollectManifestStateEnum.SUBMIT.getValue().equals(e.get("state")) && item.getValue().equals(e.get("duty_territory"))) - .count(); // 已提交的参数项 数量 + } else { + dutyTerritoryNameList.add(item.getText()); - double syncReportNumber = listAll.stream().filter(e -> CollectManifestStateEnum.SYNC_REPORT.getValue().equals(e.get("state")) && item.getValue().equals(e.get("duty_territory"))) - .count(); // 已同步上报库的参数项 数量 + } - // 计算百分比 - String notStartPercent = getRatio(notStartNumber, total); // 未开始的参数项 百分比 - String collectingPercent = getRatio(collectingNumber, total); // 收集中的参数项 百分比 - String submitPercent = getRatio(submitNumber, total); // 已提交的参数项 百分比 - String syncReportPercent = getRatio(syncReportNumber, total); // 已同步上报库的参数项 百分比 + // 计算数量 + double notStartNumber = listAll.stream().filter(e -> (CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.get("state")) + || CollectManifestStateEnum.SDT_BACK.getValue().equals(e.get("state")) + || CollectManifestStateEnum.CHANGE.getValue().equals(e.get("state"))) && item.getValue().equals(e.get("duty_territory"))) + .count(); // 未开始的参数项 数量 + double collectingNumber = listAll.stream().filter(e -> (CollectManifestStateEnum.WAIT_SDT.getValue().equals(e.get("state")) + || CollectManifestStateEnum.WAIT_FILL.getValue().equals(e.get("state")) + || CollectManifestStateEnum.DRE_BACK.getValue().equals(e.get("state")) + || CollectManifestStateEnum.CERT_BACK.getValue().equals(e.get("state"))) && item.getValue().equals(e.get("duty_territory"))) + .count(); // 收集中的参数项 数量 - Map map = new HashMap<>(); - // 组装数据 返回前端 - List> data = new LinkedList<>(); - getData(data, cut, CollectManifestStatisticsStateEnum.NOT_START, notStartNumber, notStartPercent); - getData(data, cut, CollectManifestStatisticsStateEnum.COLLECTING, collectingNumber, collectingPercent); - getData(data, cut, CollectManifestStatisticsStateEnum.SUBMIT, submitNumber, submitPercent); - getData(data, cut, CollectManifestStatisticsStateEnum.SYNC_REPORT, syncReportNumber, syncReportPercent); + double submitNumber = listAll.stream().filter(e -> CollectManifestStateEnum.SUBMIT.getValue().equals(e.get("state")) && item.getValue().equals(e.get("duty_territory"))) + .count(); // 已提交的参数项 数量 - if (CutEnum.EN.getValue().equals(cut)) { - map.put(item.getTextEn(), data); - } else { - map.put(item.getText(), data); - } + double syncReportNumber = listAll.stream().filter(e -> CollectManifestStateEnum.SYNC_REPORT.getValue().equals(e.get("state")) && item.getValue().equals(e.get("duty_territory"))) + .count(); // 已同步上报库的参数项 数量 - result.add(map); - }); - return result; - } + // 计算百分比 + String notStartPercent = getRatio(notStartNumber, total); // 未开始的参数项 百分比 + String collectingPercent = getRatio(collectingNumber, total); // 收集中的参数项 百分比 + String submitPercent = getRatio(submitNumber, total); // 已提交的参数项 百分比 + String syncReportPercent = getRatio(syncReportNumber, total); // 已同步上报库的参数项 百分比 - return null; + // 组装数据 返回前端 + getData(notStartList, notStartNumber, notStartPercent); + getData(collectingList, collectingNumber, collectingPercent); + getData(submitList, submitNumber, submitPercent); + getData(syncReportList, syncReportNumber, syncReportPercent); + + }); + + result.put("dutyTerritory", dutyTerritoryNameList); + result.put("notStart", notStartList); + result.put("collecting", collectingList); + result.put("submit", submitList); + result.put("syncReport", syncReportList); + + return result; } - private void getData(List> data, String cut, CollectManifestStatisticsStateEnum statisticsStateEnum, double quantity, String percentage) { - - Map notStartMap = new HashMap<>(); - if (CutEnum.EN.getValue().equals(cut)) { - notStartMap.put("name", statisticsStateEnum.getEnName()); - } else { - notStartMap.put("name", statisticsStateEnum.getName()); - } - notStartMap.put("type", statisticsStateEnum.getValue()); - notStartMap.put("quantity", quantity); - notStartMap.put("percentage", percentage); - data.add(notStartMap); + private void getData(List> data, double quantity, String percentage) { + Map map = new HashMap<>(); + map.put("quantity", quantity); + map.put("percentage", percentage); + data.add(map); } /** @@ -720,7 +720,7 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl