From 0eaefd62a7caa039a4f16e27be279eac5e84da5c Mon Sep 17 00:00:00 2001
From: cjl <276999030@qq.com>
Date: Mon, 16 Oct 2023 08:50:48 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/cjl' into qa

---
 screen-job/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java  |    4 ++++
 screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java            |    8 ++++----
 screen-manage/src/main/java/com/moral/api/kafka/consumer/DeviceConsumer.java             |   21 ++++++++-------------
 screen-manage/src/main/java/com/moral/api/service/impl/DeviceAdjustValueServiceImpl.java |    2 +-
 4 files changed, 17 insertions(+), 18 deletions(-)

diff --git a/screen-job/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java b/screen-job/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java
index f8f56b9..6f1f9a9 100644
--- a/screen-job/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java
+++ b/screen-job/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java
@@ -195,11 +195,15 @@
 
     // ������������������
     private void judgeDeviceState(String mac,Map<String, Object> dataMap){
+        List<String> sensorList = Arrays.asList("a34004","a34002","a21026","a21004","a21005","a05024","a99054");
         Device device = (Device) redisTemplate.opsForHash().get(RedisConstants.DEVICE_INFO, mac);
         List<Sensor> sensors = device.getVersion().getSensors();
         Expression expression;
         int state = 1;
         for (Sensor sensor : sensors) {
+            if(!sensorList.contains(sensor.getCode())){
+                continue;
+            }
             //������������������
             String alarmLevel = sensor.getAlarmLevel();
             if (StringUtils.isEmpty(alarmLevel)) {
diff --git a/screen-manage/src/main/java/com/moral/api/kafka/consumer/DeviceConsumer.java b/screen-manage/src/main/java/com/moral/api/kafka/consumer/DeviceConsumer.java
index d455e70..528ac65 100644
--- a/screen-manage/src/main/java/com/moral/api/kafka/consumer/DeviceConsumer.java
+++ b/screen-manage/src/main/java/com/moral/api/kafka/consumer/DeviceConsumer.java
@@ -145,33 +145,28 @@
     public void listenSecond(ConsumerRecord<String, String> record, Acknowledgment ack) {
         String msg = record.value();
         try {
-
+            ack.acknowledge();
             Map<String, Object> data = JSON.parseObject(msg, Map.class);
             Object mac = data.get("mac");
             Object time = data.get("DataTime");
             if (ObjectUtils.isEmpty(time) || ObjectUtils.isEmpty(mac)) {
                 log.warn("some properties is null, param{}", msg);
-                ack.acknowledge();
                 return;
-            }
-            List<String> listDictDevice = Arrays.asList(deviceList.split(","));
-            if(!listDictDevice.contains(mac.toString())){
-                ack.acknowledge();
             }
             //������������
             data.remove("time");
             data.remove("entryTime");
-
+            data.put("DataTime", time);
+            List<String> listDictDevice = Arrays.asList(deviceList.split(","));
+            if(listDictDevice.contains(mac.toString())){
+                //���������������������������
+                data.put("mac", mac);
+                deviceService.judgeDeviceState(data);
+            }
             //������������
             //data = deviceService.adjustDeviceData(data,"0");
             //������redis
-            data.put("DataTime", time);
             //redisTemplate.opsForHash().put(RedisConstants.DATA_SECOND, mac, data);
-            //���������������������������
-            data.put("mac", mac);
-            ack.acknowledge();
-            deviceService.judgeDeviceState(data);
-
         }catch (CommitFailedException e){
             log.error("param{}" + msg);
         } catch (Exception e) {
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/DeviceAdjustValueServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/DeviceAdjustValueServiceImpl.java
index f287939..1e3f9d4 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/DeviceAdjustValueServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/DeviceAdjustValueServiceImpl.java
@@ -293,7 +293,7 @@
                     map.put("cel",1);
                 }
             }else {
-                if (code.equals("a99054")){
+                if (code.equals("a99054")&& !value.contains("+")){
                     String[] split = value.split("\\*");
                     map.put("cel",Double.parseDouble(split[1]));
                 }else {
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
index f707242..0fdd0b8 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
@@ -484,7 +484,6 @@
     }
 
     @Override
-    @Transactional
     public void judgeDeviceState(Map<String, Object> deviceData) {
         String mac = deviceData.remove("mac").toString();
         Device device = (Device) redisTemplate.opsForHash().get(RedisConstants.DEVICE_INFO, mac);
@@ -520,9 +519,10 @@
             }
         }
         //������������������
-        UpdateWrapper<Device> updateWrapper = new UpdateWrapper<>();
-        updateWrapper.eq("id", device.getId()).set("state", String.valueOf(state));
-        deviceMapper.update(null, updateWrapper);
+        Device device1 = new Device();
+        device1.setId(device.getId());
+        device1.setState(String.valueOf(state));
+        deviceMapper.updateById(device1);
     }
 
     @Override

--
Gitblit v1.8.0