From fa67baf45a7f92ce1705cef48538f62c80c159b9 Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期五, 05 八月 2022 16:20:26 +0800
Subject: [PATCH] 大气设备

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/amqp/processor/AirDataProcessor.java |   23 +++++++++++++++++------
 1 files changed, 17 insertions(+), 6 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/amqp/processor/AirDataProcessor.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/amqp/processor/AirDataProcessor.java
index a8dce59..d68ed88 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/amqp/processor/AirDataProcessor.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/amqp/processor/AirDataProcessor.java
@@ -2,8 +2,10 @@
 
 import com.sandu.common.util.SpringContextHolder;
 import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5AtmosphereHeartbeatReportInnerFrame;
+import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5AtmosphereNewHeartbeatReportInnerFrame;
 import com.sandu.ximon.admin.manager.iot.rrpc.dto.CommonFrame;
 import com.sandu.ximon.admin.manager.iot.rrpc.enums.A5AtmosphereReportEnum;
+import com.sandu.ximon.admin.service.AirDataNongGengService;
 import com.sandu.ximon.admin.service.AirDataService;
 import lombok.extern.slf4j.Slf4j;
 
@@ -19,7 +21,7 @@
     }
 
     public static AirDataProcessor getInstance() {
-        return AirDataProcessor.AirDataProcessorHolder.INSTANCE;
+        return AirDataProcessorHolder.INSTANCE;
     }
 
     private static class AirDataProcessorHolder {
@@ -31,13 +33,22 @@
     public void process(String productKey, String deviceName, CommonFrame frame) {
         String functionCode = frame.getPayload().substring(2, 4);
         if (A5AtmosphereReportEnum.HeartBeat_Data.getCode().equals(functionCode)) {
-            log.info("蹇冭烦鐩稿簲");
+            log.info("蹇冭烦鐩稿簲鈥斺�斿ぇ姘旀暟鎹�");
             A5AtmosphereHeartbeatReportInnerFrame heartbeatReportInnerFrame = new A5AtmosphereHeartbeatReportInnerFrame().transformFrame(frame.getPayload());
-            log.info(heartbeatReportInnerFrame.toString());
+            if(heartbeatReportInnerFrame != null){
+                log.info(heartbeatReportInnerFrame.toString());
+                SpringContextHolder.getBean(AirDataService.class).saveReportData(deviceName, heartbeatReportInnerFrame.getHeartBeatDataPackage());
+            }
+        } else if (A5AtmosphereReportEnum.HeartBeat_Data_Nong_Geng.getCode().equals(functionCode)) {
+            log.info("蹇冭烦鐩稿簲鈥斺�斿ぇ姘旀暟鎹�(鍐滆��)");
+            A5AtmosphereNewHeartbeatReportInnerFrame heartbeatReportInnerFrame = new A5AtmosphereNewHeartbeatReportInnerFrame().transformFrame(frame.getPayload());
+            if (heartbeatReportInnerFrame != null && heartbeatReportInnerFrame.isValidate()) {
+                log.info(heartbeatReportInnerFrame.toString());
+                SpringContextHolder.getBean(AirDataNongGengService.class).saveReportData(deviceName, heartbeatReportInnerFrame.getHeartBeatDataPackage());
+            }else{
+                System.out.println("鏁版嵁鏍¢獙寮傚父锛�");
+            }
 
-            SpringContextHolder.getBean(AirDataService.class).saveReportData(deviceName, heartbeatReportInnerFrame.getHeartBeatDataPackage());
-
-//            SpringContextHolder.getBean(LightService.class).saveLight(deviceName,heartbeatReportInnerFrame.getHeartBeatDataPackage());
 
         }
     }

--
Gitblit v1.9.3