package com.dy.common.mw.protocol.p206V202404.upVos;
|
|
/**
|
* @Author: liurunyu
|
* @Date: 2024/5/13 16:01
|
* @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:正常)(2025-02-19:对应靳总协议中的漏损报警,即关阀态时有流量产生)
|
public Byte alarmWaterMeterBreak ; //流量计损坏报警 (1:正常通讯但瞬时为0报警 0:正常)
|
public Byte alarmEleMeterFault ; //电表故障报警 (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 alarmEleLowVolt ; //三相电欠压报警 (1:欠压报警 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() ;
|
}
|
|
}
|