zhubaomin
2024-10-12 22acc39ce207d951c6dcadbcb1cc68e27059d595
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlCreate.java
@@ -32,7 +32,7 @@
        index++ ;
        GlCreate.createRtuAddr(rtuAddr, bsHead, index);
        index += 7 ;
        index += 8 ;
        ByteUtil.hex2Bytes(commandCode, bsHead, index) ;
        return bsHead ;
@@ -93,25 +93,44 @@
        Integer icCardNo2Int = Integer.parseInt(icCardNo2) ;
        ByteUtilUnsigned.short2Bytes_LE(bs, icCardNo2Int.shortValue(), index);
    }
    public static void createDt(byte[] bs, int index) throws Exception {
        ByteUtil.string2BCD_BE(bs, DateTime.ss(), index) ; ;
        ByteUtil.string2BCD_BE(bs, DateTime.mm(), index + 1) ;
        ByteUtil.string2BCD_BE(bs, DateTime.HH(), index + 2) ;
        ByteUtil.string2BCD_BE(bs, DateTime.dd(), index + 3) ;
        ByteUtil.string2BCD_BE(bs, DateTime.MM(), index + 4) ;
        ByteUtil.string2BCD_BE(bs, DateTime.yy(), index + 5) ;
    }
    public static void createPw(byte[] bs, int index) throws Exception {
        bs[index] = 0;
        bs[index + 1] = 0;
    }
    public static void createTp(byte[] bs, int index) throws Exception {
        bs[index] = Byte.parseByte(DateTime.ss()) ;
        bs[index + 1] = Byte.parseByte(DateTime.mm()) ;
        bs[index + 2] = Byte.parseByte(DateTime.HH()) ;
        bs[index + 3] = Byte.parseByte(DateTime.dd()) ;
        bs[index + 4] = (byte)(DateTime.week_Int().byteValue() << 5 | Byte.parseByte(DateTime.MM())) ;
        bs[index + 5] = Byte.parseByte(DateTime.yy()) ;
        ByteUtil.string2BCD_BE(bs, DateTime.ss(), index) ; ;
        ByteUtil.string2BCD_BE(bs, DateTime.mm(), index + 1) ;
        ByteUtil.string2BCD_BE(bs, DateTime.HH(), index + 2) ;
        ByteUtil.string2BCD_BE(bs, DateTime.dd(), index + 3) ;
        byte week = DateTime.week_Int().byteValue() ;
        byte month = Byte.parseByte(DateTime.MM()) ;
        if(month < 10){
            bs[index + 4] = (byte)((week << 5) | month) ;
        }else{
            bs[index + 4] = (byte)((week << 5) | 0x10 | (month - 10)) ;
        }
        ByteUtil.string2BCD_BE(bs, DateTime.yy(), index + 5) ;
    }
    public static void createS2D(byte[] bs, int index) throws Exception {
        bs[index] = Byte.parseByte(DateTime.ss()) ;
        bs[index + 1] = Byte.parseByte(DateTime.mm()) ;
        bs[index + 2] = Byte.parseByte(DateTime.HH()) ;
        bs[index + 3] = Byte.parseByte(DateTime.dd()) ;
        ByteUtil.string2BCD_BE(bs, DateTime.ss(), index) ; ;
        ByteUtil.string2BCD_BE(bs, DateTime.mm(), index + 1) ;
        ByteUtil.string2BCD_BE(bs, DateTime.HH(), index + 2) ;
        ByteUtil.string2BCD_BE(bs, DateTime.dd(), index + 3) ;
    }
    public static void createLen(byte[] bsNoTail) throws Exception {
@@ -126,4 +145,11 @@
        bytes[1] = ProtocolConstantV206V1_0_0.P_Tail_Byte ;
        return bytes ;
    }
    public static void main(String[] args)throws Exception{
        byte[] bs = new byte[6] ;
        createTp(bs, 0) ;
        String hex = ByteUtil.bytes2Hex(bs,true, 0, 6) ;
        System.out.println(hex);
    }
}