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