update 调整用户登录 将日志调整到最后 防止获取不到用户警告
parent
21d72c4360
commit
e560ebaeae
|
|
@ -6,7 +6,6 @@ import com.ruoyi.auth.form.LoginBody;
|
||||||
import com.ruoyi.auth.form.RegisterBody;
|
import com.ruoyi.auth.form.RegisterBody;
|
||||||
import com.ruoyi.auth.service.SysLoginService;
|
import com.ruoyi.auth.service.SysLoginService;
|
||||||
import com.ruoyi.common.core.domain.R;
|
import com.ruoyi.common.core.domain.R;
|
||||||
import com.ruoyi.common.core.enums.DeviceType;
|
|
||||||
import com.ruoyi.common.satoken.utils.LoginHelper;
|
import com.ruoyi.common.satoken.utils.LoginHelper;
|
||||||
import com.ruoyi.system.api.model.LoginUser;
|
import com.ruoyi.system.api.model.LoginUser;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
|
|
@ -38,12 +37,11 @@ public class TokenController {
|
||||||
@PostMapping("login")
|
@PostMapping("login")
|
||||||
public R<Map<String, Object>> login(@Validated @RequestBody LoginBody form) {
|
public R<Map<String, Object>> login(@Validated @RequestBody LoginBody form) {
|
||||||
// 用户登录
|
// 用户登录
|
||||||
LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword());
|
String accessToken = sysLoginService.login(form.getUsername(), form.getPassword());
|
||||||
// 获取登录token
|
|
||||||
LoginHelper.loginByDevice(userInfo, DeviceType.PC);
|
|
||||||
// 接口返回信息
|
// 接口返回信息
|
||||||
Map<String, Object> rspMap = new HashMap<String, Object>();
|
Map<String, Object> rspMap = new HashMap<String, Object>();
|
||||||
rspMap.put("access_token", StpUtil.getTokenValue());
|
rspMap.put("access_token", accessToken);
|
||||||
return R.ok(rspMap);
|
return R.ok(rspMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,19 @@
|
||||||
package com.ruoyi.auth.service;
|
package com.ruoyi.auth.service;
|
||||||
|
|
||||||
import cn.dev33.satoken.secure.BCrypt;
|
import cn.dev33.satoken.secure.BCrypt;
|
||||||
|
import cn.dev33.satoken.stp.StpUtil;
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import com.ruoyi.auth.form.RegisterBody;
|
import com.ruoyi.auth.form.RegisterBody;
|
||||||
import com.ruoyi.common.core.constant.CacheConstants;
|
import com.ruoyi.common.core.constant.CacheConstants;
|
||||||
import com.ruoyi.common.core.constant.Constants;
|
import com.ruoyi.common.core.constant.Constants;
|
||||||
|
import com.ruoyi.common.core.enums.DeviceType;
|
||||||
import com.ruoyi.common.core.enums.UserType;
|
import com.ruoyi.common.core.enums.UserType;
|
||||||
import com.ruoyi.common.core.exception.user.UserException;
|
import com.ruoyi.common.core.exception.user.UserException;
|
||||||
import com.ruoyi.common.core.utils.MessageUtils;
|
import com.ruoyi.common.core.utils.MessageUtils;
|
||||||
import com.ruoyi.common.core.utils.ServletUtils;
|
import com.ruoyi.common.core.utils.ServletUtils;
|
||||||
import com.ruoyi.common.core.utils.StringUtils;
|
import com.ruoyi.common.core.utils.StringUtils;
|
||||||
import com.ruoyi.common.redis.utils.RedisUtils;
|
import com.ruoyi.common.redis.utils.RedisUtils;
|
||||||
|
import com.ruoyi.common.satoken.utils.LoginHelper;
|
||||||
import com.ruoyi.system.api.RemoteLogService;
|
import com.ruoyi.system.api.RemoteLogService;
|
||||||
import com.ruoyi.system.api.RemoteUserService;
|
import com.ruoyi.system.api.RemoteUserService;
|
||||||
import com.ruoyi.system.api.domain.SysLogininfor;
|
import com.ruoyi.system.api.domain.SysLogininfor;
|
||||||
|
|
@ -37,7 +40,7 @@ public class SysLoginService {
|
||||||
/**
|
/**
|
||||||
* 登录
|
* 登录
|
||||||
*/
|
*/
|
||||||
public LoginUser login(String username, String password) {
|
public String login(String username, String password) {
|
||||||
LoginUser userInfo = remoteUserService.getUserInfo(username);
|
LoginUser userInfo = remoteUserService.getUserInfo(username);
|
||||||
|
|
||||||
// 获取用户登录错误次数(可自定义限制策略 例如: key + username + ip)
|
// 获取用户登录错误次数(可自定义限制策略 例如: key + username + ip)
|
||||||
|
|
@ -65,8 +68,11 @@ public class SysLoginService {
|
||||||
}
|
}
|
||||||
// 登录成功 清空错误次数
|
// 登录成功 清空错误次数
|
||||||
RedisUtils.deleteObject(CacheConstants.LOGIN_ERROR + username);
|
RedisUtils.deleteObject(CacheConstants.LOGIN_ERROR + username);
|
||||||
|
// 获取登录token
|
||||||
|
LoginHelper.loginByDevice(userInfo, DeviceType.PC);
|
||||||
|
|
||||||
recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"));
|
recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"));
|
||||||
return userInfo;
|
return StpUtil.getTokenValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void logout(String loginName) {
|
public void logout(String loginName) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue