liurunyu
6 天以前 e8937f27fce194d015ce6c27d286e7fc89f5e580
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmOnHourReportHistory.java
New file
@@ -0,0 +1,140 @@
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.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.*;
import java.util.Date;
/**
 * @Author: liurunyu
 * @Date: 2024/6/26 21:32
 * @Description
 */
/**
 * 控制器整点报(只有靳总协议有)
 */
@TableName(value="rm_on_hour_report_last", autoResultMap = true)
@Data
@Builder
@ToString
@NoArgsConstructor
@AllArgsConstructor
@Schema(name = "控制器整点报历史数据")
public class RmOnHourReportHistory implements BaseEntity {
    public static final long serialVersionUID = 202406262133001L;
    /**
     * 主键
     */
    @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 dt;
    /**
     * 控制器时钟
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date rtuDt;
    /**
     * 瞬时流量,单位为m3/h
     */
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    public Double instantAmount;
    /**
     * 累计流量,单位为m3
     */
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    public Double totalAmount;
    /**
     * 损失流量(从0时到当前的漏损累计流量,24时一个周期,0时归0)单位为m3。
     */
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    public Double lossAmount;
    /**
     * 水压,单位为KPa
     */
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    public Double waterPress;
    /**
     * 蓄电池电压,单位为V
     */
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    public Double batteryVolt;
    /**
     * 信号强度,取值范围0~99
     */
    public Integer signalValue;
    /**
     * 水价,单位为元
     */
    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
    public Double waterPrice;
    public void valueFrom(DataV1 dV1, com.dy.common.mw.protocol.p206V1.upVos.DataCdC0Vo cdData) throws Exception{
        this.dt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1.dt);
        this.rtuDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.rtuDt);
        this.instantAmount = cdData.instantAmount; //瞬时流量,单位为m3/h
        this.totalAmount = cdData.totalAmount ;//累计流量,单位为m3
        this.lossAmount = cdData.lossAmount ;// 损失流量(从0时到当前的漏损累计流量,24时一个周期,0时归0)单位为m3。
        this.waterPress = cdData.waterPress ;// 水压,单位为KPa
        this.batteryVolt = cdData.batteryVolt ;// 蓄电池电压,单位为V
        this.signalValue = cdData.signalValue ;//  信号强度,取值范围0~99
        this.waterPrice = cdData.waterPrice ;//  水价,单位为元。
    }
    public void valueFrom(DataV2 dV2, com.dy.common.mw.protocol.p206V2.upVos.DataCdC0Vo cdData) throws Exception{
        this.dt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV2.dt);
        this.rtuDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(cdData.rtuDt);
        this.instantAmount = cdData.instantAmount; //瞬时流量,单位为m3/h
        this.totalAmount = cdData.totalAmount ;//累计流量,单位为m3
        this.lossAmount = cdData.lossAmount ;// 损失流量(从0时到当前的漏损累计流量,24时一个周期,0时归0)单位为m3。
        this.waterPress = cdData.waterPress ;// 水压,单位为KPa
        this.batteryVolt = cdData.batteryVolt ;// 蓄电池电压,单位为V
        this.signalValue = cdData.signalValue ;//  信号强度,取值范围0~99
        this.waterPrice = cdData.waterPrice ;//  水价,单位为元。
    }
}