From c8ff96af8647474b1d03f5f374bb18eb59f65987 Mon Sep 17 00:00:00 2001
From: jiazx0107@163.com <jiazx0107@163.com>
Date: 星期日, 24 十二月 2023 12:30:09 +0800
Subject: [PATCH] 游仙协议解析-2

---
 src/main/java/com/fzzy/protocol/bhzn/analysis/AnalysisService.java |   21 ++++++++++++---------
 1 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/fzzy/protocol/bhzn/analysis/AnalysisService.java b/src/main/java/com/fzzy/protocol/bhzn/analysis/AnalysisService.java
index fb8b9ba..f44c036 100644
--- a/src/main/java/com/fzzy/protocol/bhzn/analysis/AnalysisService.java
+++ b/src/main/java/com/fzzy/protocol/bhzn/analysis/AnalysisService.java
@@ -98,21 +98,22 @@
     private void analysisGrain(IoMessage message) {
         try {
 
+            //鏍规嵁鍒嗘満SN鑾峰彇璁惧閰嶇疆淇℃伅
+            GatewayDevice gatewayDevice = GatewayUtils.getCacheByDeviceSn(message.getAddr());
+            if (null == gatewayDevice) {
+                replayGrain(message);
+                log.error("涓绘満-------->>骞冲彴锛岃В鏋愮伯鎯呭け璐ワ紝鏈幏鍙栧埌绯荤粺璁惧閰嶇疆淇℃伅锛�" + message.getAddr());
+                return;
+            }
             //鏍规嵁鍒嗘満鍦板潃鑾峰彇鍒嗘満淇℃伅
-            ApiCommonDevice commonDevice = Constant.getCommonDeviceCache(message.getAddr());
+            ApiCommonDevice commonDevice = Constant.getCommonDeviceCache(message.getIp());
             if (commonDevice == null) {
                 replayGrain(message);
                 log.error("涓绘満-------->>骞冲彴锛岃В鏋愮伯鎯呭け璐ワ紝鏈幏鍙栧埌绯荤粺绮儏涓绘満閰嶇疆锛�" + message.getAddr());
                 return;
             }
 
-            //鏍规嵁鍒嗘満SN鑾峰彇璁惧閰嶇疆淇℃伅
-            GatewayDevice gatewayDevice = GatewayUtils.getCacheByDeviceSn(commonDevice.getSn());
-            if (null == gatewayDevice) {
-                replayGrain(message);
-                log.error("涓绘満-------->>骞冲彴锛岃В鏋愮伯鎯呭け璐ワ紝鏈幏鍙栧埌绯荤粺璁惧閰嶇疆淇℃伅锛�" + message.getAddr());
-                return;
-            }
+
 
             //鑾峰彇璇锋眰淇℃伅
             BaseReqData reqData = ProtocolUtils.getSyncReq(gatewayDevice.getDepotIdSys());
@@ -189,7 +190,6 @@
     }
 
     private void analysisGrain2(IoMessage message, BaseReqData reqData, String grainStr) {
-
         GatewayDevice device = reqData.getDevice();
         // 鑾峰彇瀹屾暣鐨勭伯鎯呭寘淇℃伅
         String[] attCable = device.getCableRule().split("-");
@@ -323,7 +323,10 @@
         outPut.setAvgTemperature(NumberUtil.keepPrecision((sumT / sumNum), 1) + "");
         outPut.setMinTemperature(min + "");
         outPut.setMaxTemperature(min + "");
+        List<GrainTH> ths = new ArrayList<>();
 
+        ths.add(new GrainTH(thDto.getTempIn()!=null?thDto.getTempIn()+"":"",thDto.getHumidityIn()!=null?thDto.getHumidityIn()+"":"","1"));
+        outPut.setTemperatureAndhumidity(ths);
         grain.setOutput(JSONObject.toJSONString(outPut));
 
         GatewayDevice gatewayDeviceWeather = GatewayUtils.getCacheByDeviceTypeOne(GatewayDeviceType.TYPE_09.getCode());

--
Gitblit v1.9.3