package com.ruoyi.common.core.domain.entity; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; import javax.validation.constraints.*; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.beans.factory.annotation.Value; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.annotation.Excel.ColumnType; import com.ruoyi.common.annotation.Excel.Type; import com.ruoyi.common.annotation.Excels; import com.ruoyi.common.core.domain.BaseEntity; import com.ruoyi.common.xss.Xss; import org.springframework.stereotype.Component; /** * 用户对象 sys_user * * @author ruoyi */ @Data @Component @ApiModel(value = "SysUser", description = "用户对象") public class SysUser extends BaseEntity { private static final long serialVersionUID = 1L; // // @Value("${isAdmin}") // private List isAdmin; /** * 用户ID */ @ApiModelProperty(value = "主键") @Excel(name = "用户序号", cellType = ColumnType.NUMERIC, prompt = "用户编号") private Long userId; /** * his用户ID */ @ApiModelProperty(value = "his用户ID") private String hisUserId; /** * 部门ID */ @ApiModelProperty(value = "部门ID") @Excel(name = "部门编号", type = Type.IMPORT) private Long deptId; /** * 用户账号 */ @ApiModelProperty(value = "用户账号") @Excel(name = "登录名称") private String userName; /** * 患者范围:0:全部;1:科室2:病区; */ @ApiModelProperty(value = "患者范围:0:全部;1:科室2:病区;") @Excel(name = "患者范围:0:全部;1:科室2:病区;") private String searchscope; /** * 用户昵称 */ @ApiModelProperty(value = "用户昵称") @Excel(name = "用户名称") private String nickName; /** * 职位 */ @ApiModelProperty(value = "职位") @Excel(name = "职位") private String title; /** * 用户邮箱 */ @ApiModelProperty(value = "用户邮箱") @Excel(name = "用户邮箱") private String email; /** * 用户类型(00系统用户) */ @ApiModelProperty(value = "用户类型(00系统用户)") @Excel(name = "用户类型(00系统用户)") private String userType; /** * 手机号码 */ @ApiModelProperty(value = "手机号码") @Excel(name = "手机号码") private String phonenumber; /** * 身份证号 */ @ApiModelProperty(value = "身份证号") @Excel(name = "身份证号") private String idCard; /** * 用户性别 */ @ApiModelProperty(value = "用户性别") @Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知") private String sex; /** * 用户头像 */ @ApiModelProperty(value = "用户头像") private String avatar; /** * 密码 */ @ApiModelProperty(value = "密码") private String password; /** * 帐号状态(0正常 1停用) */ @ApiModelProperty(value = "帐号状态(0正常 1停用)") @Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用") private String status; /** * 删除标志(0代表存在 2代表删除) */ @ApiModelProperty(value = "删除标志(0代表存在 2代表删除)") private String delFlag; /** * 最后登录IP */ @ApiModelProperty(value = "最后登录IP") @Excel(name = "最后登录IP", type = Type.EXPORT) private String loginIp; /** * 最后登录时间 */ @ApiModelProperty(value = "最后登录时间") @Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT) private Date loginDate; /** * 院区信息 */ @ApiModelProperty(value = "院区信息") private String hospInfo; /** * 科室信息 */ @ApiModelProperty(value = "科室信息") private String deptInfo; /** * 部门对象 */ @ApiModelProperty(value = "部门对象") @Excels({@Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT), @Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT)}) private SysDept dept; @ApiModelProperty(value = "部门集合") private List depts; @ApiModelProperty(value = "病区编码集合") private List wardCodes; @ApiModelProperty(value = "部门编码集合") private List deptCodes; /** * 角色对象 */ @ApiModelProperty(value = "角色对象") private List roles; /** * 角色组 */ @ApiModelProperty(value = "角色组") private Long[] roleIds; /** * 岗位组 */ @ApiModelProperty(value = "岗位组") private Long[] postIds; /** * 角色ID */ @ApiModelProperty(value = "角色ID") private Long roleId; /** * 身份证号 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "身份证号") private Date birthday; /** * 工作电话 */ @ApiModelProperty(value = "工作电话") private String jobPhone; /** * 病区编码 */ @ApiModelProperty("病区集合") private List> belongWards = new ArrayList(); /** * 科室编码 */ @ApiModelProperty("科室集合") private List> belongDepts = new ArrayList(); public SysUser() { } public List> getBelongWards() { return this.belongWards; } public void setBelongWards(List> belongWards) { this.belongWards = belongWards; } public List> getBelongDepts() { return this.belongDepts; } public List getWardCodes() { return this.wardCodes; } public void setWardCodes(List wardCodes) { this.wardCodes = wardCodes; } public List getDeptCodes() { return this.deptCodes; } public void setDeptCodes(List deptCodes) { this.deptCodes = deptCodes; } public void setBelongDepts(List> belongDepts) { this.belongDepts = belongDepts; } public String getSearchscope() { return this.searchscope; } public void setSearchscope(String searchscope) { this.searchscope = searchscope; } public String getHospInfo() { return this.hospInfo; } public void setHospInfo(String hospInfo) { this.hospInfo = hospInfo; } public String getDeptInfo() { return this.deptInfo; } public void setDeptInfo(String deptInfo) { this.deptInfo = deptInfo; } public SysUser(Long userId) { this.userId = userId; } public Long getUserId() { return this.userId; } public void setUserId(Long userId) { this.userId = userId; } // public boolean isAdmin() { // return isAdmin(this.userId); // } // // public boolean isAdmin(Long userId) { // return isAdmin.contains(userId); // } public Long getDeptId() { return this.deptId; } public void setDeptId(Long deptId) { this.deptId = deptId; } @Xss(message = "用户昵称不能包含脚本字符") @Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符") public String getNickName() { return this.nickName; } public void setNickName(String nickName) { this.nickName = nickName; } @Xss(message = "用户账号不能包含脚本字符") @NotBlank(message = "用户账号不能为空") @Size(min = 0, max = 30, message = "用户账号长度不能超过30个字符") public String getUserName() { return this.userName; } public void setUserName(String userName) { this.userName = userName; } @Email(message = "邮箱格式不正确") @Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符") public String getEmail() { return this.email; } public void setUserType(String userType) { this.userType = userType; } public String getUserType() { return this.userType; } public void setEmail(String email) { this.email = email; } @Size(min = 0, max = 11, message = "手机号码长度不能超过11个字符") public String getPhonenumber() { return this.phonenumber; } public void setPhonenumber(String phonenumber) { this.phonenumber = phonenumber; } public String getSex() { return this.sex; } public void setSex(String sex) { this.sex = sex; } public String getAvatar() { return this.avatar; } public void setAvatar(String avatar) { this.avatar = avatar; } public String getPassword() { return this.password; } public void setPassword(String password) { this.password = password; } public String getStatus() { return this.status; } public void setStatus(String status) { this.status = status; } public String getDelFlag() { return this.delFlag; } public void setDelFlag(String delFlag) { this.delFlag = delFlag; } public String getLoginIp() { return this.loginIp; } public void setLoginIp(String loginIp) { this.loginIp = loginIp; } public Date getLoginDate() { return this.loginDate; } public void setLoginDate(Date loginDate) { this.loginDate = loginDate; } public SysDept getDept() { return this.dept; } public void setDept(SysDept dept) { this.dept = dept; } public List getRoles() { return this.roles; } public void setRoles(List roles) { this.roles = roles; } public Long[] getRoleIds() { return this.roleIds; } public void setRoleIds(Long[] roleIds) { this.roleIds = roleIds; } public Long[] getPostIds() { return this.postIds; } public void setPostIds(Long[] postIds) { this.postIds = postIds; } public Long getRoleId() { return this.roleId; } public void setRoleId(Long roleId) { this.roleId = roleId; } public List getDepts() { return this.depts; } public void setDepts(List depts) { this.depts = depts; } public String getHisUserId() { return hisUserId; } public void setHisUserId(String hisUserId) { this.hisUserId = hisUserId; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getIdCard() { return idCard; } public void setIdCard(String idCard) { this.idCard = idCard; } public Date getBirthday() { return birthday; } public void setBirthday(Date birthday) { this.birthday = birthday; } public String getJobPhone() { return jobPhone; } public void setJobPhone(String jobPhone) { this.jobPhone = jobPhone; } public String toString() { return (new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)).append("userId", this.getUserId()).append("deptId", this.getDeptId()).append("userName", this.getUserName()).append("nickName", this.getNickName()).append("email", this.getEmail()).append("phonenumber", this.getPhonenumber()).append("sex", this.getSex()).append("avatar", this.getAvatar()).append("password", this.getPassword()).append("status", this.getStatus()).append("delFlag", this.getDelFlag()).append("loginIp", this.getLoginIp()).append("loginDate", this.getLoginDate()).append("createBy", this.getCreateBy()).append("createTime", this.getCreateTime()).append("updateBy", this.getUpdateBy()).append("updateTime", this.getUpdateTime()).append("remark", this.getRemark()).append("dept", this.getDept()).toString(); } }