diff --git a/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java b/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java index 96c1649a..eed71c06 100644 --- a/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java +++ b/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java @@ -6,7 +6,6 @@ import com.ruoyi.auth.form.LoginBody; import com.ruoyi.auth.form.RegisterBody; import com.ruoyi.auth.service.SysLoginService; import com.ruoyi.common.core.domain.R; -import com.ruoyi.common.core.enums.DeviceType; import com.ruoyi.common.satoken.utils.LoginHelper; import com.ruoyi.system.api.model.LoginUser; import io.swagger.annotations.Api; @@ -38,12 +37,11 @@ public class TokenController { @PostMapping("login") public R> login(@Validated @RequestBody LoginBody form) { // 用户登录 - LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword()); - // 获取登录token - LoginHelper.loginByDevice(userInfo, DeviceType.PC); + String accessToken = sysLoginService.login(form.getUsername(), form.getPassword()); + // 接口返回信息 Map rspMap = new HashMap(); - rspMap.put("access_token", StpUtil.getTokenValue()); + rspMap.put("access_token", accessToken); return R.ok(rspMap); } diff --git a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java index c1b904d1..29fa13d8 100644 --- a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java +++ b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java @@ -1,16 +1,19 @@ package com.ruoyi.auth.service; import cn.dev33.satoken.secure.BCrypt; +import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.util.ObjectUtil; import com.ruoyi.auth.form.RegisterBody; import com.ruoyi.common.core.constant.CacheConstants; 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.exception.user.UserException; import com.ruoyi.common.core.utils.MessageUtils; import com.ruoyi.common.core.utils.ServletUtils; import com.ruoyi.common.core.utils.StringUtils; 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.RemoteUserService; 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); // 获取用户登录错误次数(可自定义限制策略 例如: key + username + ip) @@ -65,8 +68,11 @@ public class SysLoginService { } // 登录成功 清空错误次数 RedisUtils.deleteObject(CacheConstants.LOGIN_ERROR + username); + // 获取登录token + LoginHelper.loginByDevice(userInfo, DeviceType.PC); + recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success")); - return userInfo; + return StpUtil.getTokenValue(); } public void logout(String loginName) {