From e7821f087f3d1d39c945fb9772ca97f6ef24de95 Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期五, 19 七月 2024 11:41:47 +0800
Subject: [PATCH] 作物相关接口、作物灌溉制度相关接口、轮灌组相关接口、灌溉单元相关接口修改完善失败响应信息并配置相应枚举类
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/global/GlParse.java | 45 +++++++++++++++++++++++++++++++++++----------
1 files changed, 35 insertions(+), 10 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/global/GlParse.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/global/GlParse.java
index 0f0b19e..028f991 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/global/GlParse.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/global/GlParse.java
@@ -3,6 +3,7 @@
import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataAlarmVo;
import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataStateVo;
import com.dy.common.util.ByteUtil;
+import com.dy.common.util.ByteUtilUnsigned;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -11,28 +12,52 @@
private static final Logger log = LogManager.getLogger(GlParse.class);
public static DataAlarmVo parseAlarm(byte[] bs, short index){
+ /*
+ 11011111 (DF) + 11111001 (F9)
+ 鎶ヨ:
+ 钃勭數姹犵數鍘嬶細鎶ヨ
+ 婕忔崯锛氭姤璀�
+ 浠〃锛氭姤璀�
+ 闃�闂細鎶ヨ
+ */
DataAlarmVo avo = new DataAlarmVo() ;
byte b = bs[index] ;
- index++ ;
- avo.batteryVolt = (byte)(b & 0x2 >> 1) ;
- avo.meter = (byte)(b & 0x20 >> 5) ;
+ avo.batteryVolt = (byte)((b & 0x2) >> 1) ;
+ avo.meter = (byte)((b & 0x20) >> 5) ;
- b = bs[index] ;
- avo.loss = (byte)(b & 0x2 >> 1) ;
- avo.valve = (byte)(b & 0x4 >> 2) ;
+ b = bs[index + 1] ;
+ avo.loss = (byte)((b & 0x2) >> 1) ;
+ avo.valve = (byte)((b & 0x4) >> 2) ;
return avo ;
}
public static DataStateVo parseState(byte[] bs, short index){
DataStateVo avo = new DataStateVo() ;
byte b = bs[index] ;
- index++ ;
- avo.icCard = (byte)(b & 0x4 >> 2) ;
- avo.working = (byte)(b & 0x10 >> 4) ;
- avo.powerType = (byte)(b & 0x40 >> 6) ;
+ avo.icCard = (byte)((b & 0x4) >> 2) ;
+ avo.valveState = (byte)((b & 0x10) >> 4) ;
+ avo.powerType = (byte)((b & 0x40) >> 6) ;
return avo ;
}
+ /**
+ * 鍒嗘瀽IC鍗$紪鍙�
+ * @param bs 涓婅瀛楄妭鏁扮粍
+ * @param index 鍚浣�
+ * @return 鎺у埗鍣ㄥ湴鍧�
+ * @throws Exception 寮傚父
+ */
+ public static String parseIcCardNo(byte[] bs, int index)throws Exception{
+ String rtuAddrStr = "" + ByteUtilUnsigned.bytes2Short_LE(bs, index) ;
+ String rtuAddrBCD = "" + ByteUtil.BCD2Long_LE(bs, index + 2, index + 7) ;
+ while(rtuAddrStr.length() < 5){
+ rtuAddrStr = "0" + rtuAddrStr ;
+ }
+ return rtuAddrBCD + rtuAddrStr ;
+ }
+
+
+
public static String parseTp(byte[] bs, short index){
String dt = "" ;
try{
--
Gitblit v1.8.0