|  |  | 
 |  |  | package com.zy.asrs.wms.system.entity; | 
 |  |  |  | 
 |  |  | import com.baomidou.mybatisplus.annotation.*; | 
 |  |  | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | 
 |  |  | import com.zy.asrs.framework.common.Cools; | 
 |  |  | import com.zy.asrs.framework.common.SpringUtils; | 
 |  |  | import com.zy.asrs.wms.system.service.DeptService; | 
 |  |  | import com.zy.asrs.wms.system.service.HostService; | 
 |  |  | import com.zy.asrs.wms.system.service.UserRoleService; | 
 |  |  | import com.zy.asrs.wms.system.service.UserService; | 
 |  |  | import io.swagger.annotations.ApiModelProperty; | 
 |  |  | import lombok.Data; | 
 |  |  | import org.springframework.format.annotation.DateTimeFormat; | 
 |  |  | import org.springframework.security.core.userdetails.UserDetails; | 
 |  |  |  | 
 |  |  | import java.io.Serializable; | 
 |  |  | import java.text.SimpleDateFormat; | 
 |  |  | import java.util.Date; | 
 |  |  | import java.util.List; | 
 |  |  |  | 
 |  |  | @Data | 
 |  |  | @TableName("sys_user") | 
 |  |  | public class User implements Serializable, UserDetails { | 
 |  |  |  | 
 |  |  |     private static final long serialVersionUID = 1L; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * ID | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "ID") | 
 |  |  |     @TableId(value = "id", type = IdType.AUTO) | 
 |  |  |     private Long id; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 账号 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "账号") | 
 |  |  |     private String username; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 密码 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "密码") | 
 |  |  |     private String password; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 昵称 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "昵称") | 
 |  |  |     private String nickname; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 头像 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "头像") | 
 |  |  |     private String avatar; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 工号 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "工号") | 
 |  |  |     private String code; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 性别 0: 未知  1: 男  2: 女   | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "性别 0: 未知  1: 男  2: 女  ") | 
 |  |  |     private Integer sex; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 手机号 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "手机号") | 
 |  |  |     private String phone; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 邮箱 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "邮箱") | 
 |  |  |     private String email; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 邮箱验证 0: 否  1: 是   | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "邮箱验证 0: 否  1: 是  ") | 
 |  |  |     private Integer emailVerified; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 所属部门 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "所属部门") | 
 |  |  |     private Long deptId; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 真实姓名 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "真实姓名") | 
 |  |  |     private String realName; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 身份证号 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "身份证号") | 
 |  |  |     private String idCard; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 出生日期 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "出生日期") | 
 |  |  |     private String birthday; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 个人简介 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "个人简介") | 
 |  |  |     private String introduction; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 所属机构 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "所属机构") | 
 |  |  |     private Long hostId; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 状态 1: 正常  0: 禁用   | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "状态 1: 正常  0: 禁用  ") | 
 |  |  |     private Integer status; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 是否删除 1: 是  0: 否   | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "是否删除 1: 是  0: 否  ") | 
 |  |  |     @TableLogic | 
 |  |  |     private Integer deleted; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 添加时间 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "添加时间") | 
 |  |  |     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") | 
 |  |  |     private Date createTime; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 添加人员 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "添加人员") | 
 |  |  |     private Long createBy; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 修改时间 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "修改时间") | 
 |  |  |     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") | 
 |  |  |     private Date updateTime; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 修改人员 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "修改人员") | 
 |  |  |     private Long updateBy; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 备注 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "备注") | 
 |  |  |     private String memo; | 
 |  |  |  | 
 |  |  |     @TableField(exist = false) | 
 |  |  |     private Long[] roleIds; | 
 |  |  |  | 
 |  |  |     @TableField(exist = false) | 
 |  |  |     private List<Role> roles; | 
 |  |  |  | 
 |  |  |     @TableField(exist = false) | 
 |  |  |     private List<Menu> authorities; | 
 |  |  |  | 
 |  |  |     public User() {} | 
 |  |  |  | 
 |  |  |     public User(String username,String password,String nickname,String avatar,String code,Integer sex,String phone,String email,Integer emailVerified,Long deptId,String realName,String idCard,String birthday,String introduction,Long hostId,Integer status,Integer deleted,Date createTime,Long createBy,Date updateTime,Long updateBy,String memo) { | 
 |  |  |         this.username = username; | 
 |  |  |         this.password = password; | 
 |  |  |         this.nickname = nickname; | 
 |  |  |         this.avatar = avatar; | 
 |  |  |         this.code = code; | 
 |  |  |         this.sex = sex; | 
 |  |  |         this.phone = phone; | 
 |  |  |         this.email = email; | 
 |  |  |         this.emailVerified = emailVerified; | 
 |  |  |         this.deptId = deptId; | 
 |  |  |         this.realName = realName; | 
 |  |  |         this.idCard = idCard; | 
 |  |  |         this.birthday = birthday; | 
 |  |  |         this.introduction = introduction; | 
 |  |  |         this.hostId = hostId; | 
 |  |  |         this.status = status; | 
 |  |  |         this.deleted = deleted; | 
 |  |  |         this.createTime = createTime; | 
 |  |  |         this.createBy = createBy; | 
 |  |  |         this.updateTime = updateTime; | 
 |  |  |         this.updateBy = updateBy; | 
 |  |  |         this.memo = memo; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | //    User user = new User( | 
 |  |  | //            null,    // 账号[非空] | 
 |  |  | //            null,    // 密码 | 
 |  |  | //            null,    // 昵称 | 
 |  |  | //            null,    // 头像 | 
 |  |  | //            null,    // 工号 | 
 |  |  | //            null,    // 性别 | 
 |  |  | //            null,    // 手机号 | 
 |  |  | //            null,    // 邮箱 | 
 |  |  | //            null,    // 邮箱验证 | 
 |  |  | //            null,    // 所属部门 | 
 |  |  | //            null,    // 真实姓名 | 
 |  |  | //            null,    // 身份证号 | 
 |  |  | //            null,    // 出生日期 | 
 |  |  | //            null,    // 个人简介 | 
 |  |  | //            null,    // 所属机构 | 
 |  |  | //            null,    // 状态 | 
 |  |  | //            null,    // 是否删除 | 
 |  |  | //            null,    // 添加时间 | 
 |  |  | //            null,    // 添加人员 | 
 |  |  | //            null,    // 修改时间 | 
 |  |  | //            null,    // 修改人员 | 
 |  |  | //            null    // 备注 | 
 |  |  | //    ); | 
 |  |  |  | 
 |  |  |     public String getSex$(){ | 
 |  |  |         if (null == this.sex){ return null; } | 
 |  |  |         switch (this.sex){ | 
 |  |  |             case 0: | 
 |  |  |                 return "未知"; | 
 |  |  |             case 1: | 
 |  |  |                 return "男"; | 
 |  |  |             case 2: | 
 |  |  |                 return "女"; | 
 |  |  |             default: | 
 |  |  |                 return String.valueOf(this.sex); | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getEmailVerified$(){ | 
 |  |  |         if (null == this.emailVerified){ return null; } | 
 |  |  |         switch (this.emailVerified){ | 
 |  |  |             case 0: | 
 |  |  |                 return "否"; | 
 |  |  |             case 1: | 
 |  |  |                 return "是"; | 
 |  |  |             default: | 
 |  |  |                 return String.valueOf(this.emailVerified); | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getDeptId$(){ | 
 |  |  |         DeptService service = SpringUtils.getBean(DeptService.class); | 
 |  |  |         Dept dept = service.getById(this.deptId); | 
 |  |  |         if (!Cools.isEmpty(dept)){ | 
 |  |  |             return String.valueOf(dept.getName()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getHostId$(){ | 
 |  |  |         HostService service = SpringUtils.getBean(HostService.class); | 
 |  |  |         Host host = service.getById(this.hostId); | 
 |  |  |         if (!Cools.isEmpty(host)){ | 
 |  |  |             return String.valueOf(host.getName()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getStatus$(){ | 
 |  |  |         if (null == this.status){ return null; } | 
 |  |  |         switch (this.status){ | 
 |  |  |             case 1: | 
 |  |  |                 return "正常"; | 
 |  |  |             case 0: | 
 |  |  |                 return "禁用"; | 
 |  |  |             default: | 
 |  |  |                 return String.valueOf(this.status); | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getDeleted$(){ | 
 |  |  |         if (null == this.deleted){ return null; } | 
 |  |  |         switch (this.deleted){ | 
 |  |  |             case 1: | 
 |  |  |                 return "是"; | 
 |  |  |             case 0: | 
 |  |  |                 return "否"; | 
 |  |  |             default: | 
 |  |  |                 return String.valueOf(this.deleted); | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getCreateTime$(){ | 
 |  |  |         if (Cools.isEmpty(this.createTime)){ | 
 |  |  |             return ""; | 
 |  |  |         } | 
 |  |  |         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getCreateBy$(){ | 
 |  |  |         UserService service = SpringUtils.getBean(UserService.class); | 
 |  |  |         User user = service.getById(this.createBy); | 
 |  |  |         if (!Cools.isEmpty(user)){ | 
 |  |  |             return String.valueOf(user.getNickname()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getUpdateTime$(){ | 
 |  |  |         if (Cools.isEmpty(this.updateTime)){ | 
 |  |  |             return ""; | 
 |  |  |         } | 
 |  |  |         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getUpdateBy$(){ | 
 |  |  |         UserService service = SpringUtils.getBean(UserService.class); | 
 |  |  |         User user = service.getById(this.updateBy); | 
 |  |  |         if (!Cools.isEmpty(user)){ | 
 |  |  |             return String.valueOf(user.getNickname()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public Long[] getRoleIds() { | 
 |  |  |         return this.roleIds; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public Long[] getUserRoleIds() { | 
 |  |  |         UserRoleService service = SpringUtils.getBean(UserRoleService.class); | 
 |  |  |         List<UserRole> list = service.list(new LambdaQueryWrapper<UserRole>().eq(UserRole::getUserId, this.id)); | 
 |  |  |         return list.stream().map(UserRole::getRoleId).toArray(Long[]::new); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public boolean isAccountNonExpired() { | 
 |  |  |         return true; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public boolean isAccountNonLocked() { | 
 |  |  |         return this.status != null && this.status == 1; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public boolean isCredentialsNonExpired() { | 
 |  |  |         return true; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public boolean isEnabled() { | 
 |  |  |         return true; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | } | 
 |  |  | package com.zy.asrs.wms.system.entity;
 | 
 |  |  | 
 | 
 |  |  | import com.baomidou.mybatisplus.annotation.*;
 | 
 |  |  | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 | 
 |  |  | import com.zy.asrs.common.domain.enums.LoginSystemType;
 | 
 |  |  | import com.zy.asrs.framework.common.Cools;
 | 
 |  |  | import com.zy.asrs.framework.common.SpringUtils;
 | 
 |  |  | import com.zy.asrs.wms.system.service.*;
 | 
 |  |  | import io.swagger.annotations.ApiModelProperty;
 | 
 |  |  | import lombok.Data;
 | 
 |  |  | import org.springframework.format.annotation.DateTimeFormat;
 | 
 |  |  | import org.springframework.security.core.userdetails.UserDetails;
 | 
 |  |  | 
 | 
 |  |  | import java.io.Serializable;
 | 
 |  |  | import java.text.SimpleDateFormat;
 | 
 |  |  | import java.util.Date;
 | 
 |  |  | import java.util.List;
 | 
 |  |  | 
 | 
 |  |  | @Data
 | 
 |  |  | @TableName("sys_user")
 | 
 |  |  | public class User implements Serializable, UserDetails{
 | 
 |  |  | 
 | 
 |  |  |     private static final long serialVersionUID = 1L;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * ID
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "ID")
 | 
 |  |  |     @TableId(value = "id", type = IdType.AUTO)
 | 
 |  |  |     private Long id;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 账号
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "账号")
 | 
 |  |  |     private String username;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 密码
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "密码")
 | 
 |  |  |     private String password;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 昵称
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "昵称")
 | 
 |  |  |     private String nickname;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 头像
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "头像")
 | 
 |  |  |     private String avatar;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 工号
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "工号")
 | 
 |  |  |     private String code;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 性别 0: 未知  1: 男  2: 女   | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "性别 0: 未知  1: 男  2: 女  ")
 | 
 |  |  |     private Integer sex;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 手机号
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "手机号")
 | 
 |  |  |     private String phone;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 邮箱
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "邮箱")
 | 
 |  |  |     private String email;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 邮箱验证 0: 否  1: 是   | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "邮箱验证 0: 否  1: 是  ")
 | 
 |  |  |     private Integer emailVerified;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 所属部门
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "所属部门")
 | 
 |  |  |     private Long deptId;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 真实姓名
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "真实姓名")
 | 
 |  |  |     private String realName;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 身份证号
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "身份证号")
 | 
 |  |  |     private String idCard;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 出生日期
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "出生日期")
 | 
 |  |  |     private String birthday;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 个人简介
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "个人简介")
 | 
 |  |  |     private String introduction;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 所属机构
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "所属机构")
 | 
 |  |  |     private Long hostId;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 状态 1: 正常  0: 禁用   | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "状态 1: 正常  0: 禁用  ")
 | 
 |  |  |     private Integer status;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 是否删除 1: 是  0: 否   | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "是否删除 1: 是  0: 否  ")
 | 
 |  |  |     @TableLogic
 | 
 |  |  |     private Integer deleted;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 添加时间
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "添加时间")
 | 
 |  |  |     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
 | 
 |  |  |     private Date createTime;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 添加人员
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "添加人员")
 | 
 |  |  |     private Long createBy;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 修改时间
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "修改时间")
 | 
 |  |  |     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
 | 
 |  |  |     private Date updateTime;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 修改人员
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "修改人员")
 | 
 |  |  |     private Long updateBy;
 | 
 |  |  | 
 | 
 |  |  |     /**
 | 
 |  |  |      * 备注
 | 
 |  |  |      */
 | 
 |  |  |     @ApiModelProperty(value= "备注")
 | 
 |  |  |     private String memo;
 | 
 |  |  | 
 | 
 |  |  |     @TableField(exist = false)
 | 
 |  |  |     private Long[] roleIds;
 | 
 |  |  | 
 | 
 |  |  |     @TableField(exist = false)
 | 
 |  |  |     private List<Role> roles;
 | 
 |  |  | 
 | 
 |  |  |     @TableField(exist = false)
 | 
 |  |  |     private List<Menu> authorities;
 | 
 |  |  | 
 | 
 |  |  |     public User() {}
 | 
 |  |  | 
 | 
 |  |  |     public User(String username,String password,String nickname,String avatar,String code,Integer sex,String phone,String email,Integer emailVerified,Long deptId,String realName,String idCard,String birthday,String introduction,Long hostId,Integer status,Integer deleted,Date createTime,Long createBy,Date updateTime,Long updateBy,String memo) {
 | 
 |  |  |         this.username = username;
 | 
 |  |  |         this.password = password;
 | 
 |  |  |         this.nickname = nickname;
 | 
 |  |  |         this.avatar = avatar;
 | 
 |  |  |         this.code = code;
 | 
 |  |  |         this.sex = sex;
 | 
 |  |  |         this.phone = phone;
 | 
 |  |  |         this.email = email;
 | 
 |  |  |         this.emailVerified = emailVerified;
 | 
 |  |  |         this.deptId = deptId;
 | 
 |  |  |         this.realName = realName;
 | 
 |  |  |         this.idCard = idCard;
 | 
 |  |  |         this.birthday = birthday;
 | 
 |  |  |         this.introduction = introduction;
 | 
 |  |  |         this.hostId = hostId;
 | 
 |  |  |         this.status = status;
 | 
 |  |  |         this.deleted = deleted;
 | 
 |  |  |         this.createTime = createTime;
 | 
 |  |  |         this.createBy = createBy;
 | 
 |  |  |         this.updateTime = updateTime;
 | 
 |  |  |         this.updateBy = updateBy;
 | 
 |  |  |         this.memo = memo;
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  | //    User user = new User(
 | 
 |  |  | //            null,    // 账号[非空]
 | 
 |  |  | //            null,    // 密码
 | 
 |  |  | //            null,    // 昵称
 | 
 |  |  | //            null,    // 头像
 | 
 |  |  | //            null,    // 工号
 | 
 |  |  | //            null,    // 性别
 | 
 |  |  | //            null,    // 手机号
 | 
 |  |  | //            null,    // 邮箱
 | 
 |  |  | //            null,    // 邮箱验证
 | 
 |  |  | //            null,    // 所属部门
 | 
 |  |  | //            null,    // 真实姓名
 | 
 |  |  | //            null,    // 身份证号
 | 
 |  |  | //            null,    // 出生日期
 | 
 |  |  | //            null,    // 个人简介
 | 
 |  |  | //            null,    // 所属机构
 | 
 |  |  | //            null,    // 状态
 | 
 |  |  | //            null,    // 是否删除
 | 
 |  |  | //            null,    // 添加时间
 | 
 |  |  | //            null,    // 添加人员
 | 
 |  |  | //            null,    // 修改时间
 | 
 |  |  | //            null,    // 修改人员
 | 
 |  |  | //            null    // 备注
 | 
 |  |  | //    );
 | 
 |  |  | 
 | 
 |  |  |     public String getSex$(){
 | 
 |  |  |         if (null == this.sex){ return null; }
 | 
 |  |  |         switch (this.sex){
 | 
 |  |  |             case 0:
 | 
 |  |  |                 return "未知";
 | 
 |  |  |             case 1:
 | 
 |  |  |                 return "男";
 | 
 |  |  |             case 2:
 | 
 |  |  |                 return "女";
 | 
 |  |  |             default:
 | 
 |  |  |                 return String.valueOf(this.sex);
 | 
 |  |  |         }
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public String getEmailVerified$(){
 | 
 |  |  |         if (null == this.emailVerified){ return null; }
 | 
 |  |  |         switch (this.emailVerified){
 | 
 |  |  |             case 0:
 | 
 |  |  |                 return "否";
 | 
 |  |  |             case 1:
 | 
 |  |  |                 return "是";
 | 
 |  |  |             default:
 | 
 |  |  |                 return String.valueOf(this.emailVerified);
 | 
 |  |  |         }
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public String getDeptId$(){
 | 
 |  |  |         DeptService service = SpringUtils.getBean(DeptService.class);
 | 
 |  |  |         Dept dept = service.getById(this.deptId);
 | 
 |  |  |         if (!Cools.isEmpty(dept)){
 | 
 |  |  |             return String.valueOf(dept.getName());
 | 
 |  |  |         }
 | 
 |  |  |         return null;
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public String getHostId$(){
 | 
 |  |  |         HostService service = SpringUtils.getBean(HostService.class);
 | 
 |  |  |         Host host = service.getById(this.hostId);
 | 
 |  |  |         if (!Cools.isEmpty(host)){
 | 
 |  |  |             return String.valueOf(host.getName());
 | 
 |  |  |         }
 | 
 |  |  |         return null;
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public String getStatus$(){
 | 
 |  |  |         if (null == this.status){ return null; }
 | 
 |  |  |         switch (this.status){
 | 
 |  |  |             case 1:
 | 
 |  |  |                 return "正常";
 | 
 |  |  |             case 0:
 | 
 |  |  |                 return "禁用";
 | 
 |  |  |             default:
 | 
 |  |  |                 return String.valueOf(this.status);
 | 
 |  |  |         }
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public String getDeleted$(){
 | 
 |  |  |         if (null == this.deleted){ return null; }
 | 
 |  |  |         switch (this.deleted){
 | 
 |  |  |             case 1:
 | 
 |  |  |                 return "是";
 | 
 |  |  |             case 0:
 | 
 |  |  |                 return "否";
 | 
 |  |  |             default:
 | 
 |  |  |                 return String.valueOf(this.deleted);
 | 
 |  |  |         }
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public String getCreateTime$(){
 | 
 |  |  |         if (Cools.isEmpty(this.createTime)){
 | 
 |  |  |             return "";
 | 
 |  |  |         }
 | 
 |  |  |         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public String getCreateBy$(){
 | 
 |  |  |         UserService service = SpringUtils.getBean(UserService.class);
 | 
 |  |  |         User user = service.getById(this.createBy);
 | 
 |  |  |         if (!Cools.isEmpty(user)){
 | 
 |  |  |             return String.valueOf(user.getNickname());
 | 
 |  |  |         }
 | 
 |  |  |         return null;
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public String getUpdateTime$(){
 | 
 |  |  |         if (Cools.isEmpty(this.updateTime)){
 | 
 |  |  |             return "";
 | 
 |  |  |         }
 | 
 |  |  |         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime);
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public String getUpdateBy$(){
 | 
 |  |  |         UserService service = SpringUtils.getBean(UserService.class);
 | 
 |  |  |         User user = service.getById(this.updateBy);
 | 
 |  |  |         if (!Cools.isEmpty(user)){
 | 
 |  |  |             return String.valueOf(user.getNickname());
 | 
 |  |  |         }
 | 
 |  |  |         return null;
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public Long[] getRoleIds() {
 | 
 |  |  |         return this.roleIds;
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public Long[] getUserRoleIds() {
 | 
 |  |  |         UserRoleService service = SpringUtils.getBean(UserRoleService.class);
 | 
 |  |  |         List<UserRole> list = service.list(new LambdaQueryWrapper<UserRole>().eq(UserRole::getUserId, this.id));
 | 
 |  |  |         return list.stream().map(UserRole::getRoleId).toArray(Long[]::new);
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     @Override
 | 
 |  |  |     public boolean isAccountNonExpired() {
 | 
 |  |  |         return true;
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     @Override
 | 
 |  |  |     public boolean isAccountNonLocked() {
 | 
 |  |  |         return this.status != null && this.status == 1;
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     @Override
 | 
 |  |  |     public boolean isCredentialsNonExpired() {
 | 
 |  |  |         return true;
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     @Override
 | 
 |  |  |     public boolean isEnabled() {
 | 
 |  |  |         return true;
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  |     public Long getHostId() {
 | 
 |  |  |         boolean root = false;
 | 
 |  |  |         UserRoleService userRoleService = SpringUtils.getBean(UserRoleService.class);
 | 
 |  |  |         UserLoginService userLoginService = SpringUtils.getBean(UserLoginService.class);
 | 
 |  |  |         List<Role> roles = userRoleService.listByUserId(this.id);
 | 
 |  |  |         for (Role role : roles) {
 | 
 |  |  |             if (role.getId() == 1) {
 | 
 |  |  |                 root = true;
 | 
 |  |  |                 break;
 | 
 |  |  |             }
 | 
 |  |  |         }
 | 
 |  |  | 
 | 
 |  |  |         if (root) {
 | 
 |  |  |             UserLogin userLogin = userLoginService.superFindByUserId(this.id, String.valueOf(LoginSystemType.WMS));
 | 
 |  |  |             if (userLogin != null) {
 | 
 |  |  |                 return userLogin.getHostId();
 | 
 |  |  |             }
 | 
 |  |  |         }
 | 
 |  |  |         return this.hostId;
 | 
 |  |  |     }
 | 
 |  |  | 
 | 
 |  |  | }
 |