From 3cda5b8c0618bcf4d81c0792e25563f77fa71d24 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Fri, 10 Sep 2021 15:08:44 +0800
Subject: [PATCH] 国控站aqi数据接入

---
 screen-job/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java |   46 ++++++++++++++++++++++++++++------------------
 1 files changed, 28 insertions(+), 18 deletions(-)

diff --git a/screen-job/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java b/screen-job/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java
index a02a67f..caa9bb8 100644
--- a/screen-job/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java
+++ b/screen-job/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java
@@ -2,12 +2,10 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.moral.api.entity.HistoryHourly;
 import com.moral.api.entity.Sensor;
 import com.moral.api.mapper.HistoryHourlyMapper;
 import com.moral.api.mapper.HistoryMinutelyMapper;
 import com.moral.api.service.HistoryHourlyService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.moral.api.service.SensorService;
 import com.moral.constant.Constants;
 import com.moral.constant.RedisConstants;
@@ -39,7 +37,7 @@
  * @since 2021-06-28
  */
 @Service
-public class HistoryHourlyServiceImpl extends ServiceImpl<HistoryHourlyMapper, HistoryHourly> implements HistoryHourlyService {
+public class HistoryHourlyServiceImpl implements HistoryHourlyService {
 
     @Autowired
     private HistoryHourlyMapper historyHourlyMapper;
@@ -54,6 +52,11 @@
     private SensorService sensorService;
 
     @Override
+    public void createTable(String timeUnits) {
+        historyHourlyMapper.createTable(timeUnits);
+    }
+
+    @Override
     public void insertHistoryHourly() {
         //������������������yyyy-MM-dd HH:mm
         String format = DateUtils.yyyy_MM_dd_HH_EN;
@@ -64,16 +67,18 @@
         Date now = new Date();
         String time = DateUtils.dateToDateString(now, format) + ":00:00";
 
-        QueryWrapper<HistoryHourly> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("time", time);
         //������������������������������������������������macs������������������������������
-        Integer count = historyHourlyMapper.selectCount(queryWrapper);
-        if (macs.size() > count) {
+        Map<String, Object> prop = new HashMap<>();
+        prop.put("timeUnits", DateUtils.getDateStringOfMon(0, DateUtils.yyyyMM_EN));
+        prop.put("time", time);
+        Integer count = historyHourlyMapper.selectCountByTime(prop);
+
+        if (macs.size() <= count) {
+            return;
+        } else {
             macs.removeIf(mac -> {
-                queryWrapper.clear();
-                queryWrapper.eq("time", time);
-                queryWrapper.eq("mac", mac);
-                Integer num = historyHourlyMapper.selectCount(queryWrapper);
+                prop.put("mac", mac);
+                Integer num = historyHourlyMapper.selectCountByTime(prop);
                 return num != 0;
             });
         }
@@ -110,14 +115,14 @@
                 .collect(Collectors.groupingBy(o -> (String) o.get("mac")));
 
         //���������������������������
-        List<HistoryHourly> insertData = new ArrayList<>();
+        List<Map<String, Object>> insertData = new ArrayList<>();
 
         data.forEach((key, value) -> {
-            HistoryHourly historyHourly = new HistoryHourly();
-            historyHourly.setMac(key);
-            historyHourly.setTime(end);
-            Map<String, Object> jsonMap = new HashMap<>();
+            Map<String, Object> historyHourly = new HashMap<>();
+            historyHourly.put("mac", key);
+            historyHourly.put("time", end);
 
+            Map<String, Object> jsonMap = new HashMap<>();
             Map<String, Object> map = new HashMap<>();
             map.put("data", value);
             map.put("type", "hour");
@@ -205,12 +210,17 @@
                     }
                 }
             });
-            historyHourly.setValue(JSONObject.toJSONString(jsonMap));
-            historyHourly.setVersion((Integer) value.get(0).get("version"));
+            historyHourly.put("version", value.get(0).get("version"));
+            historyHourly.put("value", JSONObject.toJSONString(jsonMap));
             insertData.add(historyHourly);
         });
 
         //���������������
         historyHourlyMapper.insertHistoryHourly(insertData);
     }
+
+    @Override
+    public List<Map<String, Object>> selectDailyData(Map<String, Object> params) {
+        return historyHourlyMapper.selectDailyData(params);
+    }
 }

--
Gitblit v1.8.0