feat:修复已知问题,提升系统稳定性
This commit is contained in:
@@ -7,34 +7,20 @@
|
||||
<description>remi-demo-domain</description>
|
||||
|
||||
<parent>
|
||||
<groupId>ai.remi.top.cloud</groupId>
|
||||
<groupId>ai.remi.top.demo</groupId>
|
||||
<artifactId>remi-demo</artifactId>
|
||||
<version>3.1.1</version>
|
||||
<version>3.1.0</version>
|
||||
</parent>
|
||||
|
||||
<!-- 打包上传到私服, 需要和配置文件中的server节点配合使用 -->
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>maven-releases</id>
|
||||
<name>release</name>
|
||||
<url>https://repository.njydsz.com/repository/maven-releases/</url>
|
||||
</repository>
|
||||
<snapshotRepository>
|
||||
<id>maven-snapshots</id>
|
||||
<name>snapshot</name>
|
||||
<url>https://repository.njydsz.com/repository/maven-snapshots/</url>
|
||||
</snapshotRepository>
|
||||
</distributionManagement>
|
||||
|
||||
<dependencies>
|
||||
<!--remi-comm-domain-->
|
||||
<dependency>
|
||||
<groupId>ai.remi.top.cloud</groupId>
|
||||
<groupId>ai.remi.top.comm</groupId>
|
||||
<artifactId>remi-comm-domain</artifactId>
|
||||
</dependency>
|
||||
<!--remi-comm-swagger-->
|
||||
<dependency>
|
||||
<groupId>ai.remi.top.cloud</groupId>
|
||||
<groupId>ai.remi.top.comm</groupId>
|
||||
<artifactId>remi-comm-swagger</artifactId>
|
||||
</dependency>
|
||||
<!-- Lombok -->
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package ai.remi.demo.domain.constant;
|
||||
package ai.remi.boot.domain.constant;
|
||||
|
||||
/**
|
||||
* 单点登录基础常量
|
||||
@@ -0,0 +1,56 @@
|
||||
package ai.remi.boot.domain.converter;
|
||||
|
||||
|
||||
import ai.remi.boot.domain.dto.post.UserPostDTO;
|
||||
import ai.remi.boot.domain.dto.put.UserPutDTO;
|
||||
import ai.remi.boot.domain.entity.User;
|
||||
import ai.remi.boot.domain.query.UserQuery;
|
||||
import ai.remi.boot.domain.vo.UserVO;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
|
||||
/**
|
||||
* @author DianJiu
|
||||
* @email dianjiuxyz@gmail.com
|
||||
* @desc 用户表 UserConverter转换接口
|
||||
*/
|
||||
@Mapper
|
||||
public interface UserConverter {
|
||||
|
||||
UserConverter INSTANT = Mappers.getMapper(UserConverter.class);
|
||||
|
||||
@Mapping(target = "id", ignore = true)
|
||||
@Mapping(target = "deleted", ignore = true)
|
||||
@Mapping(target = "revision", ignore = true)
|
||||
@Mapping(target = "deptTenantId", ignore = true)
|
||||
@Mapping(target = "companyTenantId", ignore = true)
|
||||
@Mapping(target = "createdBy", ignore = true)
|
||||
@Mapping(target = "createdAt", ignore = true)
|
||||
@Mapping(target = "updatedBy", ignore = true)
|
||||
@Mapping(target = "updatedAt", ignore = true)
|
||||
User postDtoToEntity(UserPostDTO userDTO);
|
||||
|
||||
@Mapping(target = "deleted", ignore = true)
|
||||
@Mapping(target = "revision", ignore = true)
|
||||
@Mapping(target = "deptTenantId", ignore = true)
|
||||
@Mapping(target = "companyTenantId", ignore = true)
|
||||
@Mapping(target = "createdBy", ignore = true)
|
||||
@Mapping(target = "createdAt", ignore = true)
|
||||
@Mapping(target = "updatedBy", ignore = true)
|
||||
@Mapping(target = "updatedAt", ignore = true)
|
||||
User putDtoToEntity(UserPutDTO userDTO);
|
||||
|
||||
@Mapping(target = "deleted", ignore = true)
|
||||
@Mapping(target = "revision", ignore = true)
|
||||
@Mapping(target = "deptTenantId", ignore = true)
|
||||
@Mapping(target = "companyTenantId", ignore = true)
|
||||
@Mapping(target = "createdBy", ignore = true)
|
||||
@Mapping(target = "createdAt", ignore = true)
|
||||
@Mapping(target = "updatedBy", ignore = true)
|
||||
@Mapping(target = "updatedAt", ignore = true)
|
||||
User queryToEntity(UserQuery userQuery);
|
||||
|
||||
UserVO entityToVO(User user);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,195 @@
|
||||
package ai.remi.boot.domain.dto.post;
|
||||
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* @author DianJiu
|
||||
* @email dianjiuxyz@gmail.com
|
||||
* @desc 用户表 UserDTO对象
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ToString(callSuper = true)
|
||||
@Schema(description = "用户表")
|
||||
public class UserPostDTO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -48342054464737753L;
|
||||
|
||||
/**
|
||||
* 所属公司ID
|
||||
*/
|
||||
@Schema(description = "所属公司ID")
|
||||
private String companyId;
|
||||
|
||||
/**
|
||||
* 所属公司编码
|
||||
*/
|
||||
@Schema(description = "所属公司编码")
|
||||
private String companyCode;
|
||||
|
||||
/**
|
||||
* 所属部门ID
|
||||
*/
|
||||
@Schema(description = "所属部门ID")
|
||||
private String deptId;
|
||||
|
||||
/**
|
||||
* 所属部门编码
|
||||
*/
|
||||
@Schema(description = "所属部门编码")
|
||||
private String deptCode;
|
||||
|
||||
/**
|
||||
* 用户编码/员工工号
|
||||
*/
|
||||
@Schema(description = "用户编码/员工工号")
|
||||
private String userCode;
|
||||
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
@Schema(description = "用户名称")
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 用户英文名称
|
||||
*/
|
||||
@Schema(description = "用户英文名称")
|
||||
private String userNameEn;
|
||||
|
||||
/**
|
||||
* 用户首名(东方为姓,西方为名)
|
||||
*/
|
||||
@Schema(description = "用户首名(东方为姓,西方为名)")
|
||||
private String firstName;
|
||||
|
||||
/**
|
||||
* 用户中名(欧美人常用)
|
||||
*/
|
||||
@Schema(description = "用户中名(欧美人常用)")
|
||||
private String middleName;
|
||||
|
||||
/**
|
||||
* 用户末名(东方为名,西方为姓)
|
||||
*/
|
||||
@Schema(description = "用户末名(东方为名,西方为姓)")
|
||||
private String lastName;
|
||||
|
||||
/**
|
||||
* 用户昵称/别号
|
||||
*/
|
||||
@Schema(description = "用户昵称/别号")
|
||||
private String nickName;
|
||||
|
||||
/**
|
||||
* 登录账号
|
||||
*/
|
||||
@Schema(description = "登录账号")
|
||||
private String loginName;
|
||||
|
||||
/**
|
||||
* 登录密码
|
||||
*/
|
||||
@Schema(description = "登录密码")
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 职位ID
|
||||
*/
|
||||
@Schema(description = "职位ID")
|
||||
private String positionId;
|
||||
|
||||
/**
|
||||
* 职位编码
|
||||
*/
|
||||
@Schema(description = "职位编码")
|
||||
private String positionCode;
|
||||
|
||||
/**
|
||||
* 职级ID
|
||||
*/
|
||||
@Schema(description = "职级ID")
|
||||
private String rankId;
|
||||
|
||||
/**
|
||||
* 职级编码
|
||||
*/
|
||||
@Schema(description = "职级编码")
|
||||
private String rankCode;
|
||||
|
||||
/**
|
||||
* 用户描述
|
||||
*/
|
||||
@Schema(description = "用户描述")
|
||||
private String userRemark;
|
||||
|
||||
/**
|
||||
* 出生日期
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||
@Schema(description = "出生日期")
|
||||
private LocalDate birthday;
|
||||
|
||||
/**
|
||||
* 证件号码
|
||||
*/
|
||||
@Schema(description = "证件号码")
|
||||
private String identity;
|
||||
|
||||
/**
|
||||
* 电话号码
|
||||
*/
|
||||
@Schema(description = "电话号码")
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 电子邮箱
|
||||
*/
|
||||
@Schema(description = "电子邮箱")
|
||||
private String email;
|
||||
|
||||
/**
|
||||
* 用户性别(0女性 1男性)
|
||||
*/
|
||||
@Schema(description = "用户性别(0女性 1男性)")
|
||||
private Integer sex;
|
||||
|
||||
/**
|
||||
* 头像地址
|
||||
*/
|
||||
@Schema(description = "头像地址")
|
||||
private String headPic;
|
||||
|
||||
/**
|
||||
* 最后登录IP
|
||||
*/
|
||||
@Schema(description = "最后登录IP")
|
||||
private String loginIp;
|
||||
|
||||
/**
|
||||
* 最后登录时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@Schema(description = "最后登录时间")
|
||||
private LocalDateTime loginDate;
|
||||
|
||||
/**
|
||||
* 是否启用(0停用 1启用)
|
||||
*/
|
||||
@Schema(description = "是否启用(0停用 1启用)")
|
||||
private Integer status;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,201 @@
|
||||
package ai.remi.boot.domain.dto.put;
|
||||
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* @author DianJiu
|
||||
* @email dianjiuxyz@gmail.com
|
||||
* @desc 用户表 UserDTO对象
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ToString(callSuper = true)
|
||||
@Schema(description = "用户表")
|
||||
public class UserPutDTO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -67424143626189045L;
|
||||
|
||||
/**
|
||||
* ID
|
||||
*/
|
||||
@Schema(description = "ID")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 所属公司ID
|
||||
*/
|
||||
@Schema(description = "所属公司ID")
|
||||
private String companyId;
|
||||
|
||||
/**
|
||||
* 所属公司编码
|
||||
*/
|
||||
@Schema(description = "所属公司编码")
|
||||
private String companyCode;
|
||||
|
||||
/**
|
||||
* 所属部门ID
|
||||
*/
|
||||
@Schema(description = "所属部门ID")
|
||||
private String deptId;
|
||||
|
||||
/**
|
||||
* 所属部门编码
|
||||
*/
|
||||
@Schema(description = "所属部门编码")
|
||||
private String deptCode;
|
||||
|
||||
/**
|
||||
* 用户编码/员工工号
|
||||
*/
|
||||
@Schema(description = "用户编码/员工工号")
|
||||
private String userCode;
|
||||
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
@Schema(description = "用户名称")
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 用户英文名称
|
||||
*/
|
||||
@Schema(description = "用户英文名称")
|
||||
private String userNameEn;
|
||||
|
||||
/**
|
||||
* 用户首名(东方为姓,西方为名)
|
||||
*/
|
||||
@Schema(description = "用户首名(东方为姓,西方为名)")
|
||||
private String firstName;
|
||||
|
||||
/**
|
||||
* 用户中名(欧美人常用)
|
||||
*/
|
||||
@Schema(description = "用户中名(欧美人常用)")
|
||||
private String middleName;
|
||||
|
||||
/**
|
||||
* 用户末名(东方为名,西方为姓)
|
||||
*/
|
||||
@Schema(description = "用户末名(东方为名,西方为姓)")
|
||||
private String lastName;
|
||||
|
||||
/**
|
||||
* 用户昵称/别号
|
||||
*/
|
||||
@Schema(description = "用户昵称/别号")
|
||||
private String nickName;
|
||||
|
||||
/**
|
||||
* 登录账号
|
||||
*/
|
||||
@Schema(description = "登录账号")
|
||||
private String loginName;
|
||||
|
||||
/**
|
||||
* 登录密码
|
||||
*/
|
||||
@Schema(description = "登录密码")
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 职位ID
|
||||
*/
|
||||
@Schema(description = "职位ID")
|
||||
private String positionId;
|
||||
|
||||
/**
|
||||
* 职位编码
|
||||
*/
|
||||
@Schema(description = "职位编码")
|
||||
private String positionCode;
|
||||
|
||||
/**
|
||||
* 职级ID
|
||||
*/
|
||||
@Schema(description = "职级ID")
|
||||
private String rankId;
|
||||
|
||||
/**
|
||||
* 职级编码
|
||||
*/
|
||||
@Schema(description = "职级编码")
|
||||
private String rankCode;
|
||||
|
||||
/**
|
||||
* 用户描述
|
||||
*/
|
||||
@Schema(description = "用户描述")
|
||||
private String userRemark;
|
||||
|
||||
/**
|
||||
* 出生日期
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||
@Schema(description = "出生日期")
|
||||
private LocalDate birthday;
|
||||
|
||||
/**
|
||||
* 证件号码
|
||||
*/
|
||||
@Schema(description = "证件号码")
|
||||
private String identity;
|
||||
|
||||
/**
|
||||
* 电话号码
|
||||
*/
|
||||
@Schema(description = "电话号码")
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 电子邮箱
|
||||
*/
|
||||
@Schema(description = "电子邮箱")
|
||||
private String email;
|
||||
|
||||
/**
|
||||
* 用户性别(0女性 1男性)
|
||||
*/
|
||||
@Schema(description = "用户性别(0女性 1男性)")
|
||||
private Integer sex;
|
||||
|
||||
/**
|
||||
* 头像地址
|
||||
*/
|
||||
@Schema(description = "头像地址")
|
||||
private String headPic;
|
||||
|
||||
/**
|
||||
* 最后登录IP
|
||||
*/
|
||||
@Schema(description = "最后登录IP")
|
||||
private String loginIp;
|
||||
|
||||
/**
|
||||
* 最后登录时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@Schema(description = "最后登录时间")
|
||||
private LocalDateTime loginDate;
|
||||
|
||||
/**
|
||||
* 是否启用(0停用 1启用)
|
||||
*/
|
||||
@Schema(description = "是否启用(0停用 1启用)")
|
||||
private Integer status;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,123 @@
|
||||
package ai.remi.boot.domain.entity;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import ai.remi.comm.domain.entity.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* @author DianJiu
|
||||
* @email dianjiuxyz@gmail.com
|
||||
* @desc 用户表 UserDTO对象
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("remi_user")
|
||||
public class User extends BaseEntity {
|
||||
|
||||
|
||||
/**
|
||||
* 用户编码/员工工号
|
||||
*/
|
||||
private String userCode;
|
||||
|
||||
/**
|
||||
* 登录账号
|
||||
*/
|
||||
private String loginName;
|
||||
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 用户英文名称
|
||||
*/
|
||||
private String userNameEn;
|
||||
|
||||
/**
|
||||
* 用户首名(东方为姓,西方为名)
|
||||
*/
|
||||
private String firstName;
|
||||
|
||||
/**
|
||||
* 用户中名(欧美人常用)
|
||||
*/
|
||||
private String middleName;
|
||||
|
||||
/**
|
||||
* 用户末名(东方为名,西方为姓)
|
||||
*/
|
||||
private String lastName;
|
||||
|
||||
/**
|
||||
* 用户昵称/别号
|
||||
*/
|
||||
private String nickName;
|
||||
|
||||
/**
|
||||
* 用户描述
|
||||
*/
|
||||
private String userRemark;
|
||||
|
||||
/**
|
||||
* 登录密码
|
||||
*/
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 出生日期
|
||||
*/
|
||||
private LocalDate birthday;
|
||||
|
||||
/**
|
||||
* 证件号码
|
||||
*/
|
||||
private String identity;
|
||||
|
||||
/**
|
||||
* 电话号码
|
||||
*/
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 电子邮箱
|
||||
*/
|
||||
private String email;
|
||||
|
||||
/**
|
||||
* 用户性别(0女性 1男性)
|
||||
*/
|
||||
private Integer sex;
|
||||
|
||||
/**
|
||||
* 头像地址
|
||||
*/
|
||||
private String headPic;
|
||||
|
||||
/**
|
||||
* 最后登录IP
|
||||
*/
|
||||
private String loginIp;
|
||||
|
||||
/**
|
||||
* 最后登录时间
|
||||
*/
|
||||
private LocalDateTime loginDate;
|
||||
|
||||
/**
|
||||
* 是否启用(0停用 1启用)
|
||||
*/
|
||||
private Integer status;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package ai.remi.boot.domain.enums;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* Redis key枚举类
|
||||
*
|
||||
* @author dianjiu
|
||||
* @date 2021-12-7 16:10:35
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum SsoCacheEnum {
|
||||
/**
|
||||
* 客户登录token,24小时失效 1:{} = customerId 2:{} = token 使用方式 RedisKeysEnum.CUSTOMER_LOGIN_TOKEN.getKey(customerId,token)
|
||||
*/
|
||||
APP_CODE("remi-saas-iam:app-code:{}:{}"),
|
||||
USER_INFO("remi-saas-iam:user-info:{}"),
|
||||
TICKET("remi-saas-iam:ticket:{}"),
|
||||
AUTH_CODE("remi-saas-iam:auth-code:{}"),
|
||||
ACCESS_TOKEN("remi-saas-iam:access-token:{}"),
|
||||
REFRESH_TOKEN("remi-saas-iam:refresh-token:{}");
|
||||
|
||||
|
||||
/**
|
||||
* redis key
|
||||
*/
|
||||
private String key;
|
||||
|
||||
/**
|
||||
* key失效时间,单位秒
|
||||
*/
|
||||
//private Long expireAt;
|
||||
public String getKey(String... key) {
|
||||
return StrUtil.format(this.key, key);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,177 @@
|
||||
package ai.remi.boot.domain.query;
|
||||
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* @author DianJiu
|
||||
* @email dianjiuxyz@gmail.com
|
||||
* @desc 用户表 UserQuery对象
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ToString(callSuper = true)
|
||||
@Schema(description = "用户表")
|
||||
public class UserQuery implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 441095565282363416L;
|
||||
|
||||
/**
|
||||
* ID
|
||||
*/
|
||||
@Schema(description = "ID")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 用户编码/员工工号
|
||||
*/
|
||||
@Schema(description = "用户编码/员工工号")
|
||||
private String userCode;
|
||||
|
||||
/**
|
||||
* 所属公司ID
|
||||
*/
|
||||
@Schema(description = "所属公司ID")
|
||||
private String companyId;
|
||||
|
||||
/**
|
||||
* 所属公司编码
|
||||
*/
|
||||
@Schema(description = "所属公司编码")
|
||||
private String companyCode;
|
||||
|
||||
/**
|
||||
* 所属部门ID
|
||||
*/
|
||||
@Schema(description = "所属部门ID")
|
||||
private String deptId;
|
||||
|
||||
/**
|
||||
* 所属部门编码
|
||||
*/
|
||||
@Schema(description = "所属部门编码")
|
||||
private String deptCode;
|
||||
|
||||
/**
|
||||
* 登录账号
|
||||
*/
|
||||
@Schema(description = "登录账号")
|
||||
private String loginName;
|
||||
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
@Schema(description = "用户名称")
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 用户英文名称
|
||||
*/
|
||||
@Schema(description = "用户英文名称")
|
||||
private String userNameEn;
|
||||
|
||||
/**
|
||||
* 用户首名(东方为姓,西方为名)
|
||||
*/
|
||||
@Schema(description = "用户首名(东方为姓,西方为名)")
|
||||
private String firstName;
|
||||
|
||||
/**
|
||||
* 用户中名(欧美人常用)
|
||||
*/
|
||||
@Schema(description = "用户中名(欧美人常用)")
|
||||
private String middleName;
|
||||
|
||||
/**
|
||||
* 用户末名(东方为名,西方为姓)
|
||||
*/
|
||||
@Schema(description = "用户末名(东方为名,西方为姓)")
|
||||
private String lastName;
|
||||
|
||||
/**
|
||||
* 用户昵称/别号
|
||||
*/
|
||||
@Schema(description = "用户昵称/别号")
|
||||
private String nickName;
|
||||
|
||||
/**
|
||||
* 用户描述
|
||||
*/
|
||||
@Schema(description = "用户描述")
|
||||
private String userRemark;
|
||||
|
||||
/**
|
||||
* 登录密码
|
||||
*/
|
||||
@Schema(description = "登录密码")
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 出生日期
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||
@Schema(description = "出生日期")
|
||||
private LocalDate birthday;
|
||||
|
||||
/**
|
||||
* 证件号码
|
||||
*/
|
||||
@Schema(description = "证件号码")
|
||||
private String identity;
|
||||
|
||||
/**
|
||||
* 电话号码
|
||||
*/
|
||||
@Schema(description = "电话号码")
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 电子邮箱
|
||||
*/
|
||||
@Schema(description = "电子邮箱")
|
||||
private String email;
|
||||
|
||||
/**
|
||||
* 用户性别(0女性 1男性)
|
||||
*/
|
||||
@Schema(description = "用户性别(0女性 1男性)")
|
||||
private Integer sex;
|
||||
|
||||
/**
|
||||
* 头像地址
|
||||
*/
|
||||
@Schema(description = "头像地址")
|
||||
private String headPic;
|
||||
|
||||
/**
|
||||
* 最后登录IP
|
||||
*/
|
||||
@Schema(description = "最后登录IP")
|
||||
private String loginIp;
|
||||
|
||||
/**
|
||||
* 最后登录时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@Schema(description = "最后登录时间")
|
||||
private LocalDateTime loginDate;
|
||||
|
||||
/**
|
||||
* 是否启用(0停用 1启用)
|
||||
*/
|
||||
@Schema(description = "是否启用(0停用 1启用)")
|
||||
private Integer status;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,131 @@
|
||||
package ai.remi.boot.domain.tree;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import ai.remi.comm.domain.tree.TreeNode;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.ToString;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* @author Remi
|
||||
* @email startdis@dianjiukeji.cn
|
||||
* @desc 部门表 DeptVO对象
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ToString(callSuper = true)
|
||||
@Schema(description = "业务组织")
|
||||
public class GroupTree extends TreeNode<GroupTree> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 505874294590378764L;
|
||||
|
||||
/**
|
||||
* ID
|
||||
*/
|
||||
@Schema(description = "ID")
|
||||
private String id;
|
||||
/**
|
||||
* 父菜单ID
|
||||
*/
|
||||
@Schema(description = "父菜单ID")
|
||||
private String parentId;
|
||||
/**
|
||||
* 应用ID
|
||||
*/
|
||||
@Schema(description = "应用ID")
|
||||
private String appId;
|
||||
/**
|
||||
* 应用编码
|
||||
*/
|
||||
@Schema(description = "应用编码")
|
||||
private String appCode;
|
||||
/**
|
||||
* 用户组编码
|
||||
*/
|
||||
@Schema(description = "用户组编码")
|
||||
private String groupCode;
|
||||
/**
|
||||
* 用户组名称
|
||||
*/
|
||||
@Schema(description = "用户组名称")
|
||||
private String groupName;
|
||||
/**
|
||||
* 用户组英文名称
|
||||
*/
|
||||
@Schema(description = "用户组英文名称")
|
||||
private String groupNameEn;
|
||||
/**
|
||||
* 用户组描述
|
||||
*/
|
||||
@Schema(description = "用户组描述")
|
||||
private String groupRemark;
|
||||
/**
|
||||
* 用户组英文描述
|
||||
*/
|
||||
@Schema(description = "用户组英文描述")
|
||||
private String groupRemarkEn;
|
||||
/**
|
||||
* 显示顺序
|
||||
*/
|
||||
@Schema(description = "显示顺序")
|
||||
private Integer sort;
|
||||
/**
|
||||
* 是否启用(0停用 1启用)
|
||||
*/
|
||||
@Schema(description = "是否启用(0停用 1启用)")
|
||||
private Integer status;
|
||||
/**
|
||||
* 是否删除(0正常 1删除)
|
||||
*/
|
||||
@Schema(description = "是否删除(0正常 1删除)")
|
||||
private Integer deleted;
|
||||
/**
|
||||
* 乐观锁
|
||||
*/
|
||||
@Schema(description = "乐观锁")
|
||||
private Integer revision;
|
||||
/**
|
||||
* 部门租户ID
|
||||
*/
|
||||
@Schema(description = "部门租户ID")
|
||||
private String deptTenantId;
|
||||
/**
|
||||
* 公司租户ID
|
||||
*/
|
||||
@Schema(description = "公司租户ID")
|
||||
private String companyTenantId;
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
@Schema(description = "创建人")
|
||||
private String createdBy;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@Schema(description = "创建时间")
|
||||
private LocalDateTime createdAt;
|
||||
/**
|
||||
* 更新人
|
||||
*/
|
||||
@Schema(description = "更新人")
|
||||
private String updatedBy;
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@Schema(description = "更新时间")
|
||||
private LocalDateTime updatedAt;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,294 @@
|
||||
package ai.remi.boot.domain.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author DianJiu
|
||||
* @email dianjiuxyz@gmail.com
|
||||
* @desc 用户表 UserVO对象
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ToString(callSuper = true)
|
||||
@Schema(description = "用户表")
|
||||
public class UserVO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -23942899880966373L;
|
||||
|
||||
/**
|
||||
* ID
|
||||
*/
|
||||
@Schema(description = "ID")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 用户编码/员工工号
|
||||
*/
|
||||
@Schema(description = "用户编码/员工工号")
|
||||
private String userCode;
|
||||
|
||||
/**
|
||||
* 所属公司ID
|
||||
*/
|
||||
@Schema(description = "所属公司ID")
|
||||
private String companyId;
|
||||
|
||||
/**
|
||||
* 所属公司编码
|
||||
*/
|
||||
@Schema(description = "所属公司编码")
|
||||
private String companyCode;
|
||||
|
||||
/**
|
||||
* 所属部门ID
|
||||
*/
|
||||
@Schema(description = "所属部门ID")
|
||||
private String deptId;
|
||||
|
||||
/**
|
||||
* 所属部门编码
|
||||
*/
|
||||
@Schema(description = "所属部门编码")
|
||||
private String deptCode;
|
||||
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
@Schema(description = "用户名称")
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 用户英文名称
|
||||
*/
|
||||
@Schema(description = "用户英文名称")
|
||||
private String userNameEn;
|
||||
|
||||
/**
|
||||
* 用户首名(东方为姓,西方为名)
|
||||
*/
|
||||
@Schema(description = "用户首名(东方为姓,西方为名)")
|
||||
private String firstName;
|
||||
|
||||
/**
|
||||
* 用户中名(欧美人常用)
|
||||
*/
|
||||
@Schema(description = "用户中名(欧美人常用)")
|
||||
private String middleName;
|
||||
|
||||
/**
|
||||
* 用户末名(东方为名,西方为姓)
|
||||
*/
|
||||
@Schema(description = "用户末名(东方为名,西方为姓)")
|
||||
private String lastName;
|
||||
|
||||
/**
|
||||
* 用户昵称/别号
|
||||
*/
|
||||
@Schema(description = "用户昵称/别号")
|
||||
private String nickName;
|
||||
|
||||
/**
|
||||
* 登录账号
|
||||
*/
|
||||
@Schema(description = "登录账号")
|
||||
private String loginName;
|
||||
|
||||
/**
|
||||
* 登录密码
|
||||
*/
|
||||
@Schema(description = "登录密码")
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 职位ID
|
||||
*/
|
||||
@Schema(description = "职位ID")
|
||||
private String positionId;
|
||||
|
||||
/**
|
||||
* 职位编码
|
||||
*/
|
||||
@Schema(description = "职位编码")
|
||||
private String positionCode;
|
||||
|
||||
/**
|
||||
* 职位名称
|
||||
*/
|
||||
@Schema(description = "职位名称")
|
||||
private String positionName;
|
||||
|
||||
/**
|
||||
* 岗位英文名称
|
||||
*/
|
||||
@Schema(description = "职位英文名称")
|
||||
private String positionNameEn;
|
||||
|
||||
/**
|
||||
* 职级ID
|
||||
*/
|
||||
@Schema(description = "职级ID")
|
||||
private String rankId;
|
||||
|
||||
/**
|
||||
* 职级编码
|
||||
*/
|
||||
@Schema(description = "职级编码")
|
||||
private String rankCode;
|
||||
|
||||
/**
|
||||
* 职级名称
|
||||
*/
|
||||
@Schema(description = "职级名称")
|
||||
private String rankName;
|
||||
|
||||
/**
|
||||
* 职级英文名称
|
||||
*/
|
||||
@Schema(description = "职级英文名称")
|
||||
private String rankNameEn;
|
||||
|
||||
/**
|
||||
* 用户描述
|
||||
*/
|
||||
@Schema(description = "用户描述")
|
||||
private String userRemark;
|
||||
|
||||
/**
|
||||
* 出生日期
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||
@Schema(description = "出生日期")
|
||||
private LocalDate birthday;
|
||||
|
||||
/**
|
||||
* 证件号码
|
||||
*/
|
||||
@Schema(description = "证件号码")
|
||||
private String identity;
|
||||
|
||||
/**
|
||||
* 电话号码
|
||||
*/
|
||||
@Schema(description = "电话号码")
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 电子邮箱
|
||||
*/
|
||||
@Schema(description = "电子邮箱")
|
||||
private String email;
|
||||
|
||||
/**
|
||||
* 用户性别(0女性 1男性)
|
||||
*/
|
||||
@Schema(description = "用户性别(0女性 1男性)")
|
||||
private Integer sex;
|
||||
|
||||
/**
|
||||
* 头像地址
|
||||
*/
|
||||
@Schema(description = "头像地址")
|
||||
private String headPic;
|
||||
|
||||
/**
|
||||
* 最后登录IP
|
||||
*/
|
||||
@Schema(description = "最后登录IP")
|
||||
private String loginIp;
|
||||
|
||||
/**
|
||||
* 用户角色集合
|
||||
*/
|
||||
@Schema(description = "用户角色集合")
|
||||
private List<RoleVO> userRoles;
|
||||
|
||||
/**
|
||||
* 用户菜单集合
|
||||
*/
|
||||
@Schema(description = "用户菜单集合")
|
||||
private List<AppMenuVO> userMenus;
|
||||
|
||||
/**
|
||||
* 应用的全局配置
|
||||
*/
|
||||
@Schema(description = "用户全局配置")
|
||||
private List<ConfigVO> appConfigs;
|
||||
|
||||
/**
|
||||
* 最后登录时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@Schema(description = "最后登录时间")
|
||||
private LocalDateTime loginDate;
|
||||
|
||||
/**
|
||||
* 是否启用(0停用 1启用)
|
||||
*/
|
||||
@Schema(description = "是否启用(0停用 1启用)")
|
||||
private Integer status;
|
||||
|
||||
/**
|
||||
* 是否删除(0正常 1删除)
|
||||
*/
|
||||
@Schema(description = "是否删除(0正常 1删除)")
|
||||
private Integer deleted;
|
||||
|
||||
/**
|
||||
* 乐观锁
|
||||
*/
|
||||
@Schema(description = "乐观锁")
|
||||
private Long revision;
|
||||
|
||||
/**
|
||||
* 部门租户ID
|
||||
*/
|
||||
@Schema(description = "部门租户ID")
|
||||
private String deptTenantId;
|
||||
|
||||
/**
|
||||
* 公司租户ID
|
||||
*/
|
||||
@Schema(description = "公司租户ID")
|
||||
private String companyTenantId;
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
@Schema(description = "创建人")
|
||||
private String createdBy;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@Schema(description = "创建时间")
|
||||
private LocalDateTime createdAt;
|
||||
|
||||
/**
|
||||
* 更新人
|
||||
*/
|
||||
@Schema(description = "更新人")
|
||||
private String updatedBy;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@Schema(description = "更新时间")
|
||||
private LocalDateTime updatedAt;
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user