From 73d941a21178e76d3e923afbc97f57b875b6eb97 Mon Sep 17 00:00:00 2001
From: 于紫祥_1901 <email@yuzixiang_1910>
Date: Tue, 01 Dec 2020 15:33:23 +0800
Subject: [PATCH] aqi计算
---
src/main/java/com/moral/util/AQICalculation2.java | 88 ++++++++++++++++++++++----------------------
1 files changed, 44 insertions(+), 44 deletions(-)
diff --git a/src/main/java/com/moral/util/AQICalculation2.java b/src/main/java/com/moral/util/AQICalculation2.java
index 92d435c..9797972 100644
--- a/src/main/java/com/moral/util/AQICalculation2.java
+++ b/src/main/java/com/moral/util/AQICalculation2.java
@@ -9,17 +9,23 @@
Map maxMap = new HashMap();
for (Map.Entry<String, Object> entry : map.entrySet()) {
String key = entry.getKey();
- if (entry.getValue() instanceof Double){
- Double value = Double.parseDouble(entry.getValue().toString());
- if (key!="O3-8h"){
- maxMap.put(key,value);
- }
- Double PM2_5AQI;
- Double PM10AQI;
- Double SO2AQI;
- Double NO2AQI;
- Double COAQI;
- Double O3AQI;
+ if (entry.getValue().toString().equals("")){
+ continue;
+ }
+ Double value = Double.parseDouble(entry.getValue().toString());
+
+ if (key!="O3_8h"){
+ maxMap.put(key,value);
+ }else {
+ continue;
+ }
+ Double PM2_5AQI;
+ Double PM10AQI;
+ Double SO2AQI;
+ Double NO2AQI;
+ Double COAQI;
+ Double O3AQI;
+
switch (key) {
case "PM2_5":PM2_5AQI = PM2_5AQI(value);
AQIList.add(PM2_5AQI);
@@ -30,34 +36,26 @@
case "SO2":SO2AQI = SO2AQI(value);
AQIList.add(SO2AQI);
break;
- case "e16":NO2AQI = NO2AQI(value);
+ case "NO2":NO2AQI = NO2AQI(value);
AQIList.add(NO2AQI);
break;
case "CO":COAQI = COAQI(value);
AQIList.add(COAQI);
break;
- case "O3":O3AQI = O3AQI(value);
+ case "maxO3_8h":O3AQI = O3AQI(value);
AQIList.add(O3AQI);
break;
-
default:
break;
}
- }else {
- continue;
}
- }
-
- Double AQIMAX = Collections.max(AQIList);
Map<String, Object> returnMap = new HashMap<>();
- //System.out.println("-------"+maxMap);
- Optional<Map.Entry<String, Integer>> max0 = maxMap.entrySet()
- .stream()
- .max(Map.Entry.comparingByValue());
- //System.out.println("-------"+max0.get().getKey());
-
- returnMap.put("maxSensor",max0.get().getKey());
- returnMap.put("AQI", AQIMAX);
+ Double AQIMAX = Collections.max(AQIList);
+ Optional<Map.Entry<String, Integer>> max0 = maxMap.entrySet()
+ .stream()
+ .max(Map.Entry.comparingByValue());
+ returnMap.put("maxSensor", max0.get().getKey());
+ returnMap.put("AQI", AQIMAX);
return returnMap;
}
public static Map<String, Object> dayAQI(Map<String, Object> map){
@@ -65,10 +63,14 @@
Map maxMap = new HashMap();
for (Map.Entry<String, Object> entry : map.entrySet()) {
String key = entry.getKey();
- if (entry.getValue() instanceof Double){
+ if (entry.getValue().toString().equals("")){
+ continue;
+ }
Double value = Double.parseDouble(entry.getValue().toString());
- if (key!="O3-day"){
+ if (key!="O3_day"){
maxMap.put(key,value);
+ }else {
+ continue;
}
Double PM2_5AQI;
Double PM10AQI;
@@ -86,33 +88,31 @@
case "SO2":SO2AQI = SO2DayAQI(value);
AQIList.add(SO2AQI);
break;
- case "e16":NO2AQI = NO2DayAQI(value);
+ case "NO2":NO2AQI = NO2DayAQI(value);
AQIList.add(NO2AQI);
break;
case "CO":COAQI = CODayAQI(value);
AQIList.add(COAQI);
break;
- case "O3":maxO38hAQI = O3DayAQI(value);
+ case "maxO3_8h":maxO38hAQI = O3DayAQI(value);
AQIList.add(maxO38hAQI);
break;
default:
break;
}
- }else {
- continue;
- }
}
-
- Double AQIMAX = Collections.max(AQIList);
Map<String, Object> returnMap = new HashMap<>();
- System.out.println("-------"+maxMap);
- Optional<Map.Entry<String, Integer>> max0 = maxMap.entrySet()
- .stream()
- .max(Map.Entry.comparingByValue());
- //System.out.println("-------"+max0.get().getKey());
-
- returnMap.put("maxSensor",max0.get().getKey());
- returnMap.put("AQI", AQIMAX);
+ if (AQIList.size()>0){
+ Double AQIMAX = Collections.max(AQIList);
+ Optional<Map.Entry<String, Integer>> max0 = maxMap.entrySet()
+ .stream()
+ .max(Map.Entry.comparingByValue());
+ returnMap.put("maxSensor",max0.get().getKey());
+ returnMap.put("AQI", AQIMAX);
+ }else {
+ returnMap.put("maxSensor","");
+ returnMap.put("AQI", "");
+ }
return returnMap;
}
static double PM2_5AQI(Double value) {
--
Gitblit v1.8.0