From dd7a033e4591b8004ecd570ef4ff2ef925df65bc Mon Sep 17 00:00:00 2001
From: jiazx0107@163.com <jiazx0107@163.com>
Date: 星期五, 19 一月 2024 23:28:50 +0800
Subject: [PATCH] 增加油罐仓的解析

---
 src/main/java/com/fzzy/gateway/hx2023/service/OnReceiveMqttService.java |   39 +++++++++++++++++++++------------------
 1 files changed, 21 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/fzzy/gateway/hx2023/service/OnReceiveMqttService.java b/src/main/java/com/fzzy/gateway/hx2023/service/OnReceiveMqttService.java
index e782bd8..4c706c0 100644
--- a/src/main/java/com/fzzy/gateway/hx2023/service/OnReceiveMqttService.java
+++ b/src/main/java/com/fzzy/gateway/hx2023/service/OnReceiveMqttService.java
@@ -1,15 +1,14 @@
 package com.fzzy.gateway.hx2023.service;
 
 import com.alibaba.fastjson2.JSONObject;
+import com.fzzy.api.data.GatewayDeviceProtocol;
 import com.fzzy.gateway.GatewayUtils;
 import com.fzzy.gateway.api.GatewayRemoteManager;
+import com.fzzy.gateway.data.BaseReqData;
 import com.fzzy.gateway.data.BaseResp;
 import com.fzzy.gateway.entity.GatewayDevice;
 import com.fzzy.gateway.hx2023.ScConstant;
 import com.fzzy.gateway.hx2023.data.CloudSendData;
-import com.fzzy.gateway.hx2023.data.SyncReqData;
-import com.fzzy.mqtt.MqttProviderConfig;
-import com.fzzy.mqtt.MqttPublishService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 
@@ -24,8 +23,6 @@
 
     @Resource
     private GatewayRemoteManager gatewayRemoteManager;
-    @Resource
-    private MqttPublishService publishService;
 
 
     /**
@@ -33,21 +30,24 @@
      *
      * @param message
      */
-    public void onReceiveMessage(String message) {
+    public void onReceiveMessage(String topic, String message) {
+
+        // 杩欓噷鍙互澶勭悊鎺ユ敹鐨勬暟鎹�
+        log.info("----------------------------鏀跺埌璁㈤槄鍐呭---------------------------");
+        log.info("-----TOPIC-----{}", topic);
+        log.info("-----Message-----{}", message);
 
         try {
             CloudSendData cloudSendData = JSONObject.parseObject(message, CloudSendData.class);
 
-
             String functionId = cloudSendData.getFunctionId();
-
             //绮儏閲囬泦
             if (ScConstant.FUNCTION_getTAndRHInfo.equals(functionId)) {
                 getTAndRHInfo(cloudSendData);
             }
 
         } catch (Exception e) {
-
+            log.error("--------鎵ц寮傚父-----{}", e);
         }
 
     }
@@ -58,25 +58,28 @@
 
         GatewayDevice device = GatewayUtils.getCacheByDeviceId(deviceId);
 
-        SyncReqData syncReqData = new SyncReqData();
+        BaseReqData syncReqData = new BaseReqData();
         syncReqData.setDeviceId(deviceId);
+        syncReqData.setProductId(device.getProductId());
+        syncReqData.setDeviceName(device.getDeviceName());
         syncReqData.setMessageId(cloudSendData.getMessageId());
         syncReqData.setMessageType(cloudSendData.getMessageType());
         syncReqData.setFunctionId(cloudSendData.getFunctionId());
         syncReqData.setAutoReplay(true);
         syncReqData.setDevice(device);
 
-        BaseResp resp = gatewayRemoteManager.getSyncGrainService(device.getSyncProtocol()).syncGrain2(syncReqData);
+        BaseResp resp;
+        if (GatewayDeviceProtocol.DEVICE_TEST.getCode().equals(device.getSyncProtocol())) {
+            resp = gatewayRemoteManager.getGatewayTestService(device.getPushProtocol()).testGrain(syncReqData);
+        } else {
+            syncReqData.setAutoReplay(false);
+            resp = gatewayRemoteManager.getSyncGrainService(device.getSyncProtocol()).syncGrain(syncReqData);
+        }
 
         //鑷姩鎺ㄩ��
         if (200 == resp.getCode() && syncReqData.isAutoReplay()) {
-            String topic = ScConstant.TOPIC_REPORT;
-
-            topic = topic.replace("${productId}", device.getProductId()).replace("${deviceId}", device.getDeviceId());
-
-            publishService.publishMsg(topic, resp.getData());
-
-            log.info("=======绮儏鎺ㄩ��==========={}", resp.getData());
+            syncReqData.setData(resp.getData());
+            gatewayRemoteManager.getDeviceReportService(device.getPushProtocol()).reportGrainData(syncReqData);
         }
     }
 }

--
Gitblit v1.9.3