package com.gkhy.assess.system.domain; import com.baomidou.mybatisplus.annotation.*; import java.io.Serializable; import java.time.LocalDateTime; import com.fasterxml.jackson.annotation.JsonInclude; import com.gkhy.assess.common.domain.BaseEntity; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; import lombok.experimental.Accessors; import org.hibernate.validator.constraints.Length; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import javax.validation.constraints.Pattern; import static com.fasterxml.jackson.annotation.JsonInclude.Include.NON_NULL; /** *

* 系统专家信息表 *

* * @author kzy * @since 2023-11-27 16:33:33 */ @Getter @Setter @TableName("sys_expert_info") @Accessors(chain = true) @ApiModel(value = "SysExpertInfo对象", description = "系统专家信息表") @JsonInclude(NON_NULL) public class SysExpertInfo extends BaseEntity { private static final long serialVersionUID = 1L; @ApiModelProperty("主键") @TableId(value = "id", type = IdType.AUTO) private Long id; @NotBlank(message = "专家名称不能为空") @Length(min=1,max=20,message = "专家名称不能超过20个字") @ApiModelProperty("专家名称") @TableField("name") private String name; @NotNull(message ="性别不能为空" ) @ApiModelProperty("性别(0男,1女,2未知,默认2)") @TableField("sex") private Integer sex; @NotNull(message ="大类别不能为空" ) @ApiModelProperty("大类别id") @TableField("big_classify") private Long bigClassify; @NotNull(message ="小类别不能为空" ) @ApiModelProperty("小类别id") @TableField("small_classify") private Long smallClassify; @NotNull(message ="出生日期不能为空" ) @ApiModelProperty("出生日期") @TableField("birthday") private LocalDateTime birthday; @NotBlank(message ="手机号不能为空" ) @Length(min = 11, max = 11, message = "手机号只能为11位") @Pattern(regexp = "^[1][3,4,5,6,7,8,9][0-9]{9}$",message = "手机号码有误!") @ApiModelProperty("手机号") @TableField("phone") private String phone; @NotBlank(message ="职称不能为空" ) @ApiModelProperty("职称") @TableField("title") private String title; @NotBlank(message ="电子照片不能为空" ) @ApiModelProperty("电子照片") @TableField("electronic_photo") private String electronicPhoto; @NotBlank(message ="身份证号码不能为空" ) @Length(min = 18, max = 18, message = "身份证只能为18位") @ApiModelProperty("身份证号码") @TableField("id_card") private String idCard; @NotNull(message ="在岗情况不能为空" ) @ApiModelProperty("在岗情况(0在岗,1退休)") @TableField("duty_status") private Integer dutyStatus; @NotBlank(message ="单位名称不能为空" ) @Length(min=1,max=30,message = "专家名称不能超过30个字") @ApiModelProperty("单位名称") @TableField("company_name") private String companyName; @ApiModelProperty("单位地址") @TableField("company_address") private String companyAddress; @ApiModelProperty("部门名称") @TableField("dept_name") private String deptName; @ApiModelProperty("职务") @TableField("job") private String job; @ApiModelProperty("单位电话") @TableField("company_telephone") private String companyTelephone; @ApiModelProperty("传真号") @TableField("fax_num") private String faxNum; @ApiModelProperty("邮箱") @TableField("email") private String email; @ApiModelProperty("毕业学校") @TableField("graduation_school") private String graduationSchool; @NotBlank(message ="最高学历不能为空" ) @Length(min=1,max=10,message = "最高学历不能超过10个字") @ApiModelProperty("最高学历") @TableField("degree") private String degree; @ApiModelProperty("专业") @TableField("speciality") private String speciality; @ApiModelProperty("现在从事专业或方向") @TableField("current_profession") private String currentProfession; @ApiModelProperty("支撑方向安全生产") @TableField("support_direction_safety") private String supportDirectionSafety; @ApiModelProperty("支撑方向防灾救灾") @TableField("support_direction_prevention") private String supportDirectionPrevention; @ApiModelProperty("支撑方向应急救援") @TableField("support_direction_emergency") private String supportDirectionEmergency; @ApiModelProperty("简历") @TableField("resume_key") private String resumeKey; @ApiModelProperty("论文情况") @TableField("paper_situation_key") private String paperSituationKey; @ApiModelProperty("奖励") @TableField("reward_key") private String rewardKey; @ApiModelProperty("成绩成果") @TableField("achievement_key") private String achievementKey; @ApiModelProperty("专家个人意见") @TableField("personal_opinion_key") private String personalOpinionKey; @ApiModelProperty("推荐单位意见") @TableField("recommend_unit_opinion_key") private String recommendUnitOpinionKey; //来源(1问卷,2系统) @NotNull(message ="来源不能为空" ) @ApiModelProperty("来源(1问卷,2系统)") @TableField("source") private Integer source; @ApiModelProperty("删除标志(0代表存在,1代表删除,默认0)") @TableField("del_flag") private Integer delFlag; @ApiModelProperty("审批状态(0暂存,1审核中,2审批通过,3审批驳回,4已作废 默认1)") @TableField("state") private Integer state; @Version @ApiModelProperty("乐观锁") @TableField("version") private Integer version; @ApiModelProperty("专家领域") @TableField("domain") private String domain; @ApiModelProperty("入库分级") @TableField("level") private String level; }