From dd651f5f04100100fecb55baf2d388efc4902edf Mon Sep 17 00:00:00 2001 From: zhibing.pu <393733352@qq.com> Date: 星期五, 06 九月 2024 10:22:24 +0800 Subject: [PATCH] 完善功能 --- ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java | 9 +++++---- ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java | 12 ++++++++---- 2 files changed, 13 insertions(+), 8 deletions(-) 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 77abd3e..1cc1d79 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 @@ -9,6 +9,7 @@ import io.seata.spring.annotation.GlobalTransactional; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import com.ruoyi.auth.form.LoginBody; import com.ruoyi.auth.form.RegisterBody; @@ -48,11 +49,11 @@ HashMap<String, Object> map = new HashMap<>(); map.put("token", tokenService.createToken(userInfo)); List<SysRole> roles = userInfo.getSysUser().getRoles(); -// if(CollectionUtils.isEmpty(roles)){ -// return R.fail("请关联角色!"); -// } + if(CollectionUtils.isEmpty(roles)){ + return R.fail("请关联角色!"); + } -// map.put("roleName",roles.get(0).getRoleName()); + map.put("roleName",roles.get(0).getRoleName()); map.put("info", userInfo); // 修改用户最后登录时间 SysUser sysUser = new SysUser(); diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java index 4cce577..d748b39 100644 --- a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java +++ b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java @@ -94,7 +94,7 @@ public LoginUserApplet getLoginUserApplet() { LoginUserApplet loginUserAppletToken = getLoginUserAppletToken(ServletUtils.getRequest()); if (loginUserAppletToken == null) { - throw new UserAppletException("登录失效,请重新登录!", 401); + throw new RuntimeException("令牌已过期,请重新登录!"); } return loginUserAppletToken; } @@ -130,7 +130,11 @@ * @return 用户信息 */ public LoginUser getLoginUser() { - return getLoginUser(ServletUtils.getRequest()); + LoginUser loginUser = getLoginUser(ServletUtils.getRequest()); + if (loginUser == null) { + throw new RuntimeException("令牌已过期,请重新登录!"); + } + return loginUser; } /** @@ -209,10 +213,10 @@ public void refreshToken1(LoginUserApplet dto) { dto.setLoginTime(System.currentTimeMillis()); - dto.setExpireTime(dto.getLoginTime() + expireTime * MILLIS_MINUTE); + dto.setExpireTime(dto.getLoginTime() + expireAppletTime * MILLIS_MINUTE); // 根据uuid将loginUser缓存 String userKey = getTokenKey(dto.getToken()); - redisService.setCacheObject(userKey, dto, expireTime, TimeUnit.MINUTES); + redisService.setCacheObject(userKey, dto, expireAppletTime, TimeUnit.MINUTES); } private String getTokenKey(String token) { -- Gitblit v1.7.1