From 7a30cb7329eb065d9a95213b327818412c2d5d0e Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期一, 03 三月 2025 14:22:22 +0800
Subject: [PATCH] 1、表阀一体机新协议解析优化; 2、取水口实体编辑更新逻辑修改,去除引起bug的代码。

---
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/global/GlCreate.java |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/global/GlCreate.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/global/GlCreate.java
index e144ec3..553c055 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/global/GlCreate.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/global/GlCreate.java
@@ -54,9 +54,10 @@
 
     public static void createLen4PUg(byte[] bytes) throws Exception {
         int len = bytes.length - 4;
-        byte[] bs = ByteUtil.int2BCD_LE(len) ;
+        byte[] bs = ByteUtil.short2Bytes_LE((short)len) ;
         if(bs != null && bs.length == 1){
-            bytes[1] = bs[0] ;
+            bytes[1] = 0 ;
+            bytes[2] = bs[0] ;
         }else if(bs != null && bs.length > 1){
             bytes[1] = bs[1] ;
             bytes[2] = bs[0] ;
@@ -92,9 +93,12 @@
     }
 
     public static byte[] createCrcTail4Ug(byte[] bsNoTail) throws Exception {
-        short crc = new CRC16().CRC(bsNoTail, 0, bsNoTail.length -1) ;
+        int crc = new CRC16().CRC16_table(bsNoTail, 0, bsNoTail.length -1) ;
+        byte[] crcBs = new byte[4] ;
+        ByteUtil.int2Bytes_BE(crcBs, crc, 0);
         byte[] bytes = new byte[ProtocolConstantV206V1.UG_lenTail] ;
-        ByteUtil.short2Bytes_BE(bytes, crc, 0);
+        bytes[0] = crcBs[2] ;
+        bytes[1] = crcBs[3] ;
         bytes[2] = ProtocolConstantV206V1.P_Tail_Byte ;
         return bytes ;
     }

--
Gitblit v1.8.0