| | |
| | | import com.ruoyi.common.core.domain.BaseEntity; |
| | | import com.ruoyi.common.enums.SensitiveStrategy; |
| | | import com.ruoyi.common.xss.Xss; |
| | | import io.swagger.v3.oas.annotations.media.Schema; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.NoArgsConstructor; |
| | |
| | | @NoArgsConstructor |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @TableName("sys_user") |
| | | @Schema(name = "用户信息业务对象") |
| | | public class SysUser extends BaseEntity { |
| | | |
| | | /** |
| | | * 用户ID |
| | | */ |
| | | @Schema(name = "用户ID") |
| | | @TableId(value = "user_id") |
| | | private Long userId; |
| | | |
| | | /** |
| | | * 部门ID |
| | | */ |
| | | @Schema(name = "部门ID") |
| | | private Long deptId; |
| | | |
| | | /** |
| | | * 用户账号 |
| | | */ |
| | | @Schema(name = "用户账号") |
| | | @Xss(message = "用户账号不能包含脚本字符") |
| | | @NotBlank(message = "用户账号不能为空") |
| | | @Size(min = 0, max = 30, message = "用户账号长度不能超过30个字符") |
| | |
| | | /** |
| | | * 用户昵称 |
| | | */ |
| | | @Schema(name = "用户昵称") |
| | | @Xss(message = "用户昵称不能包含脚本字符") |
| | | @Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符") |
| | | private String nickName; |
| | |
| | | /** |
| | | * 用户类型(sys_user系统用户) |
| | | */ |
| | | @Schema(name = "用户类型") |
| | | private String userType; |
| | | |
| | | /** |
| | | * 用户邮箱 |
| | | */ |
| | | @Sensitive(strategy = SensitiveStrategy.EMAIL) |
| | | @Schema(name = "用户邮箱") |
| | | @Email(message = "邮箱格式不正确") |
| | | @Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符") |
| | | private String email; |
| | |
| | | * 手机号码 |
| | | */ |
| | | @Sensitive(strategy = SensitiveStrategy.PHONE) |
| | | @Schema(name = "手机号码") |
| | | private String phonenumber; |
| | | |
| | | /** |
| | | * 用户性别 |
| | | */ |
| | | @Schema(name = "用户性别") |
| | | private String sex; |
| | | |
| | | /** |
| | | * 用户头像 |
| | | */ |
| | | @Schema(name = "用户头像") |
| | | private String avatar; |
| | | |
| | | /** |
| | | * 密码 |
| | | */ |
| | | @Schema(name = "密码") |
| | | @TableField( |
| | | insertStrategy = FieldStrategy.NOT_EMPTY, |
| | | updateStrategy = FieldStrategy.NOT_EMPTY, |
| | |
| | | /** |
| | | * 帐号状态(0正常 1停用) |
| | | */ |
| | | @Schema(name = "帐号状态(0正常 1停用)") |
| | | private String status; |
| | | |
| | | /** |
| | | * 删除标志(0代表存在 2代表删除) |
| | | */ |
| | | @Schema(name = "删除标志(0代表存在 2代表删除)") |
| | | @TableLogic |
| | | private String delFlag; |
| | | |
| | | /** |
| | | * 最后登录IP |
| | | */ |
| | | @Schema(name = "最后登录IP") |
| | | private String loginIp; |
| | | |
| | | /** |
| | | * 最后登录时间 |
| | | */ |
| | | @Schema(name = "最后登录时间") |
| | | private Date loginDate; |
| | | |
| | | /** |
| | | * 备注 |
| | | */ |
| | | @Schema(name = "备注") |
| | | private String remark; |
| | | |
| | | /** |
| | | * 部门对象 |
| | | */ |
| | | @Schema(name = "部门对象") |
| | | @TableField(exist = false) |
| | | private SysDept dept; |
| | | |
| | | /** |
| | | * 角色对象 |
| | | */ |
| | | @Schema(name = "角色对象") |
| | | @TableField(exist = false) |
| | | private List<SysRole> roles; |
| | | |
| | | /** |
| | | * 角色组 |
| | | */ |
| | | @Schema(name = "角色组") |
| | | @TableField(exist = false) |
| | | private Long[] roleIds; |
| | | |
| | | /** |
| | | * 岗位组 |
| | | */ |
| | | @Schema(name = "岗位组") |
| | | @TableField(exist = false) |
| | | private Long[] postIds; |
| | | |
| | | /** |
| | | * 数据权限 当前角色ID |
| | | */ |
| | | @Schema(name = "角色ID") |
| | | @TableField(exist = false) |
| | | private Long roleId; |
| | | |
| | |
| | | this.userId = userId; |
| | | } |
| | | |
| | | @Schema(name = "是否管理员") |
| | | public boolean isAdmin() { |
| | | return UserConstants.ADMIN_ID.equals(this.userId); |
| | | } |