From 2ddcf4c6258cad23c020c91ae897562f7a24db03 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Wed, 22 Dec 2021 10:39:42 +0800
Subject: [PATCH] city_weather数据存入bug修复

---
 screen-job/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java |   41 ++++++++++++++++++++++-------------------
 1 files changed, 22 insertions(+), 19 deletions(-)

diff --git a/screen-job/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java b/screen-job/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java
index 1af915e..a9c5c9b 100644
--- a/screen-job/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java
+++ b/screen-job/src/main/java/com/moral/api/service/impl/CityAqiServiceImpl.java
@@ -53,18 +53,16 @@
     @Autowired
     private RedisTemplate redisTemplate;
 
-    @Autowired
-
-
     @Override
     public void insertCityAqi() {
+        //pubtime=08���������������07-08������������������������������������������������07���
         Date now = new Date();
         Date time = DateUtils.dataToTimeStampTime(now, DateUtils.yyyy_MM_dd_HH_EN);
-        String format = DateUtils.yyyy_MM_dd_EN;
-
+        //������������������time������������������
+        Date dataTime = DateUtils.addHours(time, -1);
         Date start = null;
-        if (DateUtils.getHour(time) == 0 || DateUtils.getHour(time) >= 8) {
-            start = DateUtils.addHours(time, -7);
+        if (DateUtils.getHour(time) >= 8) {
+            start = DateUtils.addHours(time, -8);
         }
 
         //������������������
@@ -87,8 +85,14 @@
 
             Map<String, Object> map = (Map<String, Object>) data.get("data");
             Map<String, Object> aqi = (Map<String, Object>) map.get("aqi");
-            aqi.put("PM2_5", aqi.remove("pm25C"));
             aqi.remove("pm25");
+            aqi.remove("pm10");
+            aqi.remove("so2");
+            aqi.remove("no2");
+            aqi.remove("co");
+            aqi.remove("o3");
+
+            aqi.put("PM2_5", aqi.remove("pm25C"));
             aqi.put("PM10", aqi.remove("pm10C"));
             aqi.put("SO2", aqi.remove("so2C"));
             aqi.put("NO2", aqi.remove("no2C"));
@@ -104,7 +108,7 @@
                         .ge("time", DateUtils.dateToDateString(start));
                 List<Map<String, Object>> cityAqis = cityAqiMapper.selectMaps(queryWrapper);
                 Map<String, Object> params = new HashMap<>();
-                params.put("time", DateUtils.dateToDateString(time, DateUtils.yyyy_MM_dd_HH_mm_ss_S_EN));
+                params.put("time", DateUtils.dateToDateString(dataTime, DateUtils.yyyy_MM_dd_HH_mm_ss_S_EN));
                 params.put("value", JSONObject.toJSONString(aqi));
                 cityAqis.add(params);
                 if (cityAqis.size() >= 6) {
@@ -128,20 +132,19 @@
 
             //���������������������
             Map<String, Object> sixParamMap = new HashMap<>();
-            sixParamMap.put("a34002", aqi.get("PM10"));
-            sixParamMap.put("a34004", aqi.get("PM2_5"));
-            sixParamMap.put("a21004", aqi.get("NO2"));
-            sixParamMap.put("a21005", aqi.get("CO"));
-            sixParamMap.put("a05024", aqi.get("O3"));
-            sixParamMap.put("a21026", aqi.get("SO2"));
+            sixParamMap.put(Constants.SENSOR_CODE_PM25, aqi.get("PM2_5"));
+            sixParamMap.put(Constants.SENSOR_CODE_PM10, aqi.get("PM10"));
+            sixParamMap.put(Constants.SENSOR_CODE_SO2, aqi.get("SO2"));
+            sixParamMap.put(Constants.SENSOR_CODE_NO2, aqi.get("NO2"));
+            sixParamMap.put(Constants.SENSOR_CODE_CO, aqi.get("CO"));
+            sixParamMap.put(Constants.SENSOR_CODE_O3, aqi.get("O3"));
             AQI aqiAndPollutant = AQIUtils.hourlyAQI(sixParamMap);
-            if (!ObjectUtils.isEmpty(aqiAndPollutant.getPrimaryPollutantNames())) {
-                aqi.put("primaryPollutant", aqiAndPollutant.getPrimaryPollutantNames());
-            }
+            aqi.put("primaryPollutant", aqiAndPollutant.getPrimaryPollutantNames());
+
 
             CityAqi cityAqi = new CityAqi();
             cityAqi.setCityCode(cityCode);
-            cityAqi.setTime(time);
+            cityAqi.setTime(dataTime);
             cityAqi.setValue(JSONObject.toJSONString(aqi));
             cityAqiMapper.insert(cityAqi);
             //������redis

--
Gitblit v1.8.0