From 113a18ea7368ebc5fbadc211ad3ee1feb743929d Mon Sep 17 00:00:00 2001 From: kaiyu <404897439@qq.com> Date: Fri, 29 Oct 2021 15:55:04 +0800 Subject: [PATCH] screen-api 根据AQI计算污染等级 --- screen-api/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java | 39 +++++++++++++++++++++++++++++++-------- 1 files changed, 31 insertions(+), 8 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 69e1073..80b0a02 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 @@ -282,7 +282,9 @@ } } if (i<curHour24){ - O3_8h = (double)Math.round(O3_8hList.stream().mapToDouble(aDouble ->aDouble).summaryStatistics().getAverage()); + if (O3_8hList.size()>0){ + O3_8h = (double)Math.round(O3_8hList.stream().mapToDouble(aDouble ->aDouble).summaryStatistics().getAverage()); + } } } oneGovMonitorPointOneHourData.put("O3_8h_"+govMonitorPointId,O3_8h); @@ -339,13 +341,34 @@ 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()); + Double PM2_5Avg_daliy = null; + Double PM10Avg_daliy = null; + Double SO2Avg_daliy = null; + Double NO2Avg_daliy = null; + Double COAvg_daliy = null; + Double O3_1hAvg_daliy = null; + Double O3_8hAvg_daliy = null; + if (PM2_5List_daliy.size()>0){ + PM2_5Avg_daliy = (double)Math.round(PM2_5List_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()); + } + if (PM10List_daliy.size()>0){ + PM10Avg_daliy = (double)Math.round(PM10List_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()); + } + if (SO2List_daliy.size()>0){ + SO2Avg_daliy = (double)Math.round(SO2List_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()); + } + if (NO2List_daliy.size()>0){ + NO2Avg_daliy = (double)Math.round(NO2List_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()); + } + if (COList_daliy.size()>0){ + COAvg_daliy = new BigDecimal(COList_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()).setScale(1, BigDecimal.ROUND_HALF_UP).doubleValue(); + } + if (O3_1hList_daliy.size()>0){ + O3_1hAvg_daliy = (double)Math.round(O3_1hList_daliy.stream().mapToDouble(aDouble -> aDouble).summaryStatistics().getAverage()); + } + if (O3_8hList_daliy.size()>0){ + 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); -- Gitblit v1.8.0