From c4d56f4a2c7687739f3bf0f43bcc1f35c9bbeb8b Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期三, 14 五月 2025 15:18:44 +0800
Subject: [PATCH] 1、表阀一体协议解析同步新版本;2、默认设备是表阀一体(0x02)
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java | 16 ++++++++++++++--
1 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
index 960178c..80e7d3f 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
@@ -61,6 +61,14 @@
public static void parseAlarmAndState(byte[] bs, int index, AlarmVo vo){
byte b = bs[index] ;
vo.statePump = (byte)(b & 0x1) ;
+
+ //涓庢祴鎺т竴浣撻榾鍏煎
+ if(vo.statePump == 0){
+ vo.statePump = (byte)1;
+ }else{
+ vo.statePump = (byte)0;
+ }
+
vo.alarmWaterRemain = (byte)((b >> 1) & 1) ;
vo.alarm0WaterRemain = (byte)((b >> 2) & 1) ;
vo.alarmExceedYear = (byte)((b >> 3) & 1) ;
@@ -287,6 +295,10 @@
index += 2 ;
GlParse.parseAlarmAndState(bs, index, cdData) ;//鍥涗釜瀛楄妭
+
+ index += 4 ;
+ cdData.price = ByteUtil.BCD2Int_LE(bs, index, index + 1)/100.0 ;
+
}
/**
* 鍒嗘瀽鍔熻兘93銆丄3鏁版嵁
@@ -334,7 +346,7 @@
cdData.eleTotalAmount = ByteUtil.BCD2Long_LE(bs, index, index + 4)/100.0D ;
index += 5 ;
- cdData.moneyRemain = ByteUtil.BCD2Long_LE(bs, index, index + 4)/100.0D ;
+ cdData.moneyRemain = ByteUtil.BCD2Long_LE(bs, index, index + 4)/10000.0D ;
index += 5 ;
cdData.waterRemain = ByteUtil.BCD2Long_LE(bs, index, index + 4)/100.0D ;
@@ -346,7 +358,7 @@
cdData.thisWater = ByteUtil.BCD2Long_LE(bs, index, index + 3)/100.0D ;
index += 4 ;
- cdData.thisMoney = ByteUtil.BCD2Long_LE(bs, index, index + 3)/100.0D ;
+ cdData.thisMoney = ByteUtil.BCD2Long_LE(bs, index, index + 3)/10000.0D ;
index += 4 ;
cdData.thisDuration = ByteUtil.BCD2Int_LE(bs, index, index + 1) ;
--
Gitblit v1.8.0