package cn.wisenergy.chnmuseum.party.model; import cn.wisenergy.chnmuseum.party.common.validator.groups.Add; import cn.wisenergy.chnmuseum.party.common.validator.groups.Update; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.IdType; import java.time.LocalDate; import com.baomidou.mybatisplus.annotation.Version; import com.baomidou.mybatisplus.annotation.TableId; import java.time.LocalDateTime; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.TableField; import java.io.Serializable; import java.util.List; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.AllArgsConstructor; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** * <p> * 用户 * </p> * * @author Danny Lee * @since 2021-03-22 */ @Data @Builder @AllArgsConstructor @NoArgsConstructor @Accessors(chain = true) @EqualsAndHashCode(callSuper = false) @TableName("t_user") @ApiModel(value = "用户", description = "用户") public class TUser implements Serializable { private static final long serialVersionUID = 1L; @ApiModelProperty("用户标识") @TableId(value = "id", type = IdType.ASSIGN_ID) @NotNull(message = "用户标识ID不能为空", groups = {Update.class}) private String id; @ApiModelProperty("用户名") @TableField("user_name") @NotBlank(message = "用户名不能为空", groups = {Add.class, Update.class}) private String userName; @TableField("password_hash") @NotNull(message = "不能为空", groups = {Add.class, Update.class}) private byte[] passwordHash; @TableField("password_salt") @NotNull(message = "不能为空", groups = {Add.class, Update.class}) private byte[] passwordSalt; @ApiModelProperty("创建时间") @TableField(value = "create_time", fill = FieldFill.INSERT) @NotNull(message = "创建时间不能为空", groups = {Add.class, Update.class}) private LocalDateTime createTime; @ApiModelProperty("修改时间") @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE) private LocalDateTime updateTime; @ApiModelProperty("所属机构ID") @TableField("org_id") @NotBlank(message = "所属机构ID不能为空", groups = {Add.class, Update.class}) private String orgId; @ApiModelProperty("是否永久用户") @TableField("permanent") private Boolean permanent; @ApiModelProperty("生效日期") @TableField("effective_date") private LocalDate effectiveDate; @ApiModelProperty("失效日期") @TableField("exired_date") private LocalDate exiredDate; @ApiModelProperty("状态 1.启用 2.禁用") @TableField("status") private String status; @ApiModelProperty("手机号") @TableField("phone") private Integer phone; @ApiModelProperty("邮箱") @TableField("email") private String email; @ApiModelProperty("微信") @TableField("we_chat") private String weChat; @ApiModelProperty("固话") @TableField("telephone") private String telephone; @ApiModelProperty("0:未删除,1:已删除") @TableField("is_deleted") private Boolean isDeleted; @ApiModelProperty("姓名") @TableField("real_name") private String realName; @ApiModelProperty("类型 1.平台账号 2.用户账号 3.机顶盒账号 4.运维账号") @TableField("type") private String type; @ApiModelProperty("审核状态 1.待初审 2.已驳回 3.待复审 4.通过 ") @TableField("audit_status") private String auditStatus; @ApiModelProperty("机构名称") @TableField(exist = false) private String orgName; @ApiModelProperty("角色集合") @TableField(exist = false) private List<Role> roleList; @ApiModelProperty("密码") @TableField(exist = false) private String password; @TableField(exist = false) private String jwtToken; public TUser(String id, String jwtToken) { this.id = id; this.jwtToken = jwtToken; } public TUser(String jwtToken) { this.jwtToken = jwtToken; } }