1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
package com.dy.common.mw.protocol.p206V2.upVos;
 
import com.dy.common.mw.protocol.UpDataVo;
import com.dy.common.mw.protocol.p206V2.CommonV2;
import lombok.Data;
 
/**
 * 阀开工作报(每几十秒上报一次,上报间隔可设置)
 */
@Data
public class DataCd84Vo implements UpDataVo {
 
    public Byte opType;
    public Byte cardType ;//卡类型(0:无卡;1:用户卡;2:管理员卡;3:调试卡;4:巡检卡;5:清空卡)
    public String cardAddr ;//IC卡地址(8位字符)
    public String cardNo ;//IC卡编号
    public Double remainMoney ;//剩余金额:用户余额4字节BCD码,取值范围0.00~999999.99,单位为元
    public Double totalAmount; //累计流量(水表上的累计流量):5字节BCD码,取值范围0~9999999999,单位为m3。
    public Double instantAmount; //瞬时流量:5字节BCD码,取值范围0~9999999.999,单位为m3/h。
    public String rtuDt ;//控制器时钟
 
    public DataAlarmVo alarmVo ;//报警
    public DataStateVo stateVo ;//状态
 
    public String toString(){
        StringBuilder sb = new StringBuilder() ;
        sb.append("   终端开阀工作报:\n");
        sb.append("      开阀类型:");
        sb.append(opType==null?"未知": CommonV2.openCloseValveType(opType));
        sb.append("\n");
        sb.append("      IC卡类型:");
        sb.append(cardType==null?"未知": CommonV2.icCardType(cardType)) ;
        sb.append("\n");
        sb.append("      IC卡地址:");
        sb.append(cardAddr);
        sb.append("\n");
        sb.append("      IC卡编号:");
        sb.append(cardNo);
        sb.append("\n");
        sb.append("      剩余金额(元):");
        sb.append(remainMoney==null?"":remainMoney);
        sb.append("\n");
        sb.append("      累计流量:");
        sb.append(totalAmount==null?"":totalAmount);
        sb.append("\n");
        sb.append("      瞬时流量:");
        sb.append(instantAmount==null?"":instantAmount);
        sb.append("\n");
        sb.append("      控制器时钟:");
        sb.append(rtuDt==null?"":rtuDt);
        sb.append("\n");
        if(alarmVo != null){
            sb.append(alarmVo.toString());
            sb.append("\n");
        }
        if(stateVo != null){
            sb.append(stateVo.toString());
            sb.append("\n");
        }
        return sb.toString() ;
    }
}