From 87249bd6c05be0a6f70a212b5ccb390792a67bf2 Mon Sep 17 00:00:00 2001 From: lizijie <lzjiiie@163.com> Date: Fri, 08 Oct 2021 09:39:55 +0800 Subject: [PATCH] 增加日均值,站点均值 --- screen-api/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java | 36 +++++++++++++++++++++++++++++------- 1 files changed, 29 insertions(+), 7 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java index 3f33fea..56d7241 100644 --- a/screen-api/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java +++ b/screen-api/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java @@ -105,6 +105,7 @@ govMonitorPoint_avg.setId(0); govMonitorPoint_avg.setName(""); govMonitorPoint_avg.setGuid(""); + govMonitorPointList.add(govMonitorPoint_avg); List<Map<String,Object>> data = new ArrayList<>(); Map<String,Object> hour_1 = new HashMap<>(); Map<String,Object> hour_2 = new HashMap<>(); @@ -157,6 +158,7 @@ List<Double> NO2List_daliy = new ArrayList<>(); List<Double> COList_daliy = new ArrayList<>(); List<Double> O3_1hList_daliy = new ArrayList<>(); + List<Double> O3_8hList_daliy = new ArrayList<>(); Map<Integer,Double> O3_1hMap = new HashMap<>(); for (int i=0; i<24; i++){ //������������Map��������������������������������������������������������������������������� @@ -247,6 +249,7 @@ for (Integer key:O3_1hMap.keySet()){ if (i-8<key && key<i+1){ O3_8hList.add(O3_1hMap.get(key)); + O3_8hList_daliy.add(O3_1hMap.get(key)); } } O3_8h = (double)Math.round(O3_8hList.stream().mapToDouble(aDouble ->aDouble).summaryStatistics().getAverage()); @@ -305,6 +308,20 @@ break; } } + Double PM2_5Avg_daliy = (double)Math.round(PM2_5List_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()); + Double PM10Avg_daliy = (double)Math.round(PM10List_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()); + Double SO2Avg_daliy = (double)Math.round(SO2List_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()); + Double NO2Avg_daliy = (double)Math.round(NO2List_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()); + Double COAvg_daliy = new BigDecimal(COList_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()).setScale(1, BigDecimal.ROUND_HALF_UP).doubleValue(); + Double O3_1hAvg_daliy = (double)Math.round(O3_1hList_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()); + Double O3_8hAvg_daliy = (double)Math.round(O3_8hList_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()); + hour_AVG.put("a34004_"+govMonitorPointId,PM2_5Avg_daliy); + hour_AVG.put("a34002_"+govMonitorPointId,PM10Avg_daliy); + hour_AVG.put("a21026_"+govMonitorPointId,SO2Avg_daliy); + hour_AVG.put("a21004_"+govMonitorPointId,NO2Avg_daliy); + hour_AVG.put("a21005_"+govMonitorPointId,COAvg_daliy); + hour_AVG.put("a05024_"+govMonitorPointId,O3_1hAvg_daliy); + hour_AVG.put("O3_8h_"+govMonitorPointId,O3_8hAvg_daliy); } Map<Integer,Map<String,Object>> replaceDataMap = new HashMap<>(); replaceDataMap.put(0,hour_1); @@ -438,16 +455,18 @@ }else { avgMap.put("aqi",""); } - if (!ObjectUtils.isEmpty(AQIResultMap.get("aqi"))){ - String pollutant = AQIResultMap.get("pollutant").toString(); - pollutant = pollutant.replace("[",""); - pollutant = pollutant.replace("]",""); - avgMap.put("pollutant",pollutant); + if (!ObjectUtils.isEmpty(AQIResultMap.get("pollutant"))){ + if (Integer.parseInt(AQIResultMap.get("aqi").toString())>50){ + String pollutant = AQIResultMap.get("pollutant").toString(); + pollutant = pollutant.replace("[",""); + pollutant = pollutant.replace("]",""); + avgMap.put("pollutant",pollutant); + }else { + avgMap.put("pollutant",""); + } }else { avgMap.put("aqi",""); } - //System.out.println("==============="+pollutant); - //avgMap.put("pullutant",StringUtils.join(aqi_pollutantMap.get("pollutant").toArray(), separator)); switch (i){ case 0:hour_1.putAll(avgMap); break; @@ -496,6 +515,8 @@ case 22:hour_23.putAll(avgMap); break; case 23:hour_24.putAll(avgMap); + break; + case 24:hour_AVG.putAll(avgMap); break; default: break; @@ -550,6 +571,7 @@ data.add(hour_22); data.add(hour_23); data.add(hour_24); + data.add(hour_AVG); resultMap.put("title",date+"������"); resultMap.put("data",data); resultMap.put("govMonitorPoint",govMonitorPointList); -- Gitblit v1.8.0