86 lines
2.9 KiB
Java
86 lines
2.9 KiB
Java
package com.gunshi.project.xyt.model;
|
||
|
||
import com.baomidou.mybatisplus.annotation.IdType;
|
||
import com.baomidou.mybatisplus.annotation.TableField;
|
||
import com.baomidou.mybatisplus.annotation.TableId;
|
||
import com.baomidou.mybatisplus.annotation.TableName;
|
||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||
import com.gunshi.core.dateformat.DateFormatString;
|
||
import lombok.Data;
|
||
import lombok.extern.slf4j.Slf4j;
|
||
|
||
import java.math.BigDecimal;
|
||
import java.math.RoundingMode;
|
||
import java.text.SimpleDateFormat;
|
||
import java.util.Date;
|
||
|
||
/**
|
||
* @author lyf
|
||
* @since 2025-04-25
|
||
*/
|
||
@Data
|
||
@TableName("public.res_brief_r")
|
||
@Slf4j
|
||
public class ResBriefR {
|
||
@TableId(value="id", type= IdType.AUTO)
|
||
private Integer id;
|
||
@TableField
|
||
private BigDecimal drp24Sum;
|
||
@TableField
|
||
private String sumStnm;
|
||
@TableField
|
||
private BigDecimal drp24Max;
|
||
@TableField
|
||
private String maxStnm;
|
||
@TableField
|
||
@JsonFormat(pattern = DateFormatString.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8")
|
||
private Date maxTm;
|
||
@TableField
|
||
private BigDecimal rz8;
|
||
@TableField
|
||
private BigDecimal rzYesterday8;
|
||
@TableField
|
||
private BigDecimal w;
|
||
@TableField
|
||
@JsonFormat(pattern = DateFormatString.YYYY_MM_DD, timezone = "GMT+8")
|
||
private Date date;
|
||
@TableField
|
||
//设计洪水位
|
||
private BigDecimal flLowLimLev;
|
||
@TableField(exist = false)
|
||
private String brief;
|
||
|
||
public String getBrief() {
|
||
|
||
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy年MM月dd日");
|
||
SimpleDateFormat sdf2 = new SimpleDateFormat("dd日HH时");
|
||
BigDecimal gap;
|
||
if (rz8 != null && rzYesterday8 != null) {
|
||
gap = rz8.subtract(rzYesterday8);
|
||
} else {
|
||
gap = null;
|
||
}
|
||
String dir;
|
||
if (gap != null && gap.compareTo(BigDecimal.ZERO) > 0) {
|
||
dir = "上涨";
|
||
} else if (gap != null && gap.compareTo(BigDecimal.ZERO) < 0) {
|
||
dir = "下跌";
|
||
} else {
|
||
dir = "上涨";
|
||
}
|
||
return String.format("%s08时,过去24小时最大累计降雨量%smm(%s),最大点雨量%smm/h(%s,%s)。当前水库水位%sm(汛限水位%sm),较昨日%s%sm,库容达%s万m³",
|
||
date == null ? "" : sdf1.format(date),
|
||
drp24Sum == null ? "" : drp24Sum.setScale(1, RoundingMode.DOWN),
|
||
sumStnm == null ? "" : sumStnm,
|
||
drp24Max == null ? "" : drp24Max.setScale(1, RoundingMode.DOWN),
|
||
maxStnm == null ? "" : maxStnm,
|
||
maxTm == null ? "" : sdf2.format(maxTm),
|
||
rz8 == null ? "" : rz8.setScale(2, RoundingMode.DOWN),
|
||
flLowLimLev == null ? "" : flLowLimLev.setScale(0, RoundingMode.DOWN),
|
||
gap == null ? "" :dir,
|
||
gap == null ? "" : gap.setScale(2, RoundingMode.DOWN),
|
||
w == null ? "" : w.setScale(2, RoundingMode.DOWN)
|
||
);
|
||
}
|
||
}
|