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.protocol4Mqtt.MqttSubMsg;
|
import com.dy.common.mw.protocol4Mqtt.pSdV1.upVos.SoilVo;
|
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: 2025/6/25 10:04
|
* @Description
|
*/
|
@TableName(value="rm_soil_day", autoResultMap = true)
|
@Data
|
@Builder
|
@ToString
|
@NoArgsConstructor
|
@AllArgsConstructor
|
@Schema(name = "墒情日平均数据")
|
public class RmSoilDay implements BaseEntity {
|
|
public static final long serialVersionUID = 202506251022003L;
|
/**
|
* 主键
|
*/
|
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED)
|
@JSONField(serializeUsing= ObjectWriterImplToString.class)
|
@TableId(type = IdType.INPUT)
|
public Long id;
|
|
/**
|
* 墒情站实体外键id
|
*/
|
@Schema(description = "墒情站实体外键id", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JSONField(serializeUsing= ObjectWriterImplToString.class)
|
public Long soilId;
|
|
/**
|
* 数据日期(年月日)
|
*/
|
@Schema(description = "数据日期", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
public Date dt;
|
/**
|
* 数据日期(年月日)
|
*/
|
@Schema(hidden=true)
|
@JSONField(serialize = false)
|
public Integer ymd ;
|
|
/**
|
* 日平均土壤湿度1
|
*/
|
@Schema(description = "日平均土壤湿度1", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilHumidity1;
|
|
/**
|
* 日平均土壤湿度2
|
*/
|
@Schema(description = "日平均土壤湿度2", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilHumidity2;
|
|
/**
|
* 日平均土壤湿度3
|
*/
|
@Schema(description = "日平均土壤湿度3", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilHumidity3;
|
|
/**
|
* 日平均土壤湿度4
|
*/
|
@Schema(description = "日平均土壤湿度4", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilHumidity4;
|
|
/**
|
* 日平均土壤湿度5
|
*/
|
@Schema(description = "日平均土壤湿度5", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilHumidity5;
|
|
/**
|
* 日平均土壤温度1
|
*/
|
@Schema(description = "日平均土壤温度1", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilTemperature1;
|
|
/**
|
* 日平均土壤温度2
|
*/
|
@Schema(description = "日平均土壤温度2", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilTemperature2;
|
|
/**
|
* 日平均土壤温度3
|
*/
|
@Schema(description = "日平均土壤温度3", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilTemperature3;
|
|
/**
|
* 日平均土壤温度4
|
*/
|
@Schema(description = "日平均土壤温度4", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilTemperature4;
|
|
/**
|
* 日平均土壤温度5
|
*/
|
@Schema(description = "日平均土壤温度5", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilTemperature5;
|
|
/**
|
* 日数据次数
|
*/
|
@Schema(description = "日数据次数", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
public Integer times;
|
|
/**
|
* 日累计土壤湿度1
|
*/
|
@Schema(description = "日累计土壤湿度1", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilSumHumidity1;
|
|
/**
|
* 日累计土壤湿度2
|
*/
|
@Schema(description = "日累计土壤湿度2", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilSumHumidity2;
|
|
/**
|
* 日累计土壤湿度3
|
*/
|
@Schema(description = "日累计土壤湿度3", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilSumHumidity3;
|
|
/**
|
* 日累计土壤湿度4
|
*/
|
@Schema(description = "日累计土壤湿度4", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilSumHumidity4;
|
|
/**
|
* 日累计土壤湿度5
|
*/
|
@Schema(description = "日累计土壤湿度5", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilSumHumidity5;
|
|
/**
|
* 日累计土壤温度1
|
*/
|
@Schema(description = "日累计土壤温度1", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilSumTemperature1;
|
|
/**
|
* 日累计土壤温度2
|
*/
|
@Schema(description = "日累计土壤温度2", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilSumTemperature2;
|
|
/**
|
* 日累计土壤温度3
|
*/
|
@Schema(description = "日累计土壤温度3", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilSumTemperature3;
|
|
/**
|
* 日累计土壤温度4
|
*/
|
@Schema(description = "日累计土壤温度4", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilSumTemperature4;
|
|
/**
|
* 日累计土壤温度5
|
*/
|
@Schema(description = "日累计土壤温度5", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
|
public Double soilSumTemperature5;
|
|
public void valueFrom(MqttSubMsg msg, SoilVo cdData) throws Exception{
|
this.dt = new Date();
|
this.ymd = Integer.parseInt(DateTime.yyyyMMdd()) ;
|
this.soilSumHumidity1 = cdData.soilHumidity1==null?0.0D:(0.0D + cdData.soilHumidity1) ;
|
this.soilSumHumidity2 = cdData.soilHumidity2==null?0.0D:(0.0D + cdData.soilHumidity2) ;
|
this.soilSumHumidity3 = cdData.soilHumidity3==null?0.0D:(0.0D + cdData.soilHumidity3) ;
|
this.soilSumHumidity4 = cdData.soilHumidity4==null?0.0D:(0.0D + cdData.soilHumidity4) ;
|
this.soilSumHumidity5 = cdData.soilHumidity5==null?0.0D:(0.0D + cdData.soilHumidity5) ;
|
this.soilSumTemperature1 = cdData.soilTemperature1==null?0.0D:(0.0D + cdData.soilTemperature1) ;
|
this.soilSumTemperature2 = cdData.soilTemperature2==null?0.0D:(0.0D + cdData.soilTemperature2) ;
|
this.soilSumTemperature3 = cdData.soilTemperature3==null?0.0D:(0.0D + cdData.soilTemperature3) ;
|
this.soilSumTemperature4 = cdData.soilTemperature4==null?0.0D:(0.0D + cdData.soilTemperature4) ;
|
this.soilSumTemperature5 = cdData.soilTemperature5==null?0.0D:(0.0D + cdData.soilTemperature5) ;
|
this.times = 1 ;
|
this.soilHumidity1 = this.soilSumHumidity1 ;
|
this.soilHumidity2 = this.soilSumHumidity2 ;
|
this.soilHumidity3 = this.soilSumHumidity3 ;
|
this.soilHumidity4 = this.soilSumHumidity4 ;
|
this.soilHumidity5 = this.soilSumHumidity5 ;
|
this.soilTemperature1 = this.soilSumTemperature1 ;
|
this.soilTemperature2 = this.soilSumTemperature2 ;
|
this.soilTemperature3 = this.soilSumTemperature3 ;
|
this.soilTemperature4 = this.soilSumTemperature4 ;
|
this.soilTemperature5 = this.soilSumTemperature5 ;
|
}
|
|
public void updateFrom(MqttSubMsg msg, SoilVo cdData) throws Exception{
|
this.soilSumHumidity1 += cdData.soilHumidity1==null?0.0D:(0.0D + cdData.soilHumidity1) ;
|
this.soilSumHumidity2 += cdData.soilHumidity2==null?0.0D:(0.0D + cdData.soilHumidity2) ;
|
this.soilSumHumidity3 += cdData.soilHumidity3==null?0.0D:(0.0D + cdData.soilHumidity3) ;
|
this.soilSumHumidity4 += cdData.soilHumidity4==null?0.0D:(0.0D + cdData.soilHumidity4) ;
|
this.soilSumHumidity5 += cdData.soilHumidity5==null?0.0D:(0.0D + cdData.soilHumidity5) ;
|
this.soilSumTemperature1 += cdData.soilTemperature1==null?0.0D:(0.0D + cdData.soilTemperature1) ;
|
this.soilSumTemperature2 += cdData.soilTemperature2==null?0.0D:(0.0D + cdData.soilTemperature2) ;
|
this.soilSumTemperature3 += cdData.soilTemperature3==null?0.0D:(0.0D + cdData.soilTemperature3) ;
|
this.soilSumTemperature4 += cdData.soilTemperature4==null?0.0D:(0.0D + cdData.soilTemperature4) ;
|
this.soilSumTemperature5 += cdData.soilTemperature5==null?0.0D:(0.0D + cdData.soilTemperature5) ;
|
this.times = this.times + 1 ;
|
this.soilHumidity1 = this.soilSumHumidity1 / this.times ;
|
this.soilHumidity2 = this.soilSumHumidity2 / this.times ;
|
this.soilHumidity3 = this.soilSumHumidity3 / this.times ;
|
this.soilHumidity4 = this.soilSumHumidity4 / this.times ;
|
this.soilHumidity5 = this.soilSumHumidity5 / this.times ;
|
this.soilTemperature1 = this.soilSumTemperature1 / this.times ;
|
this.soilTemperature2 = this.soilSumTemperature2 / this.times ;
|
this.soilTemperature3 = this.soilSumTemperature3 / this.times ;
|
this.soilTemperature4 = this.soilSumTemperature4 / this.times ;
|
this.soilTemperature5 = this.soilSumTemperature5 / this.times ;
|
}
|
|
}
|