This commit is contained in:
2025-11-08 18:11:16 +08:00
parent 94438d1271
commit b423ea902c
57 changed files with 841 additions and 439 deletions

View File

@@ -60,6 +60,12 @@
<artifactId>spring-security-core</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-annotation</artifactId>
<version>${mybatis-plus.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>

View File

@@ -1,6 +1,9 @@
package cn.fateverse.common.core.entity;
import cn.fateverse.common.core.annotaion.EnableAutoField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -16,14 +19,16 @@ import javax.validation.constraints.Pattern;
* @date 2022/10/30
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("sys_dept")
@EnableAutoField
@EqualsAndHashCode(callSuper = true)
public class Dept extends BaseEntity {
/**
* 部门ID
*/
@TableId(type = IdType.AUTO)
private Long deptId;
/**
@@ -63,7 +68,7 @@ public class Dept extends BaseEntity {
/**
* 联系电话
*/
@Pattern(message = "手机号格式错误!",regexp = "^1[0-9]{10}$")
@Pattern(message = "手机号格式错误!", regexp = "^1[0-9]{10}$")
private String phone;
/**
@@ -83,5 +88,4 @@ public class Dept extends BaseEntity {
private String delFlag;
}

View File

@@ -1,12 +1,10 @@
package cn.fateverse.common.core.entity;
import cn.fateverse.admin.entity.User;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;
import java.util.*;
import java.util.stream.Collectors;
@@ -17,7 +15,7 @@ import java.util.stream.Collectors;
*/
@Data
@NoArgsConstructor
public class LoginUser implements UserDetails {
public class LoginUser implements org.springframework.security.core.userdetails.UserDetails {
/**
* 用户唯一标识
@@ -37,7 +35,7 @@ public class LoginUser implements UserDetails {
/**
* 用户信息
*/
private User user;
private UserDetail user;
/**
* 登录ip

View File

@@ -1,28 +1,27 @@
package cn.fateverse.common.core.entity;
import cn.fateverse.common.core.annotaion.EnableAutoField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.*;
/**
*
* @author Clay
* @date 2022/10/30
*/
@Data
@Builder
@EnableAutoField
@AllArgsConstructor
@NoArgsConstructor
public class Role extends BaseEntity {
@TableName("sys_role")
@EqualsAndHashCode(callSuper = true)
public class Role extends BaseEntity {
/**
* 角色ID
*/
@TableId(type = IdType.AUTO)
private Long roleId;
/**

View File

@@ -1,38 +1,111 @@
package cn.fateverse.common.core.entity;
import cn.fateverse.common.core.annotaion.EnableAutoField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.*;
import java.util.List;
import java.util.Date;
/**
* @author Clay
* @date 2022/10/27
* @date 2022/11/7
*/
@Data
@EnableAutoField
@TableName("sys_user")
@EqualsAndHashCode(callSuper = true)
public class User extends UserBase {
public class User extends BaseEntity {
/**
* 部门对象
* 用户ID
*/
private Dept dept;
@TableId(type = IdType.AUTO)
private Long userId;
/**
* 角色对象
* 部门ID
*/
private List<Role> roles;
private Long deptId;
/**
* 用户账号
*/
private String userName;
/**
* 用户昵称
*/
private String nickName;
/**
* 用户邮箱
*/
private String email;
/**
* 手机号码
*/
private String phoneNumber;
/**
* 用户性别
*/
private String sex;
/**
* 用户头像
*/
private String avatar;
/**
* 密码
*/
private String password;
/**
* 盐加密
*/
@JsonIgnore
public boolean isAdmin() {
return isAdmin(super.getUserId());
}
private String salt;
/**
* 帐号状态1正常 0停用
*/
private String state;
/**
* 删除标志0代表存在 2代表删除
*/
@JsonIgnore
public static boolean isAdmin(Long userId) {
return userId != null && 1L == userId;
}
private String delFlag;
/**
* 用户类型
*/
private String userType;
/**
* 一个微信开放平台帐号下的应用,同一用户的 union
*/
private String unionId;
/**
* 用户唯一标识
*/
private String openId;
/**
* 城市
*/
private String city;
/**
* 最后登录IP
*/
private String loginIp;
/**
* 最后登录时间
*/
private Date loginDate;
}

View File

@@ -1,109 +0,0 @@
package cn.fateverse.common.core.entity;
import cn.fateverse.common.core.annotaion.EnableAutoField;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.*;
import java.util.Date;
/**
* @author Clay
* @date 2022/11/7
*/
@Data
@Builder
@EnableAutoField
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class UserBase extends BaseEntity {
/**
* 用户ID
*/
private Long userId;
/**
* 部门ID
*/
private Long deptId;
/**
* 用户账号
*/
private String userName;
/**
* 用户昵称
*/
private String nickName;
/**
* 用户邮箱
*/
private String email;
/**
* 手机号码
*/
private String phoneNumber;
/**
* 用户性别
*/
private String sex;
/**
* 用户头像
*/
private String avatar;
/**
* 密码
*/
private String password;
/**
* 盐加密
*/
@JsonIgnore
private String salt;
/**
* 帐号状态1正常 0停用
*/
private String state;
/**
* 删除标志0代表存在 2代表删除
*/
@JsonIgnore
private String delFlag;
/**
* 用户类型
*/
private String userType;
/**
* 一个微信开放平台帐号下的应用,同一用户的 union
*/
private String unionId;
/**
* 用户唯一标识
*/
private String openId;
/**
* 城市
*/
private String city;
/**
* 最后登录IP
*/
private String loginIp;
/**
* 最后登录时间
*/
private Date loginDate;
}

View File

@@ -0,0 +1,38 @@
package cn.fateverse.common.core.entity;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* @author Clay
* @date 2022/10/27
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class UserDetail extends User {
/**
* 部门对象
*/
private Dept dept;
/**
* 角色对象
*/
private List<Role> roles;
@JsonIgnore
public boolean isAdmin() {
return isAdmin(super.getUserId());
}
@JsonIgnore
public static boolean isAdmin(Long userId) {
return userId != null && 1L == userId;
}
}