From 01b5c9adfcc7b94469812edba7c2b1182a3a4c25 Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Wed, 03 Nov 2021 15:27:10 +0800
Subject: [PATCH] screen-api            修改获取AQI大小写

---
 screen-api/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java |   26 +++++++++++++++++++++-----
 1 files changed, 21 insertions(+), 5 deletions(-)

diff --git a/screen-api/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java
index 930eb58..944e560 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java
@@ -17,11 +17,13 @@
 import com.moral.api.service.SysAreaService;
 import com.moral.constant.Constants;
 import com.moral.constant.RedisConstants;
+import com.moral.pojo.AQI;
 import com.moral.util.AQIUtils;
 import com.moral.util.AmendUtils;
 import com.moral.util.DateUtils;
 
 import com.moral.util.MathUtils;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
@@ -121,9 +123,9 @@
         if (value == null)
             value = queryCityAqiByRegionCodeFromDB(regionCode);
         //������AQI������������������
-        if (value == null || value.get("aqi") == null)
+        if (value == null || value.get("AQI") == null)
             return null;
-        Integer aqi = Integer.parseInt(value.get("aqi").toString());
+        Integer aqi = Integer.parseInt(value.get("AQI").toString());
         String category = AQIUtils.classOfPollutionByAqi(aqi);
         value.put("category", category);
         return value;
@@ -171,7 +173,7 @@
                 continue;
             }
             Map<String, Object> allDataMap = JSON.parseObject(allDataJson, Map.class);
-            Object aqiData = allDataMap.get("aqi");
+            Object aqiData = allDataMap.get("AQI");
             if (aqiData == null)
                 result.put(key, "");
             else
@@ -194,7 +196,10 @@
         //���������������
         Map<String, Object> sixParamAvg = calculate6ParamAvg(cityAqis);
         //������������aqi������������������
-        Map<String, Object> result = AQIUtils.hourlyAqi_pollutant(sixParamAvg);
+        Map<String, Object> result = new HashMap<>();
+        AQI aqi = AQIUtils.hourlyAQI(sixParamAvg);
+        result.put("aqi",aqi.getAQIValue());
+        result.put("pollutant",aqi.getPrimaryPollutantNames());
         //���������������������
         CityAqi lastCityAqi = cityAqis.get(cityAqis.size() - 1);
         String time = DateUtils.dateToDateString(lastCityAqi.getTime(), "HH:mm");
@@ -352,6 +357,10 @@
         sortByField(ranks, "aqi");
         //���������������
         Map<String, Object> dayMap = rankByField(ranks, cityCode, "aqi", cityCodes.size());
+        if (ObjectUtils.isEmpty(dayMap)) {
+            dayMap.put("rank", null);
+            dayMap.put("size", null);
+        }
         dayMap.put("aqi", dayMap.remove("value"));
         result.put("day", dayMap);
 
@@ -360,15 +369,22 @@
         sortByField(ranks, "compositeIndexMonth");
         //���������������
         Map<String, Object> monthMap = rankByField(ranks, cityCode, "compositeIndexMonth", cityCodes.size());
+        if (ObjectUtils.isEmpty(monthMap)) {
+            monthMap.put("rank", null);
+            monthMap.put("size", null);
+        }
         monthMap.put("compositeIndex", monthMap.remove("value"));
         result.put("month", monthMap);
-
 
         //������������������������������
         sortByField(ranks, "compositeIndexYear");
         //���������������
         sortByField(ranks, "compositeIndexYear");
         Map<String, Object> yearMap = rankByField(ranks, cityCode, "compositeIndexYear", cityCodes.size());
+        if (ObjectUtils.isEmpty(yearMap)) {
+            yearMap.put("rank", null);
+            yearMap.put("size", null);
+        }
         yearMap.put("compositeIndex", yearMap.remove("value"));
         result.put("year", yearMap);
 

--
Gitblit v1.8.0