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 com.doumee.dao.business.model.CompanyDepartment;
|
import com.doumee.dao.business.model.CompanyPermission;
|
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 = "组织编码")
|
private Integer departmentId;
|
@ApiModelProperty(value = "类型 0平台用户 1企业用户 2商户用户")
|
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 = "微信小程序OPENID")
|
private String openid;
|
|
@ApiModelProperty(value = "是否主管 0否 1是", example = "1")
|
@TableField(exist = false)
|
private Integer headStatus;
|
|
@ApiModelProperty(value = "所属企业信息")
|
@TableField(exist = false)
|
private Company company;
|
|
|
@ApiModelProperty(value = "展示的企业信息")
|
@TableField(exist = false)
|
private Company showCompany;
|
|
|
@ApiModelProperty(value = "所属组织对象")
|
@TableField(exist = false)
|
private CompanyDepartment companyDepartment;
|
|
@ApiModelProperty(value = "平台管理员权限内企业编码集合")
|
@TableField(exist = false)
|
private List<Integer> companyIdList;
|
|
@ApiModelProperty(value = "企业用户 - 可查看组织数据")
|
@TableField(exist = false)
|
private List<CompanyPermission> companyPermissionList;
|
|
@ApiModelProperty(value = "数据权限内组织编码集合")
|
@TableField(exist = false)
|
private List<Integer> departIdList;
|
|
}
|