package com.gunshi.project.ss.model; 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.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.gunshi.core.dateformat.DateFormatString; import com.gunshi.project.ss.common.validate.markers.Insert; import com.gunshi.project.ss.common.validate.markers.Update; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; import lombok.Data; import java.math.BigDecimal; import java.util.Date; import java.util.List; @Schema(description="白蚁-日志记录") @Data @TableName("by_log") public class ByLog { /** * 主键 */ @TableId(value = "id") @NotNull(message = "id不能为空",groups = Update.class) @JsonSerialize(using = ToStringSerializer.class) private Long id; @TableField(value = "log_name") @NotNull(message = "日志名称不能为空",groups = {Insert.class, Update.class}) @Schema(description = "日志名称") private String logName; @TableField(value = "pre_date") @NotNull(message = "防治日期",groups = {Insert.class, Update.class}) @Schema(description = "防治日期") @JsonFormat(pattern = DateFormatString.YYYY_MM_DD, timezone = "GMT+8") private Date preDate; @TableField(value = "fill_time") @Schema(description = "填报时间 (自动生成)") @JsonFormat(pattern = DateFormatString.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8") private Date fillTime; @TableField(value = "total_cost") @Schema(description = "总花费") private BigDecimal totalCost; @TableField(value = "remark") @Schema(description = "备注") private String remark; @TableField(exist = false) private List details; @TableField(exist = false) private List files; }