pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/AlarmVo.java
@@ -6,21 +6,152 @@
 * @Description
 */
public class AlarmVo {
    public static final byte DevOpenState = 1 ;
    public static final byte DevCloseState = 0 ;
    public Byte statePump ; //泵/阀状态   (1:开泵/阀;0:关泵/阀)
    public Byte alarmWaterRemain ; //剩余水量报警   (1:小于报警上限报警 0:正常)
    public Byte alarm0WaterRemain ; //剩余水量为0关泵/阀   (1:剩余水量为0关泵  0:正常)
    public Byte alarmExceedYear ; //年度超采报警   (1:年用水量大于限制水量报警 0:正常)
    public Byte alarmWaterMeterFault ; //外部流量计故障   (1:流量计故障报警 0:正常)
    public Byte alarmSteal ; //偷水报警   (1:绕开控制器用水报警 0:正常)
    public Byte alarmSteal ; //偷水报警   (1:绕开控制器用水报警 0:正常)(2025-02-19:对应靳总协议中的漏损报警,即关阀态时有流量产生)
    public Byte alarmWaterMeterBreak ; //流量计损坏报警   (1:正常通讯但瞬时为0报警 0:正常)
    public Byte alarmEleMeterFault ; //电表故障报警   (1:和电表通讯断或数据不正常 0:正常)
    public Byte alarm0MoneyRemain ; //剩余金额为0关泵/阀   (1:剩余金额为0报警  0:正常)
    public Byte alarmInnerDoor ; //控制器内门报警   (1:内门打开报警    0:正常)
    public Byte alarmOuterDoor ; //控制器外门报警   (1:外门打开报警    0:正常)
    public Byte alarm0MoneyRemain ; //剩余金额为0   (1:剩余金额为0报警  0:正常)
    public Byte alarmDoor; //控制器内门报警   (1:内门打开报警    0:正常)
    public Byte alarmBatteryVolt; //电池电压低报警   (1:电池低关阀报警    0:正常)
    public Byte alarmEleMiss ; //交流缺项报警   (1:三相缺项报警    0:正常)
    public Byte alarmEleExceed ; //交流过流报警   (1:交流过流报警    0:正常)
    public Byte alarmEleExceed ; //交流过流报警 (1:交流过流报警    0:正常)
    public Byte alarmEleLowVolt ; //三相电欠压报警   (1:欠压报警        0:正常)
    public Byte stateIcEnable ; //IC卡使能   (1、IC有刷卡支持    0:不支持)
    public Byte stateIcEnable ; //IC卡使能 (1:IC有刷卡支持    0:不支持)
    public Byte alarmBlockValve; //阀门故障报警 (1:阀门堵转   0:阀门正常(不堵转))
    public Byte stateOpClValve ; //阀门开关状态 (1:开关阀不到位    0:开关阀到位)
    public boolean hasAlarm(){
        boolean flag = false ;
        if((alarmBatteryVolt != null && alarmBatteryVolt == 1) ||
                (alarmWaterMeterFault != null && alarmWaterMeterFault == 1) ||
                (alarmWaterMeterBreak != null && alarmWaterMeterBreak == 1) ||
                (alarmSteal != null && alarmSteal == 1) ||
                (alarmBlockValve != null && alarmBlockValve == 1) ){
            flag = true ;
        }
        return flag ;
    }
    public boolean hasAlarmExcludeLoss(){
        boolean flag = false ;
        if((alarmBatteryVolt != null && alarmBatteryVolt == 1) ||
                (alarmWaterMeterFault != null && alarmWaterMeterFault == 1) ||
                (alarmWaterMeterBreak != null && alarmWaterMeterBreak == 1)||
                (alarmBlockValve != null && alarmBlockValve == 1) ){
            flag = true ;
        }
        return flag ;
    }
    public String alarmContent(){
        String txt = "" ;
        boolean hasTxt = false ;
        if(alarmBatteryVolt != null && alarmBatteryVolt == 1){
            txt += (hasTxt?"、":"") + "电池电压低报警" ;
            hasTxt = true ;
        }
        if(alarmWaterMeterFault != null && alarmWaterMeterFault == 1){
            txt += (hasTxt?"、":"") + "外部流量计故障报警" ;
            hasTxt = true ;
        }
        if(alarmWaterMeterBreak != null && alarmWaterMeterBreak == 1){
            txt += (hasTxt?"、":"") + "流量计故障报警" ;
            hasTxt = true ;
        }
        if(alarmSteal != null && alarmSteal == 1){
            txt += (hasTxt?"、":"") + "漏损报警" ;
            hasTxt = true ;
        }
       if(alarmBlockValve != null && alarmBlockValve == 1){
            txt += (hasTxt?"、":"") + "阀门故障报警" ;
            hasTxt = true ;
        }
        return txt ;
    }
    public String alarmContentExcludeLoss(){
        String txt = "" ;
        boolean hasTxt = false ;
        if(alarmBatteryVolt != null && alarmBatteryVolt == 1){
            txt += (hasTxt?"、":"") + "电池电压低报警" ;
            hasTxt = true ;
        }
        if(alarmWaterMeterFault != null && alarmWaterMeterFault == 1){
            txt += (hasTxt?"、":"") + "外部流量计故障报警" ;
            hasTxt = true ;
        }
        if(alarmWaterMeterBreak != null && alarmWaterMeterBreak == 1){
            txt += (hasTxt?"、":"") + "流量计故障报警" ;
            hasTxt = true ;
        }
        if(alarmBlockValve != null && alarmBlockValve == 1){
            txt += (hasTxt?"、":"") + "阀门故障报警" ;
            hasTxt = true ;
        }
        return txt ;
    }
    public String toString(){
        StringBuffer sb = new StringBuffer() ;
        sb.append("      泵/阀状态 : ") ;
        sb.append(statePump == null?"未知":(statePump.byteValue()==1?"泵/阀开":(statePump.byteValue()==0?"泵/阀关":"未知"))) ;
        sb.append("\n") ;
        sb.append("      剩余水量报警 : ") ;
        sb.append(alarmWaterRemain == null?"未知":(alarmWaterRemain.byteValue() == 0 ? "正常":(alarmWaterRemain.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        sb.append("      剩余0水量关泵/阀 : ") ;
        sb.append(alarm0WaterRemain == null?"未知":(alarm0WaterRemain.byteValue() == 0 ? "正常":(alarm0WaterRemain.byteValue() == 1 ? "关泵/阀":"未知"))) ;
        sb.append("\n") ;
        sb.append("      年度超采 : ") ;
        sb.append(alarmExceedYear == null?"未知":(alarmExceedYear.byteValue() == 0 ? "正常":(alarmExceedYear.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        sb.append("      流量计故障 : ") ;
        sb.append(alarmWaterMeterFault == null?"未知":(alarmWaterMeterFault.byteValue() == 0 ? "正常":(alarmWaterMeterFault.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        sb.append("      偷水 : ") ;
        sb.append(alarmSteal == null?"未知":(alarmSteal.byteValue() == 0 ? "正常":(alarmSteal.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        sb.append("      流量计损坏 : ") ;
        sb.append(alarmWaterMeterBreak == null?"未知":(alarmWaterMeterBreak.byteValue() == 0 ? "正常":(alarmWaterMeterBreak.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        sb.append("      电表故障 : ") ;
        sb.append(alarmEleMeterFault == null?"未知":(alarmEleMeterFault.byteValue() == 0 ? "正常":(alarmEleMeterFault.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        sb.append("      剩余0金额关泵/阀 : ") ;
        sb.append(alarm0MoneyRemain == null?"未知":(alarm0MoneyRemain.byteValue() == 0 ? "正常":(alarm0MoneyRemain.byteValue() == 1 ? "关泵/阀":"未知"))) ;
        sb.append("\n") ;
        sb.append("      控制器内门 : ") ;
        sb.append(alarmDoor == null?"未知":(alarmDoor.byteValue() == 0 ? "正常":(alarmDoor.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        sb.append("      电池电压低 : ") ;
        sb.append(alarmBatteryVolt == null?"未知":(alarmBatteryVolt.byteValue() == 0 ? "正常":(alarmBatteryVolt.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        sb.append("      交流缺项 : ") ;
        sb.append(alarmEleMiss == null?"未知":(alarmEleMiss.byteValue() == 0 ? "正常":(alarmEleMiss.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        sb.append("      交流过流 : ") ;
        sb.append(alarmEleExceed == null?"未知":(alarmEleExceed.byteValue() == 0 ? "正常":(alarmEleExceed.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        sb.append("      三相电欠压 : ") ;
        sb.append(alarmEleLowVolt == null?"未知":(alarmEleLowVolt.byteValue() == 0 ? "正常":(alarmEleLowVolt.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        sb.append("      IC卡功能 : ") ;
        sb.append(stateIcEnable == null?"未知":(stateIcEnable.byteValue() == 0 ? "无效":(stateIcEnable.byteValue() == 1 ? "有效":"未知"))) ;
        sb.append("\n") ;
        sb.append("      阀门开关状态 : ") ;
        sb.append(stateOpClValve == null?"未知":(stateOpClValve.byteValue() == 0 ? "正常":(stateOpClValve.byteValue() == 1 ? "未到位":"未知"))) ;
        sb.append("\n") ;
        sb.append("      阀门堵转报警 : ") ;
        sb.append(alarmBlockValve == null?"未知":(alarmBlockValve.byteValue() == 0 ? "正常":(alarmBlockValve.byteValue() == 1 ? "报警":"未知"))) ;
        sb.append("\n") ;
        return sb.toString() ;
    }
}