| | |
| | | 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<>(); |
| | |
| | | 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,存放当前政府站点的六参和臭氧八小时滑动平均值数据 |
| | |
| | | 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()); |
| | |
| | | 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); |
| | |
| | | }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; |
| | |
| | | case 22:hour_23.putAll(avgMap); |
| | | break; |
| | | case 23:hour_24.putAll(avgMap); |
| | | break; |
| | | case 24:hour_AVG.putAll(avgMap); |
| | | break; |
| | | default: |
| | | break; |
| | |
| | | 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); |