From 1fe74a6aba7cc02e6a5c00a227ff815639f825de Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期一, 15 七月 2024 20:52:45 +0800 Subject: [PATCH] 1、实现RTU模拟器,并实现心跳上报、开阀上报、关阀上报; 2、基于RTU模拟器的开关阀上报,设计通信中间件上行数据处理任务的bug; --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java | 14 +++++--------- 1 files changed, 5 insertions(+), 9 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java index 18cc778..6157183 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java @@ -1,10 +1,10 @@ package com.dy.common.mw.protocol.p206V202404.parse; import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONObject; import com.dy.common.mw.protocol.*; import com.dy.common.mw.protocol.p206V202404.CodeV202404; import com.dy.common.mw.protocol.p206V202404.ParseParamsForDownV202404; -import com.dy.common.mw.protocol.p206V202404.downVos.ComCd22Vo; import com.dy.common.mw.protocol.p206V202404.downVos.ComCd26Vo; import com.dy.common.mw.protocol.p206V202404.parse.global.GlCreate; import com.dy.common.util.ByteUtil; @@ -21,6 +21,7 @@ MidResultToRtu midRs = new MidResultToRtu() ; midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О + midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ; midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃 midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉 midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�; @@ -47,28 +48,23 @@ public byte[] doParse(ParseParamsForDownV202404 para) throws Exception { byte[] bytes = GlCreate.createStart2Cd(para.rtuAddr, para.commandCode); if(para.param != null){ - String json = (String)para.param; + JSONObject obj = (JSONObject)para.param; + String json = obj.toJSONString(); ComCd26Vo cvo = JSON.parseObject(json, ComCd26Vo.class) ; if(cvo == null){ throw new Exception("json杞珻omCd22Vo涓簄ull") ; - } - if(cvo.ipChannel != 1 && cvo.ipChannel !=2){ - throw new Exception("IP閫氶亾鍙峰彧鑳芥槸1鎴�2") ; } if(cvo.maxAmountYear < 0 || cvo.maxAmountYear > 99999999){ throw new Exception("璁惧缁堢骞寸敤姘撮噺蹇呴』鏄�0~99999999鑼冨洿鍐呯殑鏁存暟") ; } - byte[] bs = new byte[15] ; + byte[] bs = new byte[14] ; int index = 0 ; bs[index] = (byte)(Integer.parseInt(cvo.controllerType, 16)); index ++ ; bs[index] = cvo.projectNo.byteValue() ; - - index ++ ; - bs[index] = cvo.ipChannel.byteValue() ; index ++ ; String strTemp = "" + cvo.maxAmountYear ; -- Gitblit v1.8.0