From bf8cb657cd550ce3061401bdf2842723d3c190a2 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Tue, 03 Aug 2021 14:39:21 +0800
Subject: [PATCH] 中间数据迁入正式表,kafka小时数据存入中间表,删除中间表数据

---
 screen-manage/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java |   25 +++++++++++++++++--------
 1 files changed, 17 insertions(+), 8 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java
index c0caeda..ba88b76 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java
@@ -11,6 +11,7 @@
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.Date;
 import java.util.HashMap;
@@ -34,13 +35,14 @@
     private DeviceService deviceService;
 
     @Override
+    @Transactional
     public void insertHistoryHourly(Map<String, Object> data) {
         Map<String, Object> dataAdjust = new HashMap<>(data);
         String mac = data.remove("mac").toString();
-        Date time = DateUtils.getDate((String) data.remove("DataTime"), DateUtils.yyyyMMddHHmmss_EN);
 
+        Date time = DateUtils.getDate((String) data.remove("DataTime"), DateUtils.yyyyMMddHHmmss_EN);
         Integer version = (Integer) data.remove("ver");
-        Map<String, Object> result = new HashMap<>(data);
+        Map<String, Object> result = new HashMap<>();
         result.put("mac", mac);
         result.put("time", time);
         result.put("version", version);
@@ -54,11 +56,18 @@
         dataAdjust.remove("mac");
         dataAdjust.remove("DataTime");
         dataAdjust.remove("ver");
-        HistoryHourly historyHourly = new HistoryHourly();
-        historyHourly.setMac(mac);
-        historyHourly.setTime(time);
-        historyHourly.setVersion(version);
-        historyHourly.setValue(JSONObject.toJSONString(dataAdjust));
-        historyHourlyMapper.insert(historyHourly);
+
+        int count = historyHourlyMapper.getCountByMacAndTime(mac, DateUtils.dateToDateString(time));
+
+        //���������������������������mac,���������������������������������������������������
+        if (count == 0) {
+            //������������������������������������������
+            result.put("value", JSONObject.toJSONString(dataAdjust));
+            //������
+            historyHourlyMapper.insertHistoryHourlyTransition(result);
+        } else {
+            //������
+            historyHourlyMapper.updateHistoryTransition(mac, DateUtils.dateToDateString(time));
+        }
     }
 }

--
Gitblit v1.8.0