pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmAlarmStateHistory.java
@@ -5,7 +5,10 @@
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.dy.common.mw.protocol.p206V1.DataV1;
import com.dy.common.mw.protocol.p206V2.DataV2;
import com.dy.common.po.BaseEntity;
import com.dy.common.util.DateTime;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@@ -13,11 +16,14 @@
import java.util.Date;
/**
 * @Author liurunyu
 * @Date 2024/1/16 11:03
 * @LastEditTime 2024/1/16 11:03
 * @Description 控制器报警与状态(历史)
 */
 * @Author: liurunyu
 * @Date: 2024/5/20 20:20
 * @Description
 */
/**
 * 控制器报警与状态(历史)
 */
@TableName(value="rm_alarm_state_history", autoResultMap = true)
@Data
@Builder
@@ -26,8 +32,7 @@
@AllArgsConstructor
@Schema(name = "控制器报警与状态(历史)")
public class RmAlarmStateHistory implements BaseEntity {
    public static final long serialVersionUID = 202401161104001L;
    public static final long serialVersionUID = 202405202021001L;
    /**
     * 主键
     */
@@ -38,76 +43,171 @@
    /**
     * 控制器实体ID(外键)
     */
    @Schema(description = "控制器实体外键", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    public Long controllerid;
    public Long controllerId;
    /**
     * 取水口ID(外键)
     */
    @Schema(description = "取水口实体外键", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @JSONField(serializeUsing= ObjectWriterImplToString.class)
    public Long intakeid;
    public Long intakeId;
    /**
     * 控制器地址
     */
    @Schema(description = "控制器地址", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public String rtuaddr;
    public String rtuAddr;
    /**
     * 上报日期时间
     */
    @Schema(description = "上报日期时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date dt;
    /**
     * 控制器时钟
     */
    @Schema(description = "控制器时钟", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date rtudt;
    /**
     * 报警-蓄电池电压(1报警,0正常)
     */
    @Schema(description = "报警-蓄电池电压(1报警,0正常)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Byte bateryvolt;
    public Date rtuDt;
    /**
     * 报警-漏损(1报警,0正常)
     * 状态-阀门/泵(1打开、0关闭)
     */
    @Schema(description = "报警-蓄电池电压(1报警,0正常)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Byte loss;
    public Byte valveState;
    /**
     * 报警-仪表(1报警,0正常)
     * 剩余水量小于报警上限报警报警(1:报警, 0:正常)
     */
    @Schema(description = "报警-仪表(1报警,0正常)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Byte meter;
    public Byte alarmRemainWater;
    /**
     * 报警-阀门(1报警,0正常)
     * 剩余水量为0关泵/阀(1:关泵,0:正常)
     */
    @Schema(description = "报警-阀门(1报警,0正常)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Byte valve;
    public Byte alarm0WaterRemain;
    /**
     * 状态-IC卡功能(1有效、0无效)
     * 年用水量大于限制水量报警(1:报警 0:正常)
     */
    @Schema(description = "状态-IC卡功能(1有效、0无效)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Byte iccard;
    public Byte alarmExceedYear;
    /**
     * 状态-工作(1启动、0停止)
     * 流量计故障(1:报警,0:正常)
     */
    @Schema(description = "报警-仪表(1报警,0正常)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Byte working;
    public Byte alarmWaterMeterFault;
    /**
     * 状态-阀门(1打开、0关闭)
     * 漏损(偷水)报警(1:报警, 0:正常)
     */
    @Schema(description = "状态-阀门(1打开、0关闭)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    public Byte valvestate;
    public Byte alarmLoss;
    /**
     * 流量计损坏(正常通讯但瞬时为0)报警(1:报警,0:正常)
     */
    public Byte alarmWaterMeterBreak;
    /**
     * 电表故障报警(1:报警,0:正常)
     */
    public Byte alarmEleMeterFault;
    /**
     * 剩余金额为0(1:报警,0:正常)
     */
    public Byte alarm0MoneyRemain;
    /**
     * 控制器内门报警(1:报警,0:正常)
     */
    public Byte alarmInnerDoor;
    /**
     * 控制器外门打开报警(1:报警,0:正常)
     */
    public Byte alarmOuterDoor;
    /**
     * 交流缺项报警(1:报警,0:正常)
     */
    public Byte alarmEleMiss;
    /**
     * 交流过流报警(1:报警,0:正常)
     */
    public Byte alarmEleExceed;
    /**
     * 三相电欠压报警(1:报警,0:正常)
     */
    public Byte alarmEleLowVolt;
    /**
     * IC卡状态(1、有效,0:无效)
     */
    public Byte stateIcEnable;
    /**
     * 电池电压(1:报警,0:正常)
     */
    public Byte alarmBatteryVolt;
    /**
     * 阀门报警(1:报警,0:正常)
     */
    public Byte alarmValve;
    /**
     * 供电方式(0: 220V,1:蓄电池)
     */
    public Byte powerType;
    public void valueFrom(DataV1 dV1, String rtuDt,
                          com.dy.common.mw.protocol.p206V1.upVos.DataAlarmVo alarmVo,
                          com.dy.common.mw.protocol.p206V1.upVos.DataStateVo stateVo) throws Exception{
        this.dt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1.dt)   ;
        this.rtuDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(rtuDt)  ;
        this.valveState = stateVo==null?null:stateVo.valveState; //状态-阀门/泵(1打开、0关闭
        this.alarmRemainWater = (byte)0; //剩余水量报警   (1:小于报警上限报警 0:正常)
        this.alarm0WaterRemain = (byte)0; //剩余水量为0关泵/阀   (1:剩余水量为0关泵  0:正常)
        this.alarmExceedYear = (byte)0; //年用水量大于限制水量报警(1:报警 0:正常)
        this.alarmWaterMeterFault = alarmVo==null?null:alarmVo.meter; // 流量计故障(1:报警,0:正常)
        this.alarmLoss = alarmVo==null?null:alarmVo.loss; // 漏损(偷水)报警(1:报警, 0:正常)
        this.alarmWaterMeterBreak = (byte)0; //流量计损坏(正常通讯但瞬时为0)报警(1:报警,0:正常)
        this.alarmEleMeterFault = (byte)0; //电表故障报警(1:报警,0:正常)
        this.alarm0MoneyRemain = (byte)0; //剩余金额为0(1:报警,0:正常)
        this.alarmInnerDoor = (byte)0; //控制器内门报警(1:报警,0:正常)
        this.alarmOuterDoor = (byte)0; //控制器外门打开报警(1:报警,0:正常)
        this.alarmEleMiss = (byte)0; //交流缺项报警(1:报警,0:正常)
        this.alarmEleExceed = (byte)0; //交流过流报警(1:报警,0:正常)
        this.alarmEleLowVolt = (byte)0; //三相电欠压报警(1:报警,0:正常)
        this.stateIcEnable = stateVo==null?null:stateVo.icCard; //IC卡状态(1、有效,0:无效)
        this.alarmBatteryVolt = alarmVo==null?null:alarmVo.batteryVolt; //电池电压(1:报警,0:正常)
        this.alarmValve = alarmVo==null?null:alarmVo.valve; //阀门报警(1:报警,0:正常)
        this.powerType = stateVo==null?null:stateVo.powerType; //供电方式(0: 220V,1:蓄电池)
    }
    public void valueFrom(DataV2 dV2, String rtuDt,
                          com.dy.common.mw.protocol.p206V2.upVos.DataAlarmVo alarmVo,
                          com.dy.common.mw.protocol.p206V2.upVos.DataStateVo stateVo) throws Exception{
        this.dt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV2.dt)   ;
        this.rtuDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(rtuDt)  ;
        this.valveState = stateVo==null?null:stateVo.valveState; //状态-阀门/泵(1打开、0关闭
        this.alarmRemainWater = (byte)0; //剩余水量报警   (1:小于报警上限报警 0:正常)
        this.alarm0WaterRemain = (byte)0; //剩余水量为0关泵/阀   (1:剩余水量为0关泵  0:正常)
        this.alarmExceedYear = (byte)0; //年用水量大于限制水量报警(1:报警 0:正常)
        this.alarmWaterMeterFault = alarmVo==null?null:alarmVo.meter; // 流量计故障(1:报警,0:正常)
        this.alarmLoss = alarmVo==null?null:alarmVo.loss; // 漏损(偷水)报警(1:报警, 0:正常)
        this.alarmWaterMeterBreak = (byte)0; //流量计损坏(正常通讯但瞬时为0)报警(1:报警,0:正常)
        this.alarmEleMeterFault = (byte)0; //电表故障报警(1:报警,0:正常)
        this.alarm0MoneyRemain = (byte)0; //剩余金额为0(1:报警,0:正常)
        this.alarmInnerDoor = (byte)0; //控制器内门报警(1:报警,0:正常)
        this.alarmOuterDoor = (byte)0; //控制器外门打开报警(1:报警,0:正常)
        this.alarmEleMiss = (byte)0; //交流缺项报警(1:报警,0:正常)
        this.alarmEleExceed = (byte)0; //交流过流报警(1:报警,0:正常)
        this.alarmEleLowVolt = (byte)0; //三相电欠压报警(1:报警,0:正常)
        this.stateIcEnable = stateVo==null?null:stateVo.icCard; //IC卡状态(1、有效,0:无效)
        this.alarmBatteryVolt = alarmVo==null?null:alarmVo.batteryVolt; //电池电压(1:报警,0:正常)
        this.alarmValve = alarmVo==null?null:alarmVo.valve; //阀门报警(1:报警,0:正常)
        this.powerType = stateVo==null?null:stateVo.powerType; //供电方式(0: 220V,1:蓄电池)
    }
}