提交 4a43031d 编写于 作者: shihao.bao's avatar shihao.bao

8/16 平台优化/切换登录 修改token传入方式

上级 46e74536
流水线 #37200 已失败 于阶段
...@@ -436,14 +436,8 @@ public class LoginController extends AccountBaseController { ...@@ -436,14 +436,8 @@ public class LoginController extends AccountBaseController {
@ApiOperation(value = "切换登录") @ApiOperation(value = "切换登录")
@PostMapping("/login/switch") @PostMapping("/login/switch")
@EnabledLoginValidate @EnabledLoginValidate
public PicaResponse<String> loginSwitch() { public PicaResponse<String> loginSwitch(@RequestBody Map<String, String> req) {
OneClickLoginReq req = new OneClickLoginReq(); loginService.loginSwitch(super.getAccountUser(), super.getRedisClient().getToken(req.get("token"), AccountUser.class));
req.setProductType(super.getProductType());
req.setSourceType(super.getSourceType());
req.setLoginIp(super.getIpAddr());
req.setUserTokenTourist(super.getUserTokenTourist());
req.setToken(super.getToken());
loginService.loginSwitch(req, super.getAccountUser());
return PicaResponse.toResponse(); return PicaResponse.toResponse();
} }
......
...@@ -103,6 +103,6 @@ public interface LoginService { ...@@ -103,6 +103,6 @@ public interface LoginService {
LoginResult loginQRCode(BaseRequest request); LoginResult loginQRCode(BaseRequest request);
void loginSwitch(OneClickLoginReq req, AccountUser accountUser); void loginSwitch(AccountUser oldUser, AccountUser loginUser);
} }
...@@ -12,6 +12,7 @@ import com.pica.cloud.account.account.server.entity.*; ...@@ -12,6 +12,7 @@ import com.pica.cloud.account.account.server.entity.*;
import com.pica.cloud.account.account.server.enums.AccountExceptionEnum; import com.pica.cloud.account.account.server.enums.AccountExceptionEnum;
import com.pica.cloud.account.account.server.enums.AccountTypeEnum; import com.pica.cloud.account.account.server.enums.AccountTypeEnum;
import com.pica.cloud.account.account.server.enums.SourceTypeEnum; import com.pica.cloud.account.account.server.enums.SourceTypeEnum;
import com.pica.cloud.account.account.server.exception.AccountException;
import com.pica.cloud.account.account.server.log.AccountLogEntityUtils; import com.pica.cloud.account.account.server.log.AccountLogEntityUtils;
import com.pica.cloud.account.account.server.log.AccountLogUtils; import com.pica.cloud.account.account.server.log.AccountLogUtils;
import com.pica.cloud.account.account.server.mapper.*; import com.pica.cloud.account.account.server.mapper.*;
...@@ -48,6 +49,7 @@ import java.security.PublicKey; ...@@ -48,6 +49,7 @@ import java.security.PublicKey;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import java.util.Objects;
@Service @Service
public class LoginServiceImpl implements LoginService { public class LoginServiceImpl implements LoginService {
...@@ -1086,19 +1088,21 @@ public class LoginServiceImpl implements LoginService { ...@@ -1086,19 +1088,21 @@ public class LoginServiceImpl implements LoginService {
/** /**
*切换登录 *切换登录
* @param req
*/ */
@Override @Override
public void loginSwitch(OneClickLoginReq req, AccountUser accountUser) { public void loginSwitch(AccountUser oldUser, AccountUser loginUser) {
tokenUtils.tokenContinueTime(req.getToken(), req.getSourceType(), 0); if (Objects.isNull(loginUser)) {
throw new AccountException(AccountExceptionEnum.PICA_LOGIN_AGAIN);
}
tokenUtils.tokenContinueTime(loginUser.getToken(), oldUser.getLoginFrom(), 0);
//记录登录日志 //记录登录日志
LogLoginEntity entity = AccountLogEntityUtils.getLogLoginEntity( LogLoginEntity entity = AccountLogEntityUtils.getLogLoginEntity(
Integer.valueOf(String.valueOf(accountUser.getAcctId())), Integer.valueOf(String.valueOf(loginUser.getAcctId())),
req.getProductType(), req.getSourceType(), oldUser.getLoginPlatform(), oldUser.getLoginFrom(),
AccountTypeEnum.LOGIN_WE_CHAT.getCode(), AccountTypeEnum.LOGIN_WE_CHAT.getCode(),
req.getLoginIp(), oldUser.getLoginIp(),
AccountTypeEnum.LOGIN_STATUS_SUCCESS.getCode(), AccountTypeEnum.LOGIN_STATUS_SUCCESS.getCode(),
AccountTypeEnum.LOG_TYPE_LOGIN.getCode(), req.getToken(), 1, req.getUserTokenTourist()); AccountTypeEnum.LOG_TYPE_LOGIN.getCode(), loginUser.getToken(), 1, oldUser.getUserTokenTourist());
picaLogUtils.info(entity); picaLogUtils.info(entity);
} }
} }
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册