【7.2.5】【auth】更新刷新用户session信息的接口

pull/40/MERGE
fengshuonan 2022-10-17 00:43:33 +08:00
parent 644bc7a94a
commit b42aecf521
3 changed files with 28 additions and 5 deletions

View File

@ -28,6 +28,7 @@ import cn.stylefeng.roses.kernel.auth.api.exception.AuthException;
import cn.stylefeng.roses.kernel.auth.api.pojo.auth.LoginRequest; import cn.stylefeng.roses.kernel.auth.api.pojo.auth.LoginRequest;
import cn.stylefeng.roses.kernel.auth.api.pojo.auth.LoginResponse; import cn.stylefeng.roses.kernel.auth.api.pojo.auth.LoginResponse;
import cn.stylefeng.roses.kernel.auth.api.pojo.auth.LoginWithTokenRequest; import cn.stylefeng.roses.kernel.auth.api.pojo.auth.LoginWithTokenRequest;
import cn.stylefeng.roses.kernel.auth.api.pojo.login.LoginUser;
import cn.stylefeng.roses.kernel.jwt.api.pojo.payload.DefaultJwtPayload; import cn.stylefeng.roses.kernel.jwt.api.pojo.payload.DefaultJwtPayload;
/** /**
@ -123,4 +124,16 @@ public interface AuthServiceApi {
* @date 2022/1/22 16:37 * @date 2022/1/22 16:37
*/ */
void cancelFreeze(LoginRequest loginRequest); void cancelFreeze(LoginRequest loginRequest);
/**
* token
*
* @param token token
* @param account
* @return
* @author fengshuonan
* @date 2022/10/17 0:04
*/
LoginUser createNewLoginInfo(String token, String account);
} }

View File

@ -268,6 +268,18 @@ public class AuthServiceImpl implements AuthServiceApi {
loginErrorCountCacheApi.remove(loginRequest.getAccount()); loginErrorCountCacheApi.remove(loginRequest.getAccount());
} }
@Override
public LoginUser createNewLoginInfo(String token, String account) {
// 获取用户的信息
UserLoginInfoDTO userLoginInfo = userServiceApi.getUserLoginInfo(account);
// 创建用户会话信息
sessionManagerApi.updateSession(token, userLoginInfo.getLoginUser());
return userLoginInfo.getLoginUser();
}
/** /**
* *
* *

View File

@ -26,6 +26,8 @@ package cn.stylefeng.roses.kernel.auth.session;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.convert.Convert; import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.stylefeng.roses.kernel.auth.api.SessionManagerApi; import cn.stylefeng.roses.kernel.auth.api.SessionManagerApi;
import cn.stylefeng.roses.kernel.auth.api.cookie.SessionCookieCreator; import cn.stylefeng.roses.kernel.auth.api.cookie.SessionCookieCreator;
import cn.stylefeng.roses.kernel.auth.api.expander.AuthConfigExpander; import cn.stylefeng.roses.kernel.auth.api.expander.AuthConfigExpander;
@ -109,13 +111,9 @@ public class DefaultSessionManager implements SessionManagerApi {
@Override @Override
public void updateSession(String token, LoginUser loginUser) { public void updateSession(String token, LoginUser loginUser) {
LoginUser session = this.getSession(token); if (StrUtil.isEmpty(token) || ObjectUtil.isEmpty(loginUser)) {
// 该用户session为空不能更新
if (session == null) {
return; return;
} }
loginUserCache.put(token, loginUser, sessionExpiredSeconds); loginUserCache.put(token, loginUser, sessionExpiredSeconds);
} }