ruoyi-common/ruoyi-common-satoken/src/main/java/org/ruoyi/common/satoken/utils/LoginHelper.java
@@ -2,6 +2,7 @@ import cn.dev33.satoken.context.SaHolder; import cn.dev33.satoken.context.model.SaStorage; import cn.dev33.satoken.session.SaSession; import cn.dev33.satoken.stp.SaLoginModel; import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.convert.Convert; @@ -73,8 +74,11 @@ if (loginUser != null) { return loginUser; } loginUser = (LoginUser) StpUtil.getTokenSession().get(LOGIN_USER_KEY); SaHolder.getStorage().set(LOGIN_USER_KEY, loginUser); SaSession tokenSession = StpUtil.getTokenSession(); if (tokenSession != null) { loginUser = (LoginUser) tokenSession.get(LOGIN_USER_KEY); SaHolder.getStorage().set(LOGIN_USER_KEY, loginUser); }; return loginUser; } ruoyi-modules/ruoyi-system/src/main/java/org/ruoyi/system/service/SysLoginService.java
@@ -228,7 +228,9 @@ TenantHelper.clearDynamic(); } StpUtil.logout(); recordLogininfor(loginUser.getTenantId(), loginUser.getUsername(), Constants.LOGOUT, MessageUtils.message("user.logout.success")); if (loginUser !=null) { recordLogininfor(loginUser.getTenantId(), loginUser.getUsername(), Constants.LOGOUT, MessageUtils.message("user.logout.success")); } } catch (NotLoginException ignored) { } }