fix 修复错误的远程调用导致登录异常 ;

This commit is contained in:
Michelle.Chung
2023-07-25 10:11:04 +08:00
parent 52955e5290
commit 054ded428f
8 changed files with 34 additions and 17 deletions

View File

@@ -136,6 +136,20 @@ public class SysLoginService {
SpringUtils.context().publishEvent(logininforEvent);
}
/**
* 记录登录信息
*
* @param loginUser 用户信息
*/
public void recordLoginInfo(LoginUser loginUser) {
RemoteUserBo bo = new RemoteUserBo();
bo.setUserId(loginUser.getUserId());
bo.setUserName(loginUser.getUsername());
bo.setLoginIp(ServletUtils.getClientIP());
bo.setLoginDate(DateUtils.getNowDate());
remoteUserService.updateUser(bo);
}
/**
* 登录校验
*/

View File

@@ -64,7 +64,7 @@ public class EmailAuthStrategy implements IAuthStrategy {
LoginHelper.login(loginUser, model);
loginService.recordLogininfor(loginUser.getTenantId(), loginUser.getUsername(), Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"));
remoteUserService.recordLoginInfo(loginUser.getUserId());
loginService.recordLoginInfo(loginUser);
LoginVo loginVo = new LoginVo();
loginVo.setAccessToken(StpUtil.getTokenValue());

View File

@@ -6,6 +6,7 @@ import cn.dev33.satoken.stp.StpUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference;
import org.apache.dubbo.rpc.RpcContext;
import org.dromara.auth.domain.vo.LoginVo;
import org.dromara.common.core.exception.CaptchaException;
import org.dromara.common.core.domain.model.LoginBody;
@@ -17,6 +18,7 @@ import org.dromara.common.core.constant.GlobalConstants;
import org.dromara.common.core.enums.LoginType;
import org.dromara.common.core.exception.user.CaptchaExpireException;
import org.dromara.common.core.utils.MessageUtils;
import org.dromara.common.core.utils.ServletUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.core.utils.ValidatorUtils;
import org.dromara.common.core.validate.auth.PasswordGroup;
@@ -77,7 +79,7 @@ public class PasswordAuthStrategy implements IAuthStrategy {
LoginHelper.login(loginUser, model);
loginService.recordLogininfor(loginUser.getTenantId(), username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"));
remoteUserService.recordLoginInfo(loginUser.getUserId());
loginService.recordLoginInfo(loginUser);
LoginVo loginVo = new LoginVo();
loginVo.setAccessToken(StpUtil.getTokenValue());

View File

@@ -64,7 +64,7 @@ public class SmsAuthStrategy implements IAuthStrategy {
LoginHelper.login(loginUser, model);
loginService.recordLogininfor(loginUser.getTenantId(), loginUser.getUsername(), Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"));
remoteUserService.recordLoginInfo(loginUser.getUserId());
loginService.recordLoginInfo(loginUser);
LoginVo loginVo = new LoginVo();
loginVo.setAccessToken(StpUtil.getTokenValue());

View File

@@ -101,7 +101,7 @@ public class SocialAuthStrategy implements IAuthStrategy {
LoginHelper.login(loginUser, model);
loginService.recordLogininfor(loginUser.getTenantId(), socialVo.getUserName(), Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"));
remoteUserService.recordLoginInfo(socialVo.getUserId());
loginService.recordLoginInfo(loginUser);
LoginVo loginVo = new LoginVo();
loginVo.setAccessToken(StpUtil.getTokenValue());

View File

@@ -59,7 +59,7 @@ public class XcxAuthStrategy implements IAuthStrategy {
LoginHelper.login(loginUser, model);
loginService.recordLogininfor(loginUser.getTenantId(), loginUser.getUsername(), Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"));
remoteUserService.recordLoginInfo(loginUser.getUserId());
loginService.recordLoginInfo(loginUser);
LoginVo loginVo = new LoginVo();
loginVo.setAccessToken(StpUtil.getTokenValue());