1.0
xin
2025-04-15 e718afd02965c6a4018506acb1ae99baca0c5645
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
package com.oying.modules.system.domain;
 
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import com.oying.base.BaseEntity;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
import java.util.Objects;
import java.util.Set;
 
/**
 * @author Z
 * @date 2018-11-22
 */
@Getter
@Setter
@TableName("sys_user")
public class User extends BaseEntity implements Serializable {
 
    @NotNull(groups = Update.class)
    @TableId(value="user_id", type = IdType.AUTO)
    @ApiModelProperty(value = "ID", hidden = true)
    private Long id;
 
    @TableField(exist = false)
    @ApiModelProperty(value = "用户角色")
    private Set<Role> roles;
 
    @TableField(exist = false)
    @ApiModelProperty(value = "用户岗位")
    private Set<Job> jobs;
 
    @TableField(value = "dept_id")
    @ApiModelProperty(hidden = true)
    private Long deptId;
 
    @ApiModelProperty(value = "用户机构")
    @TableField(exist = false)
    private Dept dept;
 
    @NotBlank
    @ApiModelProperty(value = "用户名称")
    private String username;
 
    @NotBlank
    @ApiModelProperty(value = "用户昵称")
    private String nickName;
 
    @Email
    @NotBlank
    @ApiModelProperty(value = "邮箱")
    private String email;
 
    @NotBlank
    @ApiModelProperty(value = "电话号码")
    private String phone;
 
    @ApiModelProperty(value = "用户性别")
    private String gender;
 
    @ApiModelProperty(value = "头像真实名称",hidden = true)
    private String avatarName;
 
    @ApiModelProperty(value = "头像存储的路径", hidden = true)
    private String avatarPath;
 
    @ApiModelProperty(value = "密码")
    private String password;
 
    @NotNull
    @ApiModelProperty(value = "是否启用")
    private Boolean enabled;
 
    @ApiModelProperty(value = "是否为admin账号", hidden = true)
    private Boolean isAdmin = false;
 
    @ApiModelProperty(value = "最后修改密码的时间", hidden = true)
    private Date pwdResetTime;
 
    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }
        User user = (User) o;
        return Objects.equals(id, user.id) &&
                Objects.equals(username, user.username);
    }
 
    @Override
    public int hashCode() {
        return Objects.hash(id, username);
    }
}