gunshi-project-ss/src/main/java/com/gunshi/project/xyt/model/ResBriefR.java

86 lines
2.9 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

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)
);
}
}