wangliang 4 年之前
父節點
當前提交
45c883661c
共有 1 個文件被更改,包括 12 次插入0 次删除
  1. 12 0
      themis-backend/src/main/java/com/qmth/themis/backend/api/TBUserController.java

+ 12 - 0
themis-backend/src/main/java/com/qmth/themis/backend/api/TBUserController.java

@@ -614,6 +614,18 @@ public class TBUserController {
                 tbUser.setUpdateId(loginUser.getId());
             }
             tbUserService.saveOrUpdate(tbUser);
+            //清除用户缓存
+            if (Objects.nonNull(roleSet) && roleSet.size() > 0) {
+                AuthDto authDto = (AuthDto) redisUtil.get(SystemConstant.userOauth + "::" + tbUser.getId());
+                if (Objects.nonNull(authDto)) {
+                    for (Source s : Source.values()) {
+                        String sessionId = SessionUtil.digest(tbUser.getId(), Math.abs(authDto.getRoleCodes().toString().hashCode()), s.name());
+                        redisUtil.deleteUserSession(sessionId);
+                    }
+                }
+                redisUtil.deleteUser(tbUser.getId());
+                cacheService.removeAccountCache(tbUser.getId());
+            }
         } catch (Exception e) {
             e.printStackTrace();
             if (e instanceof DuplicateKeyException) {