OpenAccount.java 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. package com.ruoyi.system.domain;
  2. import com.baomidou.mybatisplus.annotation.IdType;
  3. import com.baomidou.mybatisplus.annotation.TableField;
  4. import com.baomidou.mybatisplus.annotation.TableId;
  5. import com.baomidou.mybatisplus.annotation.TableName;
  6. import com.fasterxml.jackson.annotation.JsonIgnore;
  7. import com.fasterxml.jackson.annotation.JsonProperty;
  8. import com.ruoyi.common.annotation.Sensitive;
  9. import com.ruoyi.common.constant.UserConstants;
  10. import com.ruoyi.common.core.domain.entity.SysDept;
  11. import com.ruoyi.common.core.domain.entity.SysRole;
  12. import com.ruoyi.common.enums.SensitiveStrategy;
  13. import com.ruoyi.system.domain.vo.OpenAccountVO;
  14. import lombok.Data;
  15. import lombok.NoArgsConstructor;
  16. import javax.validation.constraints.Email;
  17. import javax.validation.constraints.Size;
  18. import java.util.Date;
  19. import java.util.List;
  20. @Data
  21. @NoArgsConstructor
  22. @TableName("sys_user")
  23. public class OpenAccount {
  24. /**
  25. * 统一用户id
  26. */
  27. @TableField("u_id")
  28. private Long uId;
  29. /**
  30. * 用户账号
  31. */
  32. @TableField("user_name")
  33. private String userName;
  34. /**
  35. * 用户Id
  36. */
  37. @TableId(value = "user_id",type = IdType.ASSIGN_ID)
  38. private Long userId;
  39. /**
  40. * 用户昵称
  41. */
  42. @TableField("nick_name")
  43. private String nickName;
  44. /**
  45. *
  46. */
  47. /**
  48. * 手机号码
  49. */
  50. @TableField("phonenumber")
  51. private String phonenumber;
  52. /**
  53. * 帐号状态(0正常 1停用)
  54. */
  55. @TableField("status")
  56. private String status;
  57. /**
  58. * 删除标志(0代表存在 2代表删除)
  59. */
  60. @TableField("del_flag")
  61. private String delFlag;
  62. /**
  63. * 创建人uId
  64. */
  65. @TableField("create_by")
  66. private String createBy;
  67. /**
  68. * 密码
  69. */
  70. @TableField("password")
  71. private String password;
  72. /**
  73. * 部门ID
  74. */
  75. private Long deptId;
  76. /**
  77. * 用户类型(sys_user系统用户)
  78. */
  79. private String userType;
  80. /**
  81. * 用户邮箱
  82. */
  83. @Sensitive(strategy = SensitiveStrategy.EMAIL)
  84. @Email(message = "邮箱格式不正确")
  85. @Size(min = 0, max = 50, message = "邮箱长度不能超过{max}个字符")
  86. private String email;
  87. /**
  88. * 用户性别
  89. */
  90. private String sex;
  91. /**
  92. * 用户头像
  93. */
  94. private String avatar;
  95. @JsonIgnore
  96. @JsonProperty
  97. public String getPassword() {
  98. return password;
  99. }
  100. /**
  101. * 最后登录IP
  102. */
  103. private String loginIp;
  104. /**
  105. * 最后登录时间
  106. */
  107. private Date loginDate;
  108. /**
  109. * 备注
  110. */
  111. private String remark;
  112. /**
  113. * 部门对象
  114. */
  115. @TableField(exist = false)
  116. private SysDept dept;
  117. /**
  118. * 角色对象
  119. */
  120. @TableField(exist = false)
  121. private List<SysRole> roles;
  122. /**
  123. * 角色组
  124. */
  125. @TableField(exist = false)
  126. private Long[] roleIds;
  127. /**
  128. * 岗位组
  129. */
  130. @TableField(exist = false)
  131. private Long[] postIds;
  132. /**
  133. * 数据权限 当前角色ID
  134. */
  135. @TableField(exist = false)
  136. private Long roleId;
  137. public OpenAccount(Long userId) {
  138. this.userId = userId;
  139. }
  140. public boolean isAdmin() {
  141. return UserConstants.ADMIN_ID.equals(this.userId);
  142. }
  143. public OpenAccount(OpenAccountVO openAccountVO) {
  144. this.uId = openAccountVO.getU_id();
  145. this.userName = openAccountVO.getUserName();
  146. this.nickName = openAccountVO.getNickName();
  147. this.phonenumber = openAccountVO.getPhonenumber();
  148. this.status = openAccountVO.getStatus();
  149. this.delFlag = openAccountVO.getDelFlag();
  150. this.createBy = openAccountVO.getCreateBy();
  151. this.password = openAccountVO.getPassword();
  152. }
  153. }