Commit d5ac6e7a199e3e36b46d89445fe1f8fe3a16130a
1 parent
eca27cd1
完善登出功能,记录日志
Showing
1 changed file
with
17 additions
and
1 deletions
src/main/java/cn/iocoder/dashboard/modules/system/service/auth/impl/SysAuthServiceImpl.java
| ... | ... | @@ -160,7 +160,23 @@ public class SysAuthServiceImpl implements SysAuthService { |
| 160 | 160 | |
| 161 | 161 | @Override |
| 162 | 162 | public void logout(String token) { |
| 163 | -// AsyncManager.me().execute(AsyncFactory.recordLogininfor(userName, Constants.LOGOUT, "退出成功")); TODO 需要搞一搞 | |
| 163 | + // 查询用户信息 | |
| 164 | + LoginUser loginUser = userSessionService.getLoginUser(token); | |
| 165 | + if(loginUser == null) return; | |
| 166 | + // 删除session | |
| 167 | + userSessionService.deleteUserSession(token); | |
| 168 | + this.createLogoutLog(loginUser.getUsername(), SysLoginResultEnum.SUCCESS); | |
| 169 | + } | |
| 170 | + | |
| 171 | + private void createLogoutLog(String username, SysLoginResultEnum loginResult) { | |
| 172 | + SysLoginLogCreateReqVO reqVO = new SysLoginLogCreateReqVO(); | |
| 173 | + reqVO.setLogType(SysLoginLogTypeEnum.LOGOUT_SELF.getType()); | |
| 174 | + reqVO.setTraceId(TracerUtils.getTraceId()); | |
| 175 | + reqVO.setUsername(username); | |
| 176 | + reqVO.setUserAgent(ServletUtils.getUserAgent()); | |
| 177 | + reqVO.setUserIp(ServletUtils.getClientIP()); | |
| 178 | + reqVO.setResult(loginResult.getResult()); | |
| 179 | + loginLogService.createLoginLog(reqVO); | |
| 164 | 180 | } |
| 165 | 181 | |
| 166 | 182 | @Override | ... | ... |