package com.jcdm.common.core.domain.entity; import java.util.Date; import java.util.List; import javax.validation.constraints.*; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.jcdm.common.annotation.Excel; import com.jcdm.common.annotation.Excel.ColumnType; import com.jcdm.common.annotation.Excel.Type; import com.jcdm.common.annotation.Excels; import com.jcdm.common.core.domain.BaseEntity; import com.jcdm.common.xss.Xss; /** * 用户对象 sys_user * * @author jc */ public class SysUser extends BaseEntity { private static final long serialVersionUID = 1L; /** 用户ID */ @Excel(name = "用户åºå·", cellType = ColumnType.NUMERIC, prompt = "用户编å·") private Long userId; /** 部门ID */ @Excel(name = "部门编å·", type = Type.IMPORT) private Long deptId; /** ç”¨æˆ·è´¦å· */ @Excel(name = "登录åç§°") private String userName; /** 用户昵称 */ @Excel(name = "用户åç§°") private String nickName; /** 用户邮箱 */ @Excel(name = "用户邮箱") private String email; /** 手机å·ç */ @Excel(name = "手机å·ç ") private String phonenumber; /** 用户性别 */ @Excel(name = "用户性别", readConverterExp = "0=ç”·,1=女,2=未知") private String sex; /** ç”¨æˆ·å¤´åƒ */ private String avatar; /** 密ç */ private String password; /** å¸å·çжæ€ï¼ˆ0æ£å¸¸ 1åœç”¨ï¼‰ */ @Excel(name = "å¸å·çжæ€", readConverterExp = "0=æ£å¸¸,1=åœç”¨") private String status; /** åˆ é™¤æ ‡å¿—ï¼ˆ0代表å˜åœ¨ 2ä»£è¡¨åˆ é™¤ï¼‰ */ private String delFlag; /** 最åŽç™»å½•IP */ @Excel(name = "最åŽç™»å½•IP", type = Type.EXPORT) private String loginIp; /** 最åŽç™»å½•æ—¶é—´ */ @Excel(name = "最åŽç™»å½•æ—¶é—´", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT) private Date loginDate; /** 部门对象 */ @Excels({ @Excel(name = "部门åç§°", targetAttr = "deptName", type = Type.EXPORT), @Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT) }) private SysDept dept; /** 角色对象 */ private List<SysRole> roles; /** 角色组 */ private Long[] roleIds; /** å²—ä½ç»„ */ private Long[] postIds; /** 角色ID */ private Long roleId; public SysUser() { } public SysUser(Long userId) { this.userId = userId; } public Long getUserId() { return userId; } public void setUserId(Long userId) { this.userId = userId; } public boolean isAdmin() { return isAdmin(this.userId); } public static boolean isAdmin(Long userId) { return userId != null && 1L == userId; } public Long getDeptId() { return deptId; } public void setDeptId(Long deptId) { this.deptId = deptId; } @Xss(message = "用户昵称ä¸èƒ½åŒ…å«è„šæœ¬å—符") @Size(min = 0, max = 30, message = "用户昵称长度ä¸èƒ½è¶…过30个å—符") public String getNickName() { return nickName; } public void setNickName(String nickName) { this.nickName = nickName; } @Xss(message = "用户账å·ä¸èƒ½åŒ…å«è„šæœ¬å—符") @NotBlank(message = "用户账å·ä¸èƒ½ä¸ºç©º") @Size(min = 0, max = 30, message = "用户账å·é•¿åº¦ä¸èƒ½è¶…过30个å—符") public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } @Email(message = "é‚®ç®±æ ¼å¼ä¸æ£ç¡®") @Size(min = 0, max = 50, message = "邮箱长度ä¸èƒ½è¶…过50个å—符") public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } @Size(min = 0, max = 11, message = "手机å·ç 长度ä¸èƒ½è¶…过11个å—符") public String getPhonenumber() { return phonenumber; } public void setPhonenumber(String phonenumber) { this.phonenumber = phonenumber; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getAvatar() { return avatar; } public void setAvatar(String avatar) { this.avatar = avatar; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getStatus() { return status; } public void setStatus(String status) { this.status = status; } public String getDelFlag() { return delFlag; } public void setDelFlag(String delFlag) { this.delFlag = delFlag; } public String getLoginIp() { return loginIp; } public void setLoginIp(String loginIp) { this.loginIp = loginIp; } public Date getLoginDate() { return loginDate; } public void setLoginDate(Date loginDate) { this.loginDate = loginDate; } public SysDept getDept() { return dept; } public void setDept(SysDept dept) { this.dept = dept; } public List<SysRole> getRoles() { return roles; } public void setRoles(List<SysRole> roles) { this.roles = roles; } public Long[] getRoleIds() { return roleIds; } public void setRoleIds(Long[] roleIds) { this.roleIds = roleIds; } public Long[] getPostIds() { return postIds; } public void setPostIds(Long[] postIds) { this.postIds = postIds; } public Long getRoleId() { return roleId; } public void setRoleId(Long roleId) { this.roleId = roleId; } @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("userId", getUserId()) .append("deptId", getDeptId()) .append("userName", getUserName()) .append("nickName", getNickName()) .append("email", getEmail()) .append("phonenumber", getPhonenumber()) .append("sex", getSex()) .append("avatar", getAvatar()) .append("password", getPassword()) .append("status", getStatus()) .append("delFlag", getDelFlag()) .append("loginIp", getLoginIp()) .append("loginDate", getLoginDate()) .append("createBy", getCreateBy()) .append("createTime", getCreateTime()) .append("updateBy", getUpdateBy()) .append("updateTime", getUpdateTime()) .append("remark", getRemark()) .append("dept", getDept()) .toString(); } }