package com.dy.common.mw.protocol.p206V202404.upVos; import lombok.Data; //设备终端工作上报 + 设备终端工作上报 @Data public class DataCd80_5BVo { public String controllerType;//控制器类型: 01:测控一体阀;57:井电控制器 public Integer projectNo ;//项目编号: public Byte useWaterType ;//用水方式(0x00:正常刷卡开泵/阀用水 0x01:平台远程开泵/阀用水 0x02:用户远程开泵/阀用水 0x03:测试卡,0x04:其它) public String orderNo ;//订单号(16位数字) public String icCardAddr ;//IC卡地址(远程开泵/阀时此数据为0) public String icCardNo ;//用户卡序列号(16位数字) public String rtuDt ;//观察时间: 6字节的BCD码(秒分时日月年) public Double waterLevel ;//水位(单位0.001米) public Double waterPress ;//水压(单位0.01千帕) public Double waterInstant ;//瞬时流量(单位0.01立方米/小时) public Double waterTotal ;//水表累计流量(单位0.01m3) public Double eleTotal ;//电表累计电量(单位0.01度) public Double moneyRemain ;//用户剩余金额(单位0.01元) public Double waterRemain ;//用户剩余水量(单位0.01m3) public Double thisEle ;//本次使用电量(单位0.01度) public Double thisWater ;//本次使用水量(单位0.01立方米) public Double thisMoney ;//本次使用金额(单位0.01元) public Integer thisDuration ;//本次使用时长(单位:分钟 最大9999分钟) public Double waterPrice ;//当前水量单价(单位0.01元 最大99.99元) public Double elePrice ;//当前电量单价(单位0.01元 最大99.99元) public Double aVolt ;//交流A相电压数据(单位0.1伏特) public Double bVolt ;//交流B相电压数据(单位0.1伏特) public Double cVolt ;//交流C相电压数据(单位0.1伏特) public Double aCurrent ;//交流A相电流数据(单位0.1安培) public Double bCurrent ;//交流B相电流数据(单位0.1安培) public Double cCurrent ;//交流C相电流数据(单位0.1安培) public Double batteryVolt ;//后备电池电压(单位0.01伏特) public Double waterMeterTransVolt ;//水表远传电压(单位0.01伏特) public Double waterMeterWorkVolt ;//水表工作电压(单位0.01伏特) /* CSQ值应在0到31之间,其中99表示无信号。 网络质量评估: CSQ值小于10:可以认为网络较差。 CSQ值在10和25之间:可以认为网络中等。 CSQ值大于25:可以认为网络较好。 CSQ值小于11:不容易附着网络。 11 < CSQ < 18:网络不稳定,可能会导致误码较多。 CSQ值大于18:能稳定通信 */ public Integer csq ;//手机信号强度 CSQ值() 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 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 alarmEleMiss ; //交流缺项报警 (1:三相缺项报警 0:正常) public Byte alarmEleExceed ; //交流过流报警 (1:交流过流报警 0:正常) public Byte alarmEleLowVolt ; //三相电欠压报警 (1:欠压报警 0:正常) public Byte stateIcEnable ; //IC卡使能 (1、IC有刷卡支持 0:不支持) public String comName ;//命令名称 public DataCd80_5BVo(String comName){ this.comName = comName ; } public String toString(){ StringBuffer sb = new StringBuffer() ; sb.append(" " + comName + " : \n") ; sb.append(" 控制器类型 : ") ; sb.append(controllerType == null?"未知":(controllerType.equals("01")?"测控一体阀":(controllerType.equals("57")?"井电控制器":"未知"))) ; sb.append("\n") ; sb.append(" 项目编号 : ") ; sb.append(projectNo == null?"未知":projectNo) ; sb.append("\n") ; sb.append(" 用水方式 : ") ; sb.append(useWaterType == null?"未知":(useWaterType.byteValue()==0?"刷卡开泵/阀":(useWaterType.byteValue()==1?"平台远程开泵/阀":(useWaterType.byteValue()==2?"APP远程开泵/阀":(useWaterType.byteValue()==3?"测试卡开泵/阀":(useWaterType.byteValue()==4?"其他":"未知")))))) ; sb.append("\n") ; sb.append(" 订单号 : ") ; sb.append(orderNo == null?"未知":orderNo) ; sb.append("\n") ; sb.append(" IC卡地址 : ") ; sb.append(icCardAddr == null?"未知":icCardAddr) ; sb.append("\n") ; sb.append(" 用户卡序列号 : ") ; sb.append(icCardNo == null?"未知":icCardNo) ; sb.append("\n") ; sb.append(" 观察时间 : ") ; sb.append(rtuDt == null?"未知":rtuDt) ; sb.append("\n") ; sb.append(" 水位 : ") ; sb.append(waterLevel == null?"未知":waterLevel) ; sb.append("\n") ; sb.append(" 水压 : ") ; sb.append(waterPress == null?"未知":waterPress) ; sb.append("\n") ; sb.append(" 瞬时流量 : ") ; sb.append(waterInstant == null?"未知":waterInstant) ; sb.append("\n") ; sb.append(" 水表累计流量 : ") ; sb.append(waterTotal == null?"未知":waterTotal) ; sb.append("\n") ; sb.append(" 电表累计电量 : ") ; sb.append(eleTotal == null?"未知":eleTotal) ; sb.append("\n") ; sb.append(" 用户剩余金额 : ") ; sb.append(moneyRemain == null?"未知":moneyRemain) ; sb.append("\n") ; sb.append(" 用户剩余水量 : ") ; sb.append(waterRemain == null?"未知":waterRemain) ; sb.append("\n") ; sb.append(" 本次使用电量 : ") ; sb.append(thisEle == null?"未知":thisEle) ; sb.append("\n") ; sb.append(" 本次使用水量 : ") ; sb.append(thisWater == null?"未知":thisWater) ; sb.append("\n") ; sb.append(" 本次使用金额 : ") ; sb.append(thisMoney == null?"未知":thisMoney) ; sb.append("\n") ; sb.append(" 本次使用时长 : ") ; sb.append(thisDuration == null?"未知":thisDuration) ; sb.append("\n") ; sb.append(" 当前水量单价 : ") ; sb.append(waterPrice == null?"未知":waterPrice) ; sb.append("\n") ; sb.append(" 当前电量单价 : ") ; sb.append(elePrice == null?"未知":elePrice) ; sb.append("\n") ; sb.append(" 交流A相电压 : ") ; sb.append(aVolt == null?"未知":aVolt) ; sb.append("\n") ; sb.append(" 交流B相电压 : ") ; sb.append(bVolt == null?"未知":bVolt) ; sb.append("\n") ; sb.append(" 交流C相电压 : ") ; sb.append(cVolt == null?"未知":cVolt) ; sb.append("\n") ; sb.append(" 交流A相电流 : ") ; sb.append(aCurrent == null?"未知":aCurrent) ; sb.append("\n") ; sb.append(" 交流B相电流 : ") ; sb.append(bCurrent == null?"未知":bCurrent) ; sb.append("\n") ; sb.append(" 交流C相电流 : ") ; sb.append(cCurrent == null?"未知":cCurrent) ; sb.append("\n") ; sb.append(" 后备电池电压 : ") ; sb.append(batteryVolt == null?"未知":batteryVolt) ; sb.append("\n") ; sb.append(" 水表远传电压 : ") ; sb.append(waterMeterTransVolt == null?"未知":waterMeterTransVolt) ; sb.append("\n") ; sb.append(" 水表工作电压 : ") ; sb.append(waterMeterWorkVolt == null?"未知":waterMeterWorkVolt) ; sb.append("\n") ; sb.append(" 泵状态 : ") ; sb.append(statePump == null?"未知":(statePump.byteValue()==1?"泵/阀开":(statePump.byteValue()==0?"泵/阀关":"未知"))) ; sb.append(" 剩余水量报警 : ") ; sb.append(alarmWaterRemain == null?"未知":(alarmWaterRemain.byteValue()==1?"小于报警上限":(alarmWaterRemain.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 剩余水量为0关泵/阀 : ") ; sb.append(alarm0WaterRemain == null?"未知":(alarm0WaterRemain.byteValue()==1?"归零关泵/阀":(alarm0WaterRemain.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 年度超采 : ") ; sb.append(alarmExceedYear == null?"未知":(alarmExceedYear.byteValue()==1?"报警":(alarmExceedYear.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 外部流量计故障 : ") ; sb.append(alarmWaterMeterFault == null?"未知":(alarmWaterMeterFault.byteValue()==1?"报警":(alarmWaterMeterFault.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 偷水 : ") ; sb.append(alarmSteal == null?"未知":(alarmSteal.byteValue()==1?"报警":(alarmSteal.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 流量计损坏 : ") ; sb.append(alarmWaterMeterBreak == null?"未知":(alarmWaterMeterBreak.byteValue()==1?"报警":(alarmWaterMeterBreak.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 电表故障 : ") ; sb.append(alarmEleMeterFault == null?"未知":(alarmEleMeterFault.byteValue()==1?"报警":(alarmEleMeterFault.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 剩余金额为0关泵/阀 : ") ; sb.append(alarm0MoneyRemain == null?"未知":(alarm0MoneyRemain.byteValue()==1?"报警":(alarm0MoneyRemain.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 控制器内门 : ") ; sb.append(alarmInnerDoor == null?"未知":(alarmInnerDoor.byteValue()==1?"报警":(alarmInnerDoor.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 控制器外门 : ") ; sb.append(alarmOuterDoor == null?"未知":(alarmOuterDoor.byteValue()==1?"报警":(alarmOuterDoor.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 交流缺项 : ") ; sb.append(alarmEleMiss == null?"未知":(alarmEleMiss.byteValue()==1?"报警":(alarmEleMiss.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 交流过流 : ") ; sb.append(alarmEleExceed == null?"未知":(alarmEleExceed.byteValue()==1?"报警":(alarmEleExceed.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" 三相电欠压 : ") ; sb.append(alarmEleLowVolt == null?"未知":(alarmEleLowVolt.byteValue()==1?"报警":(alarmEleLowVolt.byteValue()==0?"正常":"未知"))) ; sb.append("\n") ; sb.append(" IC卡使能 : ") ; sb.append(stateIcEnable == null?"未知":(stateIcEnable.byteValue()==1?"支持":(stateIcEnable.byteValue()==0?"不支持":"未知"))) ; sb.append("\n") ; return sb.toString() ; } }