package com.doumee.dao.system.model; 
 | 
  
 | 
import com.baomidou.mybatisplus.annotation.TableField; 
 | 
import com.baomidou.mybatisplus.annotation.TableName; 
 | 
import com.doumee.core.constants.OperaType; 
 | 
import com.doumee.dao.business.model.Company; 
 | 
import io.swagger.annotations.ApiModel; 
 | 
import io.swagger.annotations.ApiModelProperty; 
 | 
import com.baomidou.mybatisplus.annotation.IdType; 
 | 
import com.baomidou.mybatisplus.annotation.TableId; 
 | 
import lombok.Data; 
 | 
import com.fasterxml.jackson.annotation.JsonFormat; 
 | 
  
 | 
import javax.validation.constraints.Email; 
 | 
import javax.validation.constraints.NotBlank; 
 | 
import javax.validation.constraints.NotNull; 
 | 
import javax.validation.constraints.Pattern; 
 | 
import java.io.Serializable; 
 | 
import java.util.Date; 
 | 
import java.util.List; 
 | 
  
 | 
/** 
 | 
 * 系统用户 
 | 
 * @author Eva.Caesar Liu 
 | 
 * @date 2023/03/21 14:49 
 | 
 */ 
 | 
@Data 
 | 
@ApiModel("系统用户") 
 | 
@TableName("`SYSTEM_USER`") 
 | 
public class SystemUser implements Serializable { 
 | 
  
 | 
    @TableId(type = IdType.AUTO) 
 | 
    @ApiModelProperty(value = "主键", example = "1") 
 | 
    @NotNull(message = "主键不能为空", groups = {OperaType.Update.class}) 
 | 
    private Integer id; 
 | 
  
 | 
    @ApiModelProperty(value = "用户名") 
 | 
    @NotBlank(message = "用户名不能为空") 
 | 
    private String username; 
 | 
  
 | 
    @ApiModelProperty(value = "员工名称") 
 | 
    @NotBlank(message = "姓名不能为空", groups = {OperaType.Create.class, OperaType.Update.class}) 
 | 
    private String realname; 
 | 
  
 | 
    @ApiModelProperty(value = "工号") 
 | 
    private String empNo; 
 | 
  
 | 
    @ApiModelProperty(value = "生日") 
 | 
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") 
 | 
    private Date birthday; 
 | 
  
 | 
    @ApiModelProperty(value = "性别") 
 | 
    @NotBlank(message = "性别不能为空") 
 | 
    private String sex; 
 | 
  
 | 
    @ApiModelProperty(value = "邮箱") 
 | 
    @Email(message = "邮箱格式不正确") 
 | 
    private String email; 
 | 
  
 | 
    @ApiModelProperty(value = "手机号码") 
 | 
    @Pattern(message = "手机号码格式不正确", regexp = "^\\d*$", groups = {OperaType.Create.class, OperaType.Update.class}) 
 | 
    private String mobile; 
 | 
  
 | 
    @ApiModelProperty(value = "头像") 
 | 
    @NotBlank(message = "头像不能为空") 
 | 
    private String avatar; 
 | 
  
 | 
    @ApiModelProperty(value = "企业编码") 
 | 
    private Integer companyId; 
 | 
    @ApiModelProperty(value = "类型 0平台用户 1企业用户") 
 | 
    private Integer type; 
 | 
  
 | 
    @ApiModelProperty(value = "密码") 
 | 
    @NotBlank(message = "初始密码不能为空") 
 | 
    private String password; 
 | 
  
 | 
    @ApiModelProperty(value = "盐") 
 | 
    private String salt; 
 | 
  
 | 
    @ApiModelProperty(value = "是否为固定用户", hidden = true) 
 | 
    private Boolean fixed; 
 | 
  
 | 
    @ApiModelProperty(value = "创建时间") 
 | 
    private Date createTime; 
 | 
  
 | 
    @ApiModelProperty(value = "更新时间") 
 | 
    private Date updateTime; 
 | 
  
 | 
    @ApiModelProperty(value = "创建人", example = "1", hidden = true) 
 | 
    private Integer createUser; 
 | 
  
 | 
    @ApiModelProperty(value = "更新人", example = "1", hidden = true) 
 | 
    private Integer updateUser; 
 | 
  
 | 
  
 | 
    @ApiModelProperty(value = "是否已删除", hidden = true) 
 | 
    private Boolean deleted; 
 | 
  
 | 
    @ApiModelProperty(value = "0 启用 1 禁用") 
 | 
    private Integer status; 
 | 
  
 | 
    @ApiModelProperty(value = "所属企业信息对") 
 | 
    @TableField(exist = false) 
 | 
    private Company company; 
 | 
  
 | 
    @ApiModelProperty(value = "权限内企业编码集合") 
 | 
    @TableField(exist = false) 
 | 
    private List<Integer> companyIdList; 
 | 
  
 | 
} 
 |