SysUser.java 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509
  1. package com.dgtly.system.domain;
  2. import java.util.Date;
  3. import java.util.List;
  4. import javax.validation.constraints.*;
  5. import com.fasterxml.jackson.annotation.JsonFormat;
  6. import org.apache.commons.lang3.builder.ToStringBuilder;
  7. import org.apache.commons.lang3.builder.ToStringStyle;
  8. import com.dgtly.common.annotation.Excel;
  9. import com.dgtly.common.annotation.Excel.ColumnType;
  10. import com.dgtly.common.annotation.Excel.Type;
  11. import com.dgtly.common.annotation.Excels;
  12. import com.dgtly.common.core.domain.BaseEntity;
  13. /**
  14. * 用户对象 sys_user
  15. *
  16. * @author dgtly
  17. */
  18. public class SysUser extends BaseEntity
  19. {
  20. private static final long serialVersionUID = 1L;
  21. /** 用户ID */
  22. @Excel(name = "用户序号", cellType = ColumnType.NUMERIC, prompt = "用户编号")
  23. private Long userId;
  24. /** 公司ID */
  25. @Excel(name = "公司编号", type = Type.IMPORT)
  26. private Long companyId;
  27. /** 部门ID */
  28. @Excel(name = "部门编号", type = Type.IMPORT)
  29. private Long deptId;
  30. /** 部门父ID */
  31. private Long parentId;
  32. /** 角色ID */
  33. private Long roleId;
  34. /** 登录名称 */
  35. @Excel(name = "登录名称")
  36. private String loginName;
  37. /** 用户名称 */
  38. @Excel(name = "用户名称")
  39. private String userName;
  40. /** 用户邮箱 */
  41. @Excel(name = "用户邮箱")
  42. private String email;
  43. /** 手机号码 */
  44. @Excel(name = "手机号码")
  45. private String phonenumber;
  46. /** 用户性别 */
  47. @Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知")
  48. private String sex;
  49. /** 用户头像 */
  50. private String avatar;
  51. /** 密码 */
  52. private String password;
  53. /** 盐加密 */
  54. private String salt;
  55. /** 帐号状态(0正常 1停用) */
  56. @Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用")
  57. private String status;
  58. /** 删除标志(0代表存在 2代表删除) */
  59. private String delFlag;
  60. /** 最后登陆IP */
  61. @Excel(name = "最后登陆IP", type = Type.EXPORT)
  62. private String loginIp;
  63. /** 最后登陆时间 */
  64. @Excel(name = "最后登陆时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
  65. private Date loginDate;
  66. /** 部门对象 */
  67. @Excels({
  68. @Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT),
  69. @Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT)
  70. })
  71. private SysDept dept;
  72. private SysCompany company;
  73. private List<SysRole> roles;
  74. /** 角色组 */
  75. private Long[] roleIds;
  76. /** 岗位组 */
  77. private Long[] postIds;
  78. /** 证件类型 */
  79. private String idType;
  80. /** 证件号 */
  81. private String idNumber;
  82. /** 注册后id */
  83. private String accountId;
  84. /** 是否认证 */
  85. private String isAuthentication;
  86. /** 更新时间 */
  87. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  88. private Date personAttestationTime;
  89. /** 接受认证的手机号 */
  90. private String receiveUrlMobileNo;
  91. /** 用户销售信息扩展 */
  92. private SysUserExt sysUserExt;
  93. /** 是否收货人 */
  94. private String isConsignee;
  95. // /** 所属销售组织等级 详见字典(sales_level) */
  96. // private String salesLevel;
  97. //
  98. // /** 所属销售组织名称 */
  99. // private String orgName;
  100. //
  101. // /** 所属销售组织code */
  102. // private String orgCode;
  103. public SysUser()
  104. {
  105. }
  106. public SysUser(Long userId)
  107. {
  108. this.userId = userId;
  109. }
  110. public Long getCompanyId() {
  111. return companyId;
  112. }
  113. public void setCompanyId(Long companyId) {
  114. this.companyId = companyId;
  115. }
  116. public Long getUserId()
  117. {
  118. return userId;
  119. }
  120. public void setUserId(Long userId)
  121. {
  122. this.userId = userId;
  123. }
  124. public boolean isAdmin()
  125. {
  126. return isAdmin(this.userId);
  127. }
  128. public static boolean isAdmin(Long userId)
  129. {
  130. return userId != null && 1L == userId;
  131. }
  132. public Long getDeptId()
  133. {
  134. return deptId;
  135. }
  136. public void setDeptId(Long deptId)
  137. {
  138. this.deptId = deptId;
  139. }
  140. public Long getParentId()
  141. {
  142. return parentId;
  143. }
  144. public void setParentId(Long parentId)
  145. {
  146. this.parentId = parentId;
  147. }
  148. public Long getRoleId()
  149. {
  150. return roleId;
  151. }
  152. public void setRoleId(Long roleId)
  153. {
  154. this.roleId = roleId;
  155. }
  156. @NotBlank(message = "登录账号不能为空")
  157. @Size(min = 0, max = 30, message = "登录账号长度不能超过30个字符")
  158. public String getLoginName()
  159. {
  160. return loginName;
  161. }
  162. public void setLoginName(String loginName)
  163. {
  164. this.loginName = loginName;
  165. }
  166. @Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符")
  167. public String getUserName()
  168. {
  169. return userName;
  170. }
  171. public void setUserName(String userName)
  172. {
  173. this.userName = userName;
  174. }
  175. @Email(message = "邮箱格式不正确")
  176. @Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符")
  177. public String getEmail()
  178. {
  179. return email;
  180. }
  181. public void setEmail(String email)
  182. {
  183. this.email = email;
  184. }
  185. @Size(min = 0, max = 11, message = "手机号码长度不能超过11个字符")
  186. public String getPhonenumber()
  187. {
  188. return phonenumber;
  189. }
  190. public void setPhonenumber(String phonenumber)
  191. {
  192. this.phonenumber = phonenumber;
  193. }
  194. public String getSex()
  195. {
  196. return sex;
  197. }
  198. public void setSex(String sex)
  199. {
  200. this.sex = sex;
  201. }
  202. public String getAvatar()
  203. {
  204. return avatar;
  205. }
  206. public void setAvatar(String avatar)
  207. {
  208. this.avatar = avatar;
  209. }
  210. public String getPassword()
  211. {
  212. return password;
  213. }
  214. public void setPassword(String password)
  215. {
  216. this.password = password;
  217. }
  218. public String getSalt()
  219. {
  220. return salt;
  221. }
  222. public void setSalt(String salt)
  223. {
  224. this.salt = salt;
  225. }
  226. public String getStatus()
  227. {
  228. return status;
  229. }
  230. public void setStatus(String status)
  231. {
  232. this.status = status;
  233. }
  234. public String getDelFlag()
  235. {
  236. return delFlag;
  237. }
  238. public void setDelFlag(String delFlag)
  239. {
  240. this.delFlag = delFlag;
  241. }
  242. public String getLoginIp()
  243. {
  244. return loginIp;
  245. }
  246. public void setLoginIp(String loginIp)
  247. {
  248. this.loginIp = loginIp;
  249. }
  250. public Date getLoginDate()
  251. {
  252. return loginDate;
  253. }
  254. public void setLoginDate(Date loginDate)
  255. {
  256. this.loginDate = loginDate;
  257. }
  258. public SysDept getDept()
  259. {
  260. if (dept == null)
  261. {
  262. dept = new SysDept();
  263. }
  264. return dept;
  265. }
  266. public SysCompany getCompany() {
  267. return company;
  268. }
  269. public void setCompany(SysCompany company) {
  270. this.company = company;
  271. }
  272. public void setDept(SysDept dept)
  273. {
  274. this.dept = dept;
  275. }
  276. public List<SysRole> getRoles()
  277. {
  278. return roles;
  279. }
  280. public void setRoles(List<SysRole> roles)
  281. {
  282. this.roles = roles;
  283. }
  284. public Long[] getRoleIds()
  285. {
  286. return roleIds;
  287. }
  288. public void setRoleIds(Long[] roleIds)
  289. {
  290. this.roleIds = roleIds;
  291. }
  292. public Long[] getPostIds()
  293. {
  294. return postIds;
  295. }
  296. public void setPostIds(Long[] postIds)
  297. {
  298. this.postIds = postIds;
  299. }
  300. private String workAddr;
  301. private String workSchedul;
  302. private String addrNum;
  303. private String schedulDetail;
  304. public String getWorkAddr() {
  305. return workAddr;
  306. }
  307. public void setWorkAddr(String workAddr) {
  308. this.workAddr = workAddr;
  309. }
  310. public String getWorkSchedul() {
  311. return workSchedul;
  312. }
  313. public void setWorkSchedul(String workSchedul) {
  314. this.workSchedul = workSchedul;
  315. }
  316. public String getAddrNum() {
  317. return addrNum;
  318. }
  319. public void setAddrNum(String addrNum) {
  320. this.addrNum = addrNum;
  321. }
  322. public String getSchedulDetail() {
  323. return schedulDetail;
  324. }
  325. public void setSchedulDetail(String schedulDetail) {
  326. this.schedulDetail = schedulDetail;
  327. }
  328. public SysUserExt getSysUserExt() {
  329. return sysUserExt;
  330. }
  331. public void setSysUserExt(SysUserExt sysUserExt) {
  332. this.sysUserExt = sysUserExt;
  333. }
  334. public String getIdType() {
  335. return idType;
  336. }
  337. public void setIdType(String idType) {
  338. this.idType = idType;
  339. }
  340. public String getIdNumber() {
  341. return idNumber;
  342. }
  343. public void setIdNumber(String idNumber) {
  344. this.idNumber = idNumber;
  345. }
  346. public String getAccountId() {
  347. return accountId;
  348. }
  349. public void setAccountId(String accountId) {
  350. this.accountId = accountId;
  351. }
  352. public String getIsAuthentication() {
  353. return isAuthentication;
  354. }
  355. public void setIsAuthentication(String isAuthentication) {
  356. this.isAuthentication = isAuthentication;
  357. }
  358. public Date getPersonAttestationTime() {
  359. return personAttestationTime;
  360. }
  361. public void setPersonAttestationTime(Date personAttestationTime) {
  362. this.personAttestationTime = personAttestationTime;
  363. }
  364. public String getReceiveUrlMobileNo() {
  365. return receiveUrlMobileNo;
  366. }
  367. public void setReceiveUrlMobileNo(String receiveUrlMobileNo) {
  368. this.receiveUrlMobileNo = receiveUrlMobileNo;
  369. }
  370. public String getIsConsignee() {
  371. return isConsignee;
  372. }
  373. public void setIsConsignee(String isConsignee) {
  374. this.isConsignee = isConsignee;
  375. }
  376. @Override
  377. public String toString() {
  378. return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
  379. .append("userId", getUserId())
  380. .append("deptId", getDeptId())
  381. .append("companyId", getDeptId())
  382. .append("loginName", getLoginName())
  383. .append("userName", getUserName())
  384. .append("email", getEmail())
  385. .append("phonenumber", getPhonenumber())
  386. .append("sex", getSex())
  387. .append("avatar", getAvatar())
  388. .append("password", getPassword())
  389. .append("salt", getSalt())
  390. .append("status", getStatus())
  391. .append("delFlag", getDelFlag())
  392. .append("loginIp", getLoginIp())
  393. .append("loginDate", getLoginDate())
  394. .append("createBy", getCreateBy())
  395. .append("createTime", getCreateTime())
  396. .append("updateBy", getUpdateBy())
  397. .append("updateTime", getUpdateTime())
  398. .append("remark", getRemark())
  399. .append("dept", getDept())
  400. .toString();
  401. }
  402. }