feat(common): 优化基础框架和认证模块
- 完善Token认证服务和用户上下文管理 - 优化BaseEntity基础实体类 - 更新pom.xml依赖配置 -增强通用工具类功能
This commit is contained in:
parent
ab412935e1
commit
6dfc8ea686
@ -78,6 +78,13 @@
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<!-- Hutool (雪花ID生成器) -->
|
||||
<dependency>
|
||||
<groupId>cn.hutool</groupId>
|
||||
<artifactId>hutool-core</artifactId>
|
||||
<version>5.8.25</version>
|
||||
</dependency>
|
||||
|
||||
<!-- Test -->
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
|
||||
@ -17,7 +17,7 @@ public class TokenInfo implements Serializable {
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
private Long userId;
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 用户名
|
||||
@ -27,7 +27,7 @@ public class TokenInfo implements Serializable {
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
private Long tenantId;
|
||||
private String tenantId;
|
||||
|
||||
/**
|
||||
* 登录时间戳
|
||||
@ -42,7 +42,7 @@ public class TokenInfo implements Serializable {
|
||||
public TokenInfo() {
|
||||
}
|
||||
|
||||
public TokenInfo(Long userId, String username, Long tenantId, Long expireTime) {
|
||||
public TokenInfo(String userId, String username, String tenantId, Long expireTime) {
|
||||
this.userId = userId;
|
||||
this.username = username;
|
||||
this.tenantId = tenantId;
|
||||
@ -50,11 +50,11 @@ public class TokenInfo implements Serializable {
|
||||
this.expireTime = expireTime;
|
||||
}
|
||||
|
||||
public Long getUserId() {
|
||||
public String getUserId() {
|
||||
return userId;
|
||||
}
|
||||
|
||||
public void setUserId(Long userId) {
|
||||
public void setUserId(String userId) {
|
||||
this.userId = userId;
|
||||
}
|
||||
|
||||
@ -66,11 +66,11 @@ public class TokenInfo implements Serializable {
|
||||
this.username = username;
|
||||
}
|
||||
|
||||
public Long getTenantId() {
|
||||
public String getTenantId() {
|
||||
return tenantId;
|
||||
}
|
||||
|
||||
public void setTenantId(Long tenantId) {
|
||||
public void setTenantId(String tenantId) {
|
||||
this.tenantId = tenantId;
|
||||
}
|
||||
|
||||
|
||||
@ -42,7 +42,7 @@ public class TokenService {
|
||||
* @param tenantId 租户ID
|
||||
* @return Token字符串
|
||||
*/
|
||||
public String generateToken(Long userId, String username, Long tenantId) {
|
||||
public String generateToken(String userId, String username, String tenantId) {
|
||||
return generateToken(userId, username, tenantId, DEFAULT_EXPIRE_SECONDS);
|
||||
}
|
||||
|
||||
@ -55,7 +55,7 @@ public class TokenService {
|
||||
* @param expireSeconds 过期时间(秒)
|
||||
* @return Token字符串
|
||||
*/
|
||||
public String generateToken(Long userId, String username, Long tenantId, long expireSeconds) {
|
||||
public String generateToken(String userId, String username, String tenantId, long expireSeconds) {
|
||||
// 生成UUID作为Token
|
||||
String token = UUID.randomUUID().toString().replace("-", "");
|
||||
|
||||
@ -173,7 +173,7 @@ public class TokenService {
|
||||
*
|
||||
* @param userId 用户ID
|
||||
*/
|
||||
public void deleteAllUserTokens(Long userId) {
|
||||
public void deleteAllUserTokens(String userId) {
|
||||
String userTokensKey = getUserTokensKey(userId);
|
||||
java.util.Map<Object, Object> tokens = redisService.hGetAll(userTokensKey);
|
||||
|
||||
@ -225,7 +225,7 @@ public class TokenService {
|
||||
/**
|
||||
* 构建用户Token列表Key
|
||||
*/
|
||||
private String getUserTokensKey(Long userId) {
|
||||
private String getUserTokensKey(String userId) {
|
||||
return USER_TOKENS_PREFIX + userId;
|
||||
}
|
||||
}
|
||||
|
||||
@ -5,17 +5,17 @@ package com.fundplatform.common.context;
|
||||
*/
|
||||
public final class UserContextHolder {
|
||||
|
||||
private static final ThreadLocal<Long> USER_ID_HOLDER = new ThreadLocal<>();
|
||||
private static final ThreadLocal<String> USER_ID_HOLDER = new ThreadLocal<>();
|
||||
private static final ThreadLocal<String> USER_NAME_HOLDER = new ThreadLocal<>();
|
||||
|
||||
private UserContextHolder() {
|
||||
}
|
||||
|
||||
public static void setUserId(Long userId) {
|
||||
public static void setUserId(String userId) {
|
||||
USER_ID_HOLDER.set(userId);
|
||||
}
|
||||
|
||||
public static Long getUserId() {
|
||||
public static String getUserId() {
|
||||
return USER_ID_HOLDER.get();
|
||||
}
|
||||
|
||||
|
||||
@ -8,25 +8,27 @@ import java.time.LocalDateTime;
|
||||
*
|
||||
* <p>注意:此类不绑定具体 ORM 框架注解(如 JPA、MyBatis-Plus),
|
||||
* 仅作为字段规范的统一来源,具体映射由各模块自行扩展。</p>
|
||||
*
|
||||
* <p>主键采用字符串类型(雪花算法生成),解决前端JavaScript大数精度丢失问题。</p>
|
||||
*/
|
||||
public abstract class BaseEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/** 主键ID */
|
||||
private Long id;
|
||||
/** 主键ID(雪花算法生成的19位字符串) */
|
||||
private String id;
|
||||
|
||||
/** 租户ID(多租户隔离) */
|
||||
private Long tenantId;
|
||||
private String tenantId;
|
||||
|
||||
/** 创建人 */
|
||||
private Long createdBy;
|
||||
private String createdBy;
|
||||
|
||||
/** 创建时间 */
|
||||
private LocalDateTime createdTime;
|
||||
|
||||
/** 更新人 */
|
||||
private Long updatedBy;
|
||||
private String updatedBy;
|
||||
|
||||
/** 更新时间 */
|
||||
private LocalDateTime updatedTime;
|
||||
@ -37,27 +39,27 @@ public abstract class BaseEntity implements Serializable {
|
||||
/** 备注 */
|
||||
private String remark;
|
||||
|
||||
public Long getId() {
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Long id) {
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public Long getTenantId() {
|
||||
public String getTenantId() {
|
||||
return tenantId;
|
||||
}
|
||||
|
||||
public void setTenantId(Long tenantId) {
|
||||
public void setTenantId(String tenantId) {
|
||||
this.tenantId = tenantId;
|
||||
}
|
||||
|
||||
public Long getCreatedBy() {
|
||||
public String getCreatedBy() {
|
||||
return createdBy;
|
||||
}
|
||||
|
||||
public void setCreatedBy(Long createdBy) {
|
||||
public void setCreatedBy(String createdBy) {
|
||||
this.createdBy = createdBy;
|
||||
}
|
||||
|
||||
@ -69,11 +71,11 @@ public abstract class BaseEntity implements Serializable {
|
||||
this.createdTime = createdTime;
|
||||
}
|
||||
|
||||
public Long getUpdatedBy() {
|
||||
public String getUpdatedBy() {
|
||||
return updatedBy;
|
||||
}
|
||||
|
||||
public void setUpdatedBy(Long updatedBy) {
|
||||
public void setUpdatedBy(String updatedBy) {
|
||||
this.updatedBy = updatedBy;
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user