From 709914b92b814f9f93ec38ed78054a8c831cc0fd Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Tue, 06 Jul 2021 14:00:02 +0800
Subject: [PATCH] redis常量update

---
 screen-manage/src/main/java/com/moral/api/kafka/consumer/KafkaConsumer.java |   68 +++++++++++++++++++++-------------
 1 files changed, 42 insertions(+), 26 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/kafka/consumer/KafkaConsumer.java b/screen-manage/src/main/java/com/moral/api/kafka/consumer/KafkaConsumer.java
index cc98e98..4d1f804 100644
--- a/screen-manage/src/main/java/com/moral/api/kafka/consumer/KafkaConsumer.java
+++ b/screen-manage/src/main/java/com/moral/api/kafka/consumer/KafkaConsumer.java
@@ -10,18 +10,17 @@
 import org.springframework.util.StringUtils;
 
 import java.util.HashMap;
+import java.util.Iterator;
 import java.util.Map;
-import java.util.stream.Collectors;
 
 import com.alibaba.fastjson.JSON;
 import com.moral.api.service.DeviceService;
 import com.moral.api.service.HistoryHourlyService;
 import com.moral.api.service.HistoryMinutelyService;
-import com.moral.api.util.AdjustDataUtils;
 import com.moral.constant.KafkaConstants;
 import com.moral.constant.RedisConstants;
 
-//@Component
+@Component
 @Slf4j
 public class KafkaConsumer {
 
@@ -35,13 +34,10 @@
     private DeviceService deviceService;
 
     @Autowired
-    private AdjustDataUtils adjustDataUtils;
-
-    @Autowired
     private RedisTemplate redisTemplate;
 
     //������������
-    @KafkaListener(topics = KafkaConstants.TOPIC_MINUTE, groupId = KafkaConstants.GROUP_ID_INSERT, containerFactory = "kafkaListenerContainerFactory")
+    @KafkaListener(topics = KafkaConstants.TOPIC_MINUTE, groupId = KafkaConstants.GROUP_MINUTE, containerFactory = "kafkaListenerContainerFactory")
     public void listenMinute(ConsumerRecord<String, String> record, Acknowledgment ack) {
         String msg = record.value();
         try {
@@ -56,22 +52,32 @@
             }
 
             //������������
-            data = data.entrySet().stream()
-                    .filter(map -> {
-                        String key = map.getKey();
-                        return !(key.contains("Min") || key.contains("Max") || key.contains("Cou"));
-                    }).collect(Collectors.toMap(m -> m.getKey().replaceAll("-Avg", ""), Map.Entry::getValue));
             data.remove("time");
+            data.remove("entryTime");
+            Iterator<Map.Entry<String, Object>> iterator = data.entrySet().iterator();
+            Map<String, Object> newMap = new HashMap<>();
+            Map.Entry<String, Object> next;
+            while (iterator.hasNext()) {
+                next = iterator.next();
+                String key = next.getKey();
+                Object value = next.getValue();
+                if (key.contains("-Avg")) {
+                    newMap.put(key.replaceAll("-Avg", ""), value);
+                } else {
+                    newMap.put(key, value);
+                }
+                iterator.remove();
+            }
             //���������������
-            historyMinutelyService.insertHistoryMinutely(data);
+            historyMinutelyService.insertHistoryMinutely(newMap);
             ack.acknowledge();
         } catch (Exception e) {
-            //log.error("param{}" + msg);
+            log.error("param{}" + msg);
         }
     }
 
     //������������
-    @KafkaListener(topics = KafkaConstants.TOPIC_HOUR, groupId = KafkaConstants.GROUP_ID_INSERT, containerFactory = "kafkaListenerContainerFactory")
+    @KafkaListener(topics = KafkaConstants.TOPIC_HOUR, groupId = KafkaConstants.GROUP_HOUR, containerFactory = "kafkaListenerContainerFactory")
     public void listenHour(ConsumerRecord<String, String> record, Acknowledgment ack) {
         String msg = record.value();
         try {
@@ -86,22 +92,32 @@
             }
 
             //������������
-            data = data.entrySet().stream()
-                    .filter(map -> {
-                        String key = map.getKey();
-                        return !(key.contains("Min") || key.contains("Max") || key.contains("Cou"));
-                    }).collect(Collectors.toMap(m -> m.getKey().replaceAll("-Avg", ""), Map.Entry::getValue));
             data.remove("time");
+            data.remove("entryTime");
+            Iterator<Map.Entry<String, Object>> iterator = data.entrySet().iterator();
+            Map<String, Object> newMap = new HashMap<>();
+            Map.Entry<String, Object> next;
+            while (iterator.hasNext()) {
+                next = iterator.next();
+                String key = next.getKey();
+                Object value = next.getValue();
+                if (key.contains("-Avg")) {
+                    newMap.put(key.replaceAll("-Avg", ""), value);
+                } else {
+                    newMap.put(key, value);
+                }
+                iterator.remove();
+            }
             //���������������
-            historyHourlyService.insertHistoryHourly(data);
+            historyHourlyService.insertHistoryHourly(newMap);
             ack.acknowledge();
         } catch (Exception e) {
-            //log.error("param{}" + msg);
+            log.error("param{}" + msg);
         }
     }
 
     //������������������������������������������������������
-    @KafkaListener(topics = KafkaConstants.TOPIC_SECOND, groupId = KafkaConstants.GROUP_ID_STATE, containerFactory = "kafkaListenerContainerFactory")
+    @KafkaListener(topics = KafkaConstants.TOPIC_SECOND, groupId = KafkaConstants.GROUP_STATE, containerFactory = "kafkaListenerContainerFactory")
     public void listenSecond(ConsumerRecord<String, String> record, Acknowledgment ack) {
         String msg = record.value();
         try {
@@ -115,14 +131,14 @@
                 return;
             }
             //������������
-            data = adjustDataUtils.adjust(data);
+            data = deviceService.adjustDeviceData(data);
             //������redis
-            redisTemplate.opsForValue().set(RedisConstants.DEVICE_DATA + "_" + mac, data);
+            redisTemplate.opsForHash().put(RedisConstants.DEVICE_DATA, mac, data);
             //���������������������������
             deviceService.judgeDeviceState(data);
             ack.acknowledge();
         } catch (Exception e) {
-            //log.error("param{}" + msg);
+            log.error("param{}" + msg);
         }
     }
 }

--
Gitblit v1.8.0