package com.ruoyi.common.core.domain.entity; 
 | 
  
 | 
import com.fasterxml.jackson.annotation.JsonFormat; 
 | 
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 io.swagger.annotations.ApiModel; 
 | 
import io.swagger.annotations.ApiModelProperty; 
 | 
import lombok.Data; 
 | 
import org.apache.commons.lang3.builder.ToStringBuilder; 
 | 
import org.apache.commons.lang3.builder.ToStringStyle; 
 | 
import org.springframework.stereotype.Component; 
 | 
  
 | 
import javax.validation.constraints.Email; 
 | 
import javax.validation.constraints.NotBlank; 
 | 
import javax.validation.constraints.Size; 
 | 
import java.util.ArrayList; 
 | 
import java.util.Date; 
 | 
import java.util.List; 
 | 
import java.util.Map; 
 | 
  
 | 
/** 
 | 
 * 用户对象 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<Long> isAdmin; 
 | 
  
 | 
    /** 
 | 
     * 用户ID 
 | 
     */ 
 | 
    @ApiModelProperty(value = "主键") 
 | 
    @Excel(name = "用户序号", cellType = ColumnType.NUMERIC, prompt = "用户编号") 
 | 
    private Long userId; 
 | 
  
 | 
    /** 
 | 
     * his用户ID 
 | 
     */ 
 | 
    @ApiModelProperty(value = "his用户ID") 
 | 
    private String hisUserId; 
 | 
  
 | 
    /** 
 | 
     * his用户ID 
 | 
     */ 
 | 
    @ApiModelProperty(value = "his用户ID") 
 | 
    private String userCode; 
 | 
  
 | 
    /** 
 | 
     * 部门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 deptCode; 
 | 
  
 | 
    /** 
 | 
     * 部门名称 
 | 
     */ 
 | 
    @ApiModelProperty(value = "部门名称") 
 | 
    @Excel(name = "部门名称") 
 | 
    private String deptName; 
 | 
  
 | 
    /** 
 | 
     * 用户邮箱 
 | 
     */ 
 | 
    @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<Long> depts; 
 | 
  
 | 
    @ApiModelProperty(value = "病区编码集合") 
 | 
    private List<String> wardCodes; 
 | 
  
 | 
    @ApiModelProperty(value = "部门编码集合") 
 | 
    private List<String> deptCodes; 
 | 
  
 | 
    /** 
 | 
     * 角色对象 
 | 
     */ 
 | 
    @ApiModelProperty(value = "角色对象") 
 | 
    private List<SysRole> 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<Map<String, Object>> belongWards = new ArrayList(); 
 | 
  
 | 
    /** 
 | 
     * 科室编码 
 | 
     */ 
 | 
    @ApiModelProperty("科室集合") 
 | 
    private List<Map<String, Object>> belongDepts = new ArrayList(); 
 | 
  
 | 
  
 | 
    public SysUser() { 
 | 
  
 | 
    } 
 | 
  
 | 
    public List<Map<String, Object>> getBelongWards() { 
 | 
        return this.belongWards; 
 | 
    } 
 | 
  
 | 
    public void setBelongWards(List<Map<String, Object>> belongWards) { 
 | 
        this.belongWards = belongWards; 
 | 
    } 
 | 
  
 | 
    public List<Map<String, Object>> getBelongDepts() { 
 | 
        return this.belongDepts; 
 | 
    } 
 | 
  
 | 
    public List<String> getWardCodes() { 
 | 
        return this.wardCodes; 
 | 
    } 
 | 
  
 | 
    public void setWardCodes(List<String> wardCodes) { 
 | 
        this.wardCodes = wardCodes; 
 | 
    } 
 | 
  
 | 
    public List<String> getDeptCodes() { 
 | 
        return this.deptCodes; 
 | 
    } 
 | 
  
 | 
    public void setDeptCodes(List<String> deptCodes) { 
 | 
        this.deptCodes = deptCodes; 
 | 
    } 
 | 
  
 | 
    public void setBelongDepts(List<Map<String, Object>> 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<SysRole> getRoles() { 
 | 
        return this.roles; 
 | 
    } 
 | 
  
 | 
    public void setRoles(List<SysRole> 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<Long> getDepts() { 
 | 
        return this.depts; 
 | 
    } 
 | 
  
 | 
    public void setDepts(List<Long> 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(); 
 | 
    } 
 | 
  
 | 
} 
 |