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

114 lines
3.7 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.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.gunshi.core.dateformat.DateFormatString;
import com.gunshi.project.xyt.validate.markers.Insert;
import com.gunshi.project.xyt.validate.markers.Update;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* 描述: 系统字典表
* author: xusan
* date: 2024-07-08 17:34:26
*/
@Schema(description="系统字典表")
@Data
@TableName("public.sys_dict_b")
public class SysDictB implements Serializable {
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value="id", type= IdType.AUTO)
@Schema(description="ID")
// @Size(max = 0,message = "ID最大长度要小于 0")
@NotNull(message = "ID不能为空",groups = { Update.class})
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* 字典名称
*/
@TableField(value="dict_nm")
@Schema(description="字典名称")
@Size(max = 250,message = "字典名称最大长度要小于 250")
@NotBlank(message = "字典名称不能为空",groups = {Insert.class, Update.class})
private String dictNm;
/**
* 字典编码
*/
@TableField(value="dict_cd")
@Schema(description="字典编码")
@Size(max = 250,message = "字典编码最大长度要小于 250")
@NotBlank(message = "字典编码不能为空",groups = {Insert.class, Update.class})
private String dictCd;
/**
* 父id
*/
@TableField(value="pid")
@Schema(description="父id")
// @Size(max = 0,message = "父id最大长度要小于 0")
private Long pid;
/**
* 排序字段
*/
@TableField(value="sort_on")
@Schema(description="排序字段")
// @Size(max = 0,message = "排序字段最大长度要小于 0")
// @NotNull(message = "排序字段不能为空",groups = {Insert.class, Update.class})
private Integer sortOn;
/**
* 创建时间
*/
@TableField(value="create_tm")
@Schema(description="创建时间")
// @Size(max = 0,message = "创建时间最大长度要小于 0")
// @NotBlank(message = "创建时间不能为空")
@JsonFormat(pattern = DateFormatString.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8")
private Date createTm;
/**
* 修改时间
*/
@TableField(value="tm")
@Schema(description="修改时间")
// @Size(max = 0,message = "修改时间最大长度要小于 0")
// @NotBlank(message = "修改时间不能为空")
@JsonFormat(pattern = DateFormatString.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8")
private Date tm;
/**
* 状态 1启用 0禁用
*/
@TableField(value="status")
@Schema(description="状态 1启用 0禁用")
// @Size(max = 0,message = "状态 1启用 0禁用最大长度要小于 0")
private Integer status;
@TableField(exist = false)
@Schema(description="子集")
private List<SysDictB> children;
}