| 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.p206V1_0_0.DataV1_0_1; | 
| import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCdC0Vo; | 
| 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 liurunyu | 
|  * @Date 2024/2/28 15:31 | 
|  * @LastEditTime 2024/2/28 15:31 | 
|  * @Description 控制器日漏损水量最新数据 | 
|  */ | 
| @TableName(value="rm_loss_last_history", autoResultMap = true) | 
| @Data | 
| @Builder | 
| @ToString | 
| @NoArgsConstructor | 
| @AllArgsConstructor | 
| @Schema(name = "控制器日漏损水量最新数据") | 
| public class RmLossLast implements BaseEntity { | 
|   | 
|     public static final long serialVersionUID = 202402281621001L; | 
|     /** | 
|      * 主键 | 
|      */ | 
|     @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED) | 
|     @JSONField(serializeUsing= ObjectWriterImplToString.class) | 
|     @TableId(type = IdType.INPUT) | 
|     public Long id; | 
|   | 
|     /** | 
|      * 由最新数据持有历史数据中的最新记录ID,以方便快速查询 | 
|      * json不序列化此属性,即不向前端页面发送及显示 | 
|      */ | 
|     @Schema(hidden=true) | 
|     @JSONField(serialize = false) | 
|     public Long lastHistoryId; | 
|   | 
|     /** | 
|      * 控制器实体ID(外键) | 
|      */ | 
|     @Schema(description = "控制器实体外键", requiredMode = Schema.RequiredMode.NOT_REQUIRED) | 
|     @JSONField(serializeUsing= ObjectWriterImplToString.class) | 
|     public Long controllerId; | 
|   | 
|     /** | 
|      * 取水口实体ID(外键) | 
|      */ | 
|     @Schema(description = "取水口实体外键", requiredMode = Schema.RequiredMode.NOT_REQUIRED) | 
|     @JSONField(serializeUsing= ObjectWriterImplToString.class) | 
|     public Long intakeId; | 
|   | 
|     /** | 
|      * 控制器地址 | 
|      */ | 
|     @Schema(description = "控制器地址", requiredMode = Schema.RequiredMode.REQUIRED) | 
|     public String rtuAddr; | 
|   | 
|     /** | 
|      * 统计日 | 
|      */ | 
|     @Schema(description = "统计日", requiredMode = Schema.RequiredMode.NOT_REQUIRED) | 
|     @JsonFormat(pattern = "yyyy-MM-dd") | 
|     public Date dt; | 
|   | 
|     /** | 
|      * 控制器当日最后上报数据时间 | 
|      */ | 
|     @Schema(description = "控制器当日最后上报数据时间", requiredMode = Schema.RequiredMode.NOT_REQUIRED) | 
|     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:SS") | 
|     public Date dtLast; | 
|   | 
|     /** | 
|      * 控制器当日最后上报数据中的控制器时钟 | 
|      */ | 
|     @Schema(description = "控制器时钟", requiredMode = Schema.RequiredMode.NOT_REQUIRED) | 
|     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:SS") | 
|     public Date dtRtu; | 
|   | 
|     /** | 
|      * 日漏损流量 | 
|      */ | 
|     @Schema(description = "日漏损量(m3)", requiredMode = Schema.RequiredMode.NOT_REQUIRED) | 
|     public Double lossAmount; | 
|   | 
|     public void valueFrom(DataV1_0_1 dV1_0_1, DataCdC0Vo cdData) throws Exception{ | 
|         this.dt = DateTime.dateFrom_yyyy_MM_dd1(dV1_0_1.dt); | 
|         this.dtLast = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt); | 
|         this.dtRtu = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.rtuDt); | 
|         this.lossAmount = cdData.lossAmount ;// 损失流量(从0时到当前的漏损累计流量,24时一个周期,0时归0)单位为m3。 | 
|     } | 
|   | 
| } |