liurunyu
2024-05-30 c929083f415ef98765afec91d5a8c88be4450f5b
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
@@ -58,7 +58,7 @@
     * @return
     */
    public static void parseAlarmAndState(byte[] bs, int index, AlarmVo vo){
        byte b = bs[index + 1] ;
        byte b = bs[index] ;
        vo.statePump = (byte)(b & 0x1) ;
        vo.alarmWaterRemain = (byte)(b >> 1 & 1) ;
        vo.alarm0WaterRemain = (byte)(b >> 2 & 1) ;
@@ -68,7 +68,7 @@
        vo.alarmWaterMeterBreak = (byte)(b >> 6 & 1) ;
        vo.alarmEleMeterFault = (byte)(b >> 7 & 1) ;
        b = bs[index] ;
        b = bs[index + 1] ;
        vo.alarm0MoneyRemain = (byte)(b & 0x1) ;
        vo.alarmInnerDoor = (byte)(b >> 1 & 1) ;
        vo.alarmOuterDoor = (byte)(b >> 2 & 1) ;
@@ -179,9 +179,9 @@
        cdData.elePrice = elePrice/100.0D;
        index += 2 ;
        GlParse.parseAlarmAndState(bs, index, cdData) ;
        GlParse.parseAlarmAndState(bs, index, cdData) ;//四个字节
        index += 2 ;
        index += 4 ;
        int aVolt = ByteUtil.BCD2Int_LE(bs, index, index + 1) ;
        cdData.aVolt = aVolt/10.0D;
@@ -279,7 +279,7 @@
        cdData.thisDuration = ByteUtil.BCD2Int_LE(bs, index, index + 1) ;
        index += 2 ;
        GlParse.parseAlarmAndState(bs, index, cdData) ;
        GlParse.parseAlarmAndState(bs, index, cdData) ;//四个字节
    }
    /**
     * 分析功能93、A3数据
@@ -312,6 +312,11 @@
        index += 8 ;
        cdData.startDt  = GlParse.parseRtuDt(bs, index) ;
        if(cdData.opResult == (byte)0x81){
            //失败了,下面就没有数据了
            return ;
        }
        index += 6 ;
        cdData.endDt  = GlParse.parseRtuDt(bs, index) ;
@@ -340,6 +345,6 @@
        cdData.thisDuration = ByteUtil.BCD2Int_LE(bs, index, index + 1) ;
        index += 2 ;
        GlParse.parseAlarmAndState(bs, index, cdData) ;
        GlParse.parseAlarmAndState(bs, index, cdData) ;//四个字节
    }
}