package com.dy.pipIrrGlobal.pojoRm; import com.alibaba.fastjson2.annotation.JSONField; import com.alibaba.fastjson2.writer.ObjectWriterImplToString; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.dy.common.mw.protocol.p206V202404.DataV202404; import com.dy.common.mw.protocol.p206V202404.upVos.DataCd84Vo; import com.dy.common.mw.protocol.p206V202404.upVos.DataCd85Vo; 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.*; import java.util.Date; /** * @author ZhuBaoMin * @date 2024-06-20 10:34 * @LastEditTime 2024-06-20 10:34 * @Description */ /** * 开关阀报历史数据表 */ @TableName(value="rm_open_close_history", autoResultMap = true) @Data @Builder @ToString @NoArgsConstructor @AllArgsConstructor @Schema(name = "开关阀报历史数据表") public class RmOpenCloseHistory implements BaseEntity { public static final long serialVersionUID = 202406201040001L; /** * 主键 */ @JSONField(serializeUsing= ObjectWriterImplToString.class) @TableId(type = IdType.INPUT) public Long id; /** * 控制器实体ID(外键) */ @JSONField(serializeUsing= ObjectWriterImplToString.class) public Long controllerId; /** * 取水口实体ID(外键) */ @JSONField(serializeUsing= ObjectWriterImplToString.class) public Long intakeId; /** * 控制器地址 */ public String rtuAddr; /** * 开阀数据接收日期时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") public Date opDt; /** * 开阀控制器时钟 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") public Date opRtuDt; /** * IC卡地址(远程关闭时为0) */ public String opIcCardAddr; /** * IC卡编号(17位数字) */ public String opIcCardNo; /** * 开阀订单号(16位数字) */ public String opOrderNo; /** * 开泵/阀时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") public Date openDt; /** * 开阀水表累计水量 */ public Double opWaterTotalAmount; /** * 开阀电表累计电量 */ public Double opEleTotalAmount; /** * 开阀用户剩余金额 */ public Double opMoneyRemainUser; /** * 开阀用户剩余水量 */ public Double opWaterRemainUser; /** * 关泵/阀方式 */ public Byte opType; /** * 关阀IC卡地址(远程关闭时为0) */ public String clIcCardAddr; /** * 关阀IC卡编号(17位数字) */ public String clIcCardNo; /** * 关阀订单号(16位数字) */ public String clOrderNo; /** * 开始时间(分时日月) */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") public Date startDt; /** * 结束时间(分时日月) */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") public Date endDt; /** * 水表累计流量 */ public Double clWaterTotalAmount; /** * 电表累计电量 */ public Double clEleTotalAmount; /** * 用户剩余金额 */ public Double clMoneyRemainUser; /** * 用户剩余水量 */ public Double clWaterRemainUser; /** * 本次使用电量 */ public Double thisEle; /** * 本次使用水量 */ public Double thisWater; /** * 本次使用金额 */ public Double thisMoney; /** * 本次使用时间长 */ public Integer thisDuration; public void valueFrom84(DataV202404 dataV202404, DataCd84Vo cdData) throws Exception{ this.opDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataV202404.dt); this.openDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.opDt); //this.opRtuDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.opDt); this.opIcCardAddr = cdData.icCardAddr; this.opIcCardNo = cdData.icCardNo; this.opOrderNo = cdData.orderNo; this.opWaterTotalAmount = cdData.waterTotalAmount; this.opEleTotalAmount = cdData.eleTotalAmount; this.opMoneyRemainUser = cdData.moneyRemainUser; this.opWaterRemainUser = cdData.waterRemainUser; } public void valueFrom85(DataV202404 dataV202404, DataCd85Vo cdData) throws Exception{ this.startDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.startDt); this.endDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.endDt); this.opType = cdData.opType; this.clIcCardAddr = cdData.icCardAddr; this.clIcCardNo = cdData.icCardNo; this.clOrderNo = cdData.orderNo; this.clWaterTotalAmount = cdData.waterTotalAmount; this.clEleTotalAmount = cdData.eleTotalAmount; this.clMoneyRemainUser = cdData.moneyRemain; this.clWaterRemainUser = cdData.waterRemain; this.thisEle = cdData.thisEle; this.thisWater = cdData.thisWater; this.thisMoney = cdData.thisMoney; this.thisDuration = cdData.thisDuration; } }