2024-09-23 17:50:28 +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;
|
|
|
|
|
|
import com.gunshi.core.dateformat.DateFormatString;
|
|
|
|
|
|
import com.gunshi.project.xyt.validate.markers.Insert;
|
|
|
|
|
|
import com.gunshi.project.xyt.validate.markers.Update;
|
2024-09-25 17:15:41 +08:00
|
|
|
|
import com.ruoyi.common.annotation.Excel;
|
2024-09-23 17:50:28 +08:00
|
|
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
|
|
|
|
|
import jakarta.validation.constraints.NotBlank;
|
|
|
|
|
|
import jakarta.validation.constraints.NotNull;
|
|
|
|
|
|
import jakarta.validation.constraints.Pattern;
|
|
|
|
|
|
import jakarta.validation.constraints.Size;
|
|
|
|
|
|
import lombok.Data;
|
2024-09-25 11:36:12 +08:00
|
|
|
|
import lombok.EqualsAndHashCode;
|
2024-09-23 17:50:28 +08:00
|
|
|
|
|
|
|
|
|
|
import java.io.Serializable;
|
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* Description:
|
|
|
|
|
|
* Created by XuSan on 2024/9/23.
|
|
|
|
|
|
*
|
|
|
|
|
|
* @author XuSan
|
|
|
|
|
|
* @version 1.0
|
|
|
|
|
|
*/
|
2024-09-25 11:36:12 +08:00
|
|
|
|
@EqualsAndHashCode(callSuper = true)
|
2024-09-23 17:50:28 +08:00
|
|
|
|
@Schema(description="培训计划表")
|
|
|
|
|
|
@Data
|
|
|
|
|
|
@TableName("public.personnel_plan")
|
2024-09-25 11:36:12 +08:00
|
|
|
|
public class PersonnelPlan extends CommUpdate implements Serializable {
|
2024-09-23 17:50:28 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 主键
|
|
|
|
|
|
*/
|
|
|
|
|
|
@TableId(value="id", type= IdType.AUTO)
|
|
|
|
|
|
@Schema(description="主键")
|
|
|
|
|
|
@JsonSerialize(using = ToStringSerializer.class)
|
|
|
|
|
|
private Long id;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 培训班名称
|
|
|
|
|
|
*/
|
2024-09-25 17:15:41 +08:00
|
|
|
|
@Excel(name = "培训班名称",sort = 1)
|
2024-09-23 17:50:28 +08:00
|
|
|
|
@TableField(value="name")
|
|
|
|
|
|
@Schema(description="培训班名称")
|
|
|
|
|
|
@Size(max = 30,message = "培训班名称最大长度要小于 30")
|
|
|
|
|
|
@NotBlank(message = "培训班名称不能为空",groups = {Insert.class, Update.class})
|
|
|
|
|
|
private String name;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 培训主题分类,0:水利,1:岗前培训,2:在岗培训,3:政治学习教育,4:其他
|
|
|
|
|
|
*/
|
|
|
|
|
|
@TableField(value="type")
|
|
|
|
|
|
@Schema(description="培训主题分类,0:水利,1:岗前培训,2:在岗培训,3:政治学习教育,4:其他")
|
2024-09-25 14:02:33 +08:00
|
|
|
|
@NotNull(message = "培训主题不能为空",groups = {Insert.class, Update.class})
|
2024-09-23 17:50:28 +08:00
|
|
|
|
@Pattern(regexp = "^[0-4]$", message = "培训主题分类应为:0:水利,1:岗前培训,2:在岗培训,3:政治学习教育,4:其他")
|
|
|
|
|
|
private Integer type;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 主办单位
|
|
|
|
|
|
*/
|
2024-09-25 17:15:41 +08:00
|
|
|
|
@Excel(name = "主办单位",sort = 4)
|
2024-09-23 17:50:28 +08:00
|
|
|
|
@TableField(value="unit")
|
|
|
|
|
|
@Schema(description="主办单位")
|
|
|
|
|
|
@Size(max = 100,message = "主办单位最大长度要小于 100")
|
|
|
|
|
|
@NotBlank(message = "主办单位不能为空",groups = {Insert.class, Update.class})
|
|
|
|
|
|
private String unit;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 开始培训时间
|
|
|
|
|
|
*/
|
2024-09-25 17:15:41 +08:00
|
|
|
|
@Excel(name = "开始培训时间",sort = 2)
|
2024-09-23 17:50:28 +08:00
|
|
|
|
@Schema(description="开始培训时间 格式:yyyy-MM-dd")
|
2024-09-25 14:02:33 +08:00
|
|
|
|
@NotNull(message = "开始培训时间不能为空")
|
2024-09-23 17:50:28 +08:00
|
|
|
|
@TableField(value="stm")
|
|
|
|
|
|
@JsonFormat(pattern = DateFormatString.YYYY_MM_DD, timezone = "GMT+8")
|
|
|
|
|
|
private Date stm;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 结束培训时间
|
|
|
|
|
|
*/
|
2024-09-25 17:15:41 +08:00
|
|
|
|
@Excel(name = "结束培训时间",sort = 3)
|
2024-09-23 17:50:28 +08:00
|
|
|
|
@Schema(description="结束培训时间 格式:yyyy-MM-dd")
|
2024-09-25 14:02:33 +08:00
|
|
|
|
@NotNull(message = "结束培训时间不能为空")
|
2024-09-23 17:50:28 +08:00
|
|
|
|
@TableField(value="etm")
|
|
|
|
|
|
@JsonFormat(pattern = DateFormatString.YYYY_MM_DD, timezone = "GMT+8")
|
|
|
|
|
|
private Date etm;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 培训天数(天)
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Schema(description="培训天数(天)")
|
|
|
|
|
|
@TableField(value="day")
|
|
|
|
|
|
private Integer day;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 培训期数(期)
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Schema(description="培训期数(期)")
|
|
|
|
|
|
@TableField(value="num")
|
|
|
|
|
|
private Integer num;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 培训地点
|
|
|
|
|
|
*/
|
2024-09-25 17:15:41 +08:00
|
|
|
|
@Excel(name = "培训地点",sort = 6)
|
2024-09-23 17:50:28 +08:00
|
|
|
|
@Schema(description="培训地点")
|
|
|
|
|
|
@TableField(value="addr")
|
|
|
|
|
|
@Size(max = 200,message = "主办单位最大长度要小于 200")
|
|
|
|
|
|
@NotBlank(message = "培训地点不能为空",groups = {Insert.class, Update.class})
|
|
|
|
|
|
private String addr;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 培训内容
|
|
|
|
|
|
*/
|
2024-09-25 17:15:41 +08:00
|
|
|
|
@Excel(name = "培训内容",sort = 5)
|
2024-09-23 17:50:28 +08:00
|
|
|
|
@Schema(description="培训内容")
|
|
|
|
|
|
@TableField(value="content")
|
|
|
|
|
|
@Size(max = 500,message = "培训内容最大长度要小于 500")
|
|
|
|
|
|
@NotBlank(message = "培训内容不能为空",groups = {Insert.class, Update.class})
|
|
|
|
|
|
private String content;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 培训范围
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Schema(description="培训范围")
|
|
|
|
|
|
@TableField(value="scope")
|
|
|
|
|
|
@Size(max = 500,message = "培训范围最大长度要小于 500")
|
|
|
|
|
|
@NotBlank(message = "培训范围不能为空",groups = {Insert.class, Update.class})
|
|
|
|
|
|
private String scope;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 参训人员
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Schema(description="参训人员")
|
|
|
|
|
|
@TableField(value="trainees")
|
|
|
|
|
|
@Size(max = 200,message = "参训人员最大长度要小于 200")
|
|
|
|
|
|
private String trainees;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 参训人数(人)
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Schema(description="参训人数(人)")
|
|
|
|
|
|
@TableField(value="num_people")
|
|
|
|
|
|
@Size(max = 200,message = "参训人员最大长度要小于 200")
|
2024-09-25 14:02:33 +08:00
|
|
|
|
@NotNull(message = "参训人数不能为空",groups = {Insert.class, Update.class})
|
2024-09-23 17:50:28 +08:00
|
|
|
|
private Integer numPeople;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 联系人
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Schema(description="联系人")
|
|
|
|
|
|
@TableField(value="contacts")
|
|
|
|
|
|
@Size(max = 50,message = "联系人最大长度要小于 50")
|
|
|
|
|
|
private String contacts;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 联系电话
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Schema(description="联系电话")
|
|
|
|
|
|
@TableField(value="contact_number")
|
|
|
|
|
|
@Size(max = 30,message = "联系电话最大长度要小于 30")
|
|
|
|
|
|
private String contactNumber;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 填报人
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Schema(description="填报人")
|
|
|
|
|
|
@TableField(value="applicant")
|
|
|
|
|
|
@Size(max = 50,message = "填报人最大长度要小于 50")
|
2024-09-25 17:15:41 +08:00
|
|
|
|
@Excel(name = "填报人",sort = 7)
|
2024-09-23 17:50:28 +08:00
|
|
|
|
private String applicant;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 状态
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Schema(description="状态 0:无效 1:有效")
|
|
|
|
|
|
@TableField(value="status")
|
|
|
|
|
|
@Size(max = 2,message = "状态最大长度要小于 2")
|
|
|
|
|
|
@NotNull(message = "状态不能为空",groups = {Insert.class, Update.class})
|
|
|
|
|
|
@Pattern(regexp = "^[0-1]$", message = "状态应为:0:无效 1:有效")
|
|
|
|
|
|
private Integer status;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 登记日期
|
|
|
|
|
|
*/
|
|
|
|
|
|
@Schema(description="登记日期")
|
|
|
|
|
|
@TableField(value="reg_date")
|
|
|
|
|
|
private Date regDate;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@TableField(exist = false)
|
|
|
|
|
|
@Schema(description = "文件集合")
|
|
|
|
|
|
private List<FileAssociations> files;
|
|
|
|
|
|
}
|