From fb9b202e2d421d7ee4e6879ae1232e481a3c6fa1 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期四, 25 七月 2024 16:53:22 +0800 Subject: [PATCH] 1、完善协议解析代码; 2、测试系统增加功能码为99、A0命令测试。 --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_02_Down.java | 28 ++++++++++++++++++++++++++-- 1 files changed, 26 insertions(+), 2 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_02_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_02_Down.java index a045719..445c5f7 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_02_Down.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_02_Down.java @@ -3,6 +3,7 @@ import com.dy.common.mw.protocol.*; import com.dy.common.mw.protocol.p206V1_0_0.*; import com.dy.common.mw.protocol.p206V1_0_0.parse.global.GlCreate; +import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd02Vo; import com.dy.common.util.ByteUtil; @AnnotationCodeDown(ifAny={ @@ -19,7 +20,7 @@ MidResultToRtu midRs = new MidResultToRtu() ; midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О - midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃锛堢數淇″钩鍙拌澶嘔MEI锛� + midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃 midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉 midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�; midRs.downBuffer = bs ;//涓嬭鍛戒护鏁版嵁 @@ -65,7 +66,15 @@ ByteUtil.hex2Bytes(para.commandCode, bsHead, index) ; byte[] bs = new byte[7] ; - bs[0] = (byte)0xF2 ;//鏁版嵁鍩燂細 1 涓瓧鑺傦紝F0 鐧诲綍锛� F1 閫�鍑虹櫥褰曪紝F2 鍦ㄧ嚎淇濇寔銆� + + Integer loginFlag = 0xF2 ; + if(para.param != null && para.param instanceof DataCd02Vo){ + DataCd02Vo vo = (DataCd02Vo)para.param ; + if(vo != null && vo.status != null){ + loginFlag = Integer.parseInt(vo.status, 16); + } + } + bs[0] = loginFlag.byteValue() ;//鏁版嵁鍩燂細 1 涓瓧鑺傦紝F0 鐧诲綍锛� F1 閫�鍑虹櫥褰曪紝F2 鍦ㄧ嚎淇濇寔銆� GlCreate.createTp(bs, 1); bytes = ByteUtil.bytesMerge(bsHead, bs) ; @@ -79,4 +88,19 @@ return bytes ; } + public static void main(String[] args) throws Exception{ + ParseParamsForDownV1_0_1 p = new ParseParamsForDownV1_0_1() ; + p.commandCode = "02" ; + p.rtuAddr = "9672950001"; + + Cd_02_Down obj = new Cd_02_Down() ; + byte[] bs = obj.doParse(p) ; + + String hex1 = ByteUtil.bytes2Hex(bs,true) ; + String hex2 = ByteUtil.bytes2Hex(bs,false) ; + + System.out.println(hex1); + System.out.println(hex2); + } + } -- Gitblit v1.8.0