From 8910275656c9bf398832dc14957a03684a593e96 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期五, 30 八月 2024 15:16:58 +0800
Subject: [PATCH] 2024-08-30 朱宝民 修改配置文件bug
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_02_Down.java | 34 ++++++++++++++++++++++++++++++----
1 files changed, 30 insertions(+), 4 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 5a6cb09..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 ;//涓嬭鍛戒护鏁版嵁
@@ -56,7 +57,7 @@
bsHead[index] = ProtocolConstantV206V1_0_0.P_Head_Byte ;
index++ ;
- bsHead[index] = commonV1_0_1.createCtrl((byte)0) ;
+ bsHead[index] = commonV1_0_1.createCtrl((byte)0, (byte)0) ;
index++ ;
GlCreate.createRtuAddr(para.rtuAddr, bsHead, index);
@@ -65,16 +66,41 @@
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) ;
GlCreate.createLen(bytes);//闀垮害鏀惧瓧鑺傛暟缁勪腑
- bytes = GlCreate.createCrcTail(bytes) ;//CRC鍜屽熬鍙犲姞瀛楄妭鏁扮粍涓�
+ byte[] bsTail = GlCreate.createCrcTail(bytes) ;//CRC鍜屽熬鍙犲姞瀛楄妭鏁扮粍涓�
+
+ bytes = ByteUtil.bytesMerge(bytes, bsTail) ;
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