From 21c080aa9da3acd53e014e8f917b50a48cb791cb Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期三, 11 六月 2025 13:44:04 +0800 Subject: [PATCH] 进行ApiFox发送内部命令测试,MQTTX发布气象数据测试,修改测试中发现的bug,修改不完善的地方。 --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol4Mqtt/pSdV1/ProtocolParserSdV1.java | 30 +++++++++++++++++++----------- 1 files changed, 19 insertions(+), 11 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol4Mqtt/pSdV1/ProtocolParserSdV1.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol4Mqtt/pSdV1/ProtocolParserSdV1.java index df625b1..527e6bc 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol4Mqtt/pSdV1/ProtocolParserSdV1.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol4Mqtt/pSdV1/ProtocolParserSdV1.java @@ -12,6 +12,7 @@ import com.dy.common.mw.protocol4Mqtt.pSdV1.downVos.InjectStartVo; import com.dy.common.mw.protocol4Mqtt.pSdV1.downVos.StirStartVo; import com.dy.common.mw.protocol4Mqtt.pSdV1.upVos.*; +import com.dy.common.mw.protocol4Mqtt.status.DevRunSt; import org.eclipse.paho.client.mqttv3.MqttMessage; /** @@ -21,38 +22,45 @@ */ public class ProtocolParserSdV1 { public MqttSubMsgSdV1 parseSubMsg(MqttTopic subTopic, MqttMessage mqttMsg, MqttCallback callback) throws Exception { - String msg = new String(mqttMsg.getPayload(), "UTF-8"); - if(JSON.isValid(msg)){ - throw new Exception("鎺ユ敹鍒癕QTT娑堟伅锛屽崗璁�" + subTopic.protocol + "锛岃澶嘔D" + subTopic.devId + "锛屼富棰�" + subTopic.topic + "娑堟伅鏍煎紡闈瀓son鏁版嵁(" + msg + ")") ; + String strTxt = new String(mqttMsg.getPayload(), "UTF-8"); + if(!JSON.isValid(strTxt)){ + throw new Exception("鎺ユ敹鍒癕QTT娑堟伅锛屽崗璁�" + subTopic.protocol + "锛岃澶嘔D" + subTopic.devId + "锛屼富棰�" + subTopic.longName() + "娑堟伅鏍煎紡闈瀓son鏁版嵁(" + strTxt + ")") ; } - MqttSubMsgSdV1 ms = new MqttSubMsgSdV1(subTopic, msg); + MqttSubMsgSdV1 msg = new MqttSubMsgSdV1(subTopic, strTxt); Vo4Up vo ; + DevRunSt stVo ; switch (subTopic.topic) { case ProtocolConstantSdV1.SubTopicWeather -> { - vo = JSON.parseObject(msg, WeatherVo.class); + vo = JSON.parseObject(strTxt, WeatherVo.class); break; } case ProtocolConstantSdV1.SubTopicSoil -> { - vo = JSON.parseObject(msg, SoilVo.class); + vo = JSON.parseObject(strTxt, SoilVo.class); break; } case ProtocolConstantSdV1.SubTopicManure -> { - vo = JSON.parseObject(msg, ManureVo.class); + vo = JSON.parseObject(strTxt, ManureVo.class); break; } case ProtocolConstantSdV1.SubTopicState -> { //姝ゅ鏈畬鎴愶紝搴旇浜х敓涓�浜涢�氫俊鐨刬nfo锛屼緵涓嬮潰callback.notify(objs)閫氱煡鍑哄幓 - vo = JSON.parseObject(msg, StateVo.class); + vo = JSON.parseObject(strTxt, StateVo.class); + stVo = new DevRunSt() ; + stVo.id = msg.deviceId ; + //stVo.stirRunning = true ; //鎼呮媽杩愯 true鏄� false鍚� + //stVo.injectRunning = true ; //娉ㄨ偉杩愯 true鏄� false鍚� + //stVo.irrRunning = true ; //鐏屾簤杩愯 true鏄� false鍚� + //stVo.alarm = true ; //鎶ヨ true鏄� false鍚� break; } default -> { throw new Exception("鎺ユ敹鍒癕QTT娑堟伅锛屽崗璁�" + subTopic.protocol + "锛岃澶嘔D" + subTopic.devId + "锛屼富棰�" + subTopic.topic + "娑堟伅瑙f瀽閫昏緫鏈疄鐜�"); } } - ms.vo4Up = vo ; - callback.callback(ms); + msg.vo4Up = vo ; + callback.callback(msg); callback.notify(null);//姝ゅ鏈畬鎴� - return ms; + return msg; } public MqttPubMsgSdV1 createPubMsg(String orgTag, Command com) throws Exception { -- Gitblit v1.8.0