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

114 lines
3.7 KiB
Java
Raw Normal View History

2024-07-08 17:47:02 +08:00
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;
2024-07-08 17:47:02 +08:00
import com.gunshi.core.dateformat.DateFormatString;
import com.gunshi.project.xyt.validate.markers.Insert;
import com.gunshi.project.xyt.validate.markers.Update;
2024-07-08 17:47:02 +08:00
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
2024-07-08 17:47:02 +08:00
import jakarta.validation.constraints.Size;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
2024-07-08 17:47:02 +08:00
/**
* :
* 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")
2024-07-09 10:38:39 +08:00
// @Size(max = 0,message = "ID最大长度要小于 0")
@NotNull(message = "ID不能为空",groups = { Update.class})
@JsonSerialize(using = ToStringSerializer.class)
2024-07-08 17:47:02 +08:00
private Long id;
/**
*
*/
@TableField(value="dict_nm")
@Schema(description="字典名称")
@Size(max = 250,message = "字典名称最大长度要小于 250")
@NotBlank(message = "字典名称不能为空",groups = {Insert.class, Update.class})
2024-07-08 17:47:02 +08:00
private String dictNm;
/**
*
*/
@TableField(value="dict_cd")
@Schema(description="字典编码")
@Size(max = 250,message = "字典编码最大长度要小于 250")
@NotBlank(message = "字典编码不能为空",groups = {Insert.class, Update.class})
2024-07-08 17:47:02 +08:00
private String dictCd;
/**
* id
*/
@TableField(value="pid")
@Schema(description="父id")
2024-07-09 10:38:39 +08:00
// @Size(max = 0,message = "父id最大长度要小于 0")
2024-07-08 17:47:02 +08:00
private Long pid;
/**
*
*/
@TableField(value="sort_on")
@Schema(description="排序字段")
2024-07-09 10:38:39 +08:00
// @Size(max = 0,message = "排序字段最大长度要小于 0")
// @NotNull(message = "排序字段不能为空",groups = {Insert.class, Update.class})
2024-07-08 17:47:02 +08:00
private Integer sortOn;
/**
*
*/
@TableField(value="create_tm")
@Schema(description="创建时间")
2024-07-09 10:38:39 +08:00
// @Size(max = 0,message = "创建时间最大长度要小于 0")
// @NotBlank(message = "创建时间不能为空")
2024-07-08 17:47:02 +08:00
@JsonFormat(pattern = DateFormatString.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8")
private Date createTm;
/**
*
*/
@TableField(value="tm")
@Schema(description="修改时间")
2024-07-09 10:38:39 +08:00
// @Size(max = 0,message = "修改时间最大长度要小于 0")
// @NotBlank(message = "修改时间不能为空")
2024-07-08 17:47:02 +08:00
@JsonFormat(pattern = DateFormatString.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8")
private Date tm;
/**
* 1 0
*/
@TableField(value="status")
@Schema(description="状态 1启用 0禁用")
2024-07-09 10:38:39 +08:00
// @Size(max = 0,message = "状态 1启用 0禁用最大长度要小于 0")
2024-07-08 17:47:02 +08:00
private Integer status;
@TableField(exist = false)
@Schema(description="子集")
private List<SysDictB> children;
2024-07-08 17:47:02 +08:00
}