From f8b2e59a82702a790c383a8ecd90c708c76e2488 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期四, 05 六月 2025 17:51:59 +0800
Subject: [PATCH] 增量开发MQTT协议、功能模块,上下行命令(消息)等

---
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/comResult/CommandResultDeal.java |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 insertions(+), 0 deletions(-)

diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/comResult/CommandResultDeal.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/comResult/CommandResultDeal.java
index 2973292..658e68e 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/comResult/CommandResultDeal.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/comResult/CommandResultDeal.java
@@ -3,6 +3,7 @@
 import com.dy.common.contant.Constant;
 import com.dy.common.mw.protocol.Command;
 import com.dy.common.mw.protocol.Data;
+import com.dy.common.mw.protocol4Mqtt.MqttSubMsg;
 import com.dy.rtuMw.server.ServerProperties;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -33,6 +34,10 @@
         this.restTemplate = restTemplate ;
     }
 
+    /**
+     * RTU璁惧鏁版嵁
+     * @param data
+     */
     public void deal(Data data) {
         if (data.rtuResultSendWebUrl != null
                 && !data.rtuResultSendWebUrl.trim().equals("")
@@ -58,4 +63,34 @@
             log.error("涓ラ噸閿欒锛屽湪com.dy.aceMw.web.comResult.CommandResultDeal閲岋紝澶勭悊鐨勬槸RTU鍛戒护缁撴灉Node锛屼絾鏁版嵁涓璻tuResultSendWebUrl涓虹┖");
         }
     }
+
+    /**
+     * Mqtt娑堟伅鏁版嵁
+     * @param subMsg
+     */
+    public void deal(MqttSubMsg subMsg) {
+        if (subMsg.mqttResultSendWebUrl != null
+                && !subMsg.mqttResultSendWebUrl.trim().equals("")
+                && !subMsg.mqttResultSendWebUrl.trim().equals(Command.ignoreRtuResultSendWebUrl)) {
+            String url = UriComponentsBuilder.fromUriString(subMsg.mqttResultSendWebUrl)
+                    .build()
+                    .toUriString();
+            restTemplate.getMessageConverters().set(1,new StringHttpMessageConverter(StandardCharsets.UTF_8));
+            HttpHeaders headers = new HttpHeaders();
+            headers.setContentType(MediaType.parseMediaType("application/json;charset=UTF-8"));
+            headers.set(Constant.UserTokenKeyInHeader, ServerProperties.orgTag);
+            HttpEntity<?> httpEntity = new HttpEntity<>(subMsg, headers);
+            ResponseEntity<WebResponseVo> response = null;
+            try {
+                // 閫氳繃Post鏂瑰紡璋冪敤鎺ュ彛
+                response = restTemplate.exchange(url, HttpMethod.POST, httpEntity, WebResponseVo.class);
+            } catch (Exception e) {
+                log.error("鍛戒护缁撴灉鍥炶皟鍙戠敓寮傚父", e);
+                e.printStackTrace();
+            }
+            //assert response != null;
+        } else {
+            log.error("涓ラ噸閿欒锛屽湪com.dy.aceMw.web.comResult.CommandResultDeal閲岋紝澶勭悊鐨勬槸RTU鍛戒护缁撴灉Node锛屼絾鏁版嵁涓璻tuResultSendWebUrl涓虹┖");
+        }
+    }
 }

--
Gitblit v1.8.0