From b3432601c340355bc4e4e51d38eb01cfc2965c75 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Sun, 13 Feb 2022 14:10:26 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A8=8B=E5=BA=8F=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/govorg/impl/GovOrgServiceImpl.java | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java index c7244b019a..4fc3cb4f81 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java @@ -617,16 +617,8 @@ public class GovOrgServiceImpl implements GovOrgService { //3.查询直属下级组织下网格在查询时间段内存在上报事件(直接立项)数的网格,一天一条 List projectList = dataStatsService.getGridDateProjectIncrList(formDTO); //4.汇总数据,一个网格一天只记录一条数据,这条数据可能是例行工作的也可能是上报事件的,也可能某一天两个数都有,但只记录一条 - Map map = new HashMap<>(); - workList.forEach(w -> { - map.put(w.getGridId() + w.getDateId(), w.getDateId()); - }); - //projectList.stream().filter(pro -> !map.containsKey(pro.getGridId() + pro.getDateId())).forEach(p -> workList.add(p)); - projectList.forEach(pro -> { - if (!map.containsKey(pro.getGridId() + pro.getDateId())) { - workList.add(pro); - } - }); + Set map = workList.stream().map(o -> o.getGridId() + o.getDateId()).collect(Collectors.toSet()); + projectList.stream().filter(pro -> !map.contains(pro.getGridId() + pro.getDateId())).forEach(p -> workList.add(p)); //5.按组织封装数据 //计算百分比使用,保留小数点后两位 NumberFormat numberFormat = NumberFormat.getInstance();