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