Merge pull request #15 from Bull-BCLS/1.1.x

fix: 还原登录 Helper 优化
This commit is contained in:
Charles7c 2023-09-06 20:47:19 +08:00 committed by GitHub
commit 8997a5bf76
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -41,8 +41,8 @@ import top.charles7c.cnadmin.common.util.holder.LogContextHolder;
/** /**
* 登录助手 * 登录助手
* *
* @author Lion LiRuoYi-Vue-Plus
* @author Charles7c * @author Charles7c
* @author Lion LiRuoYi-Vue-Plus
* @since 2022/12/24 12:58 * @since 2022/12/24 12:58
*/ */
@NoArgsConstructor(access = AccessLevel.PRIVATE) @NoArgsConstructor(access = AccessLevel.PRIVATE)
@ -55,10 +55,6 @@ public class LoginHelper {
* 登录用户信息 * 登录用户信息
*/ */
public static void login(LoginUser loginUser) { public static void login(LoginUser loginUser) {
if (null == loginUser) {
return;
}
// 记录登录信息 // 记录登录信息
HttpServletRequest request = ServletUtils.getRequest(); HttpServletRequest request = ServletUtils.getRequest();
loginUser.setClientIp(ServletUtil.getClientIP(request)); loginUser.setClientIp(ServletUtil.getClientIP(request));
@ -66,12 +62,11 @@ public class LoginHelper {
loginUser.setBrowser(ServletUtils.getBrowser(request)); loginUser.setBrowser(ServletUtils.getBrowser(request));
LogContext logContext = LogContextHolder.get(); LogContext logContext = LogContextHolder.get();
loginUser.setLoginTime(null != logContext ? logContext.getCreateTime() : LocalDateTime.now()); loginUser.setLoginTime(null != logContext ? logContext.getCreateTime() : LocalDateTime.now());
// 登录并缓存用户信息
// 登录保存用户信息
StpUtil.login(loginUser.getId()); StpUtil.login(loginUser.getId());
SaHolder.getStorage().set(CacheConsts.LOGIN_USER_KEY, loginUser); SaHolder.getStorage().set(CacheConsts.LOGIN_USER_KEY, loginUser);
loginUser.setToken(StpUtil.getTokenValue()); loginUser.setToken(StpUtil.getTokenValue());
StpUtil.getSession().set(CacheConsts.LOGIN_USER_KEY, loginUser); StpUtil.getTokenSession().set(CacheConsts.LOGIN_USER_KEY, loginUser);
} }
/** /**
@ -84,11 +79,11 @@ public class LoginHelper {
if (null != loginUser) { if (null != loginUser) {
return loginUser; return loginUser;
} }
SaSession session = StpUtil.getSession(); SaSession tokenSession = StpUtil.getTokenSession();
if (null == session) { if (null == tokenSession) {
return null; return null;
} }
loginUser = (LoginUser)session.get(CacheConsts.LOGIN_USER_KEY); loginUser = (LoginUser)tokenSession.get(CacheConsts.LOGIN_USER_KEY);
SaHolder.getStorage().set(CacheConsts.LOGIN_USER_KEY, loginUser); SaHolder.getStorage().set(CacheConsts.LOGIN_USER_KEY, loginUser);
return loginUser; return loginUser;
} }
@ -101,12 +96,11 @@ public class LoginHelper {
* @return 登录用户信息 * @return 登录用户信息
*/ */
public static LoginUser getLoginUser(String token) { public static LoginUser getLoginUser(String token) {
Object loginId = StpUtil.getLoginIdByToken(token); SaSession tokenSession = StpUtil.getTokenSessionByToken(token);
SaSession session = StpUtil.getSessionByLoginId(loginId); if (null == tokenSession) {
if (null == session) {
return null; return null;
} }
return (LoginUser)session.get(CacheConsts.LOGIN_USER_KEY); return (LoginUser)tokenSession.get(CacheConsts.LOGIN_USER_KEY);
} }
/** /**