From 1a2b07f01ba4616fd9e894dddf474b56d020158c Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期一, 07 四月 2025 15:18:51 +0800
Subject: [PATCH] 整理版本

---
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/global/GlParse.java |   81 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 81 insertions(+), 0 deletions(-)

diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/global/GlParse.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/global/GlParse.java
new file mode 100644
index 0000000..26a707f
--- /dev/null
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/global/GlParse.java
@@ -0,0 +1,81 @@
+package com.dy.common.mw.protocol.p206V1.parse.global;
+
+import com.dy.common.mw.protocol.p206V1.upVos.DataAlarmVo;
+import com.dy.common.mw.protocol.p206V1.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;
+
+public class GlParse {
+
+    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] ;
+        avo.batteryVolt = (byte)((b & 0x2) >> 1) ;
+        avo.meter = (byte)((b & 0x20) >> 5) ;
+
+        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] ;
+        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 icNoStr = "" + ByteUtilUnsigned.bytes2Short_LE(bs, index) ;
+        String icNoBCD = "" + ByteUtil.BCD2Long_LE(bs, index + 2, index + 7) ;
+        while(icNoStr.length() < 5){
+            icNoStr = "0" + icNoStr ;
+        }
+        return icNoBCD + icNoStr ;
+    }
+
+
+
+    public static String parseTp(byte[] bs, short index){
+        String dt = "" ;
+        try{
+            dt = dt + ByteUtil.BCD2String_BE(bs, index, index) ;//绉�
+            index++ ;
+            dt = ByteUtil.BCD2String_BE(bs, index, index) + ":" + dt ;//鍒�
+            index++ ;
+            dt = ByteUtil.BCD2String_BE(bs, index, index) + ":" + dt ;//鏃�
+            index++ ;
+            dt = ByteUtil.BCD2String_BE(bs, index, index) + " " + dt ;//鏃�
+            index++ ;
+            //bs[index] = (byte)(bs[index] & 0x10);
+            dt = ByteUtil.BCD2String_BE(bs, index, index) + "-" + dt ;//鏈�
+            index++ ;
+            dt = "20" + ByteUtil.BCD2String_BE(bs, index, index) + "-" + dt ;//骞�
+        }catch (Exception e){
+            log.error("瑙f瀽鎺у埗鍣ㄦ椂閽熸椂寮傚父锛�" + e.getMessage(), e);
+        }
+        return dt ;
+    }
+}

--
Gitblit v1.8.0