From 62313202f79e1e924c2253f4489a62fb14a34616 Mon Sep 17 00:00:00 2001 From: lilong Date: Mon, 4 Nov 2024 20:16:31 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20(feature/REQ-2595)=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=9D=83=E9=99=90=E6=9F=A5=E8=AF=A2=E6=94=AF=E6=8C=81tags?= =?UTF-8?q?=E8=BF=87=E6=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../server/service/impl/PermissionQueryServiceImpl.java | 8 +++++--- .../tyr/server/service/impl/TyrSaasAuthServiceImpl.java | 6 ------ 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/PermissionQueryServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/PermissionQueryServiceImpl.java index 08bba6c7..5d8c9c44 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/PermissionQueryServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/PermissionQueryServiceImpl.java @@ -772,7 +772,7 @@ public class PermissionQueryServiceImpl implements PermissionQueryService { assembleTag(treePermissionReq); - List saasRoleUsers = listUserPermission(treePermissionReq); + List saasRoleUsers = listUserRole(treePermissionReq); if (CollectionUtils.isEmpty(saasRoleUsers)) { return Collections.emptySet(); } @@ -818,7 +818,7 @@ public class PermissionQueryServiceImpl implements PermissionQueryService { return workspaceProductService.listWorkspaceProductFeatureResourceCached(listWorkspaceProductFeatureSourceCacheParam); } - private List listUserPermission(TreePermissionReq treePermissionReq) { + private List listUserRole(TreePermissionReq treePermissionReq) { List workspaceOuPairs = treePermissionReq.getWorkspaceOUPairs().stream() .map(e -> ListRoleUserRelationParam.WorkspaceOuPair.builder() .workspaceId(e.getWorkspaceId()) @@ -906,7 +906,9 @@ public class PermissionQueryServiceImpl implements PermissionQueryService { return true; } - if (Sets.intersection(workspaceOUPair.getTags(), e.getTags()).isEmpty()) { + Set rolePermissionTags = Optional.ofNullable(e.getTags()) + .orElseGet(() -> Sets.newHashSet(RolePermissionTagEnum.JOINED)); + if (Sets.intersection(workspaceOUPair.getTags(), rolePermissionTags).isEmpty()) { return false; } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/TyrSaasAuthServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/TyrSaasAuthServiceImpl.java index 0e1fe78f..aaa71310 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/TyrSaasAuthServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/TyrSaasAuthServiceImpl.java @@ -555,12 +555,6 @@ public class TyrSaasAuthServiceImpl implements TyrSaasAuthService { return Collections.emptySet(); } - RolePermissionCacheService.ListRolePermissionParam listRolePermissionParam = RolePermissionCacheService.ListRolePermissionParam.builder() - .roleIds(adminRoles.stream().map(SaasRoleRes::getId).collect(Collectors.toSet())) - .featureCodes(productPermissions.stream() - .map(ProductPermissionCacheService.PermissionDTO::getFeatureCode) - .collect(Collectors.toSet())) - .build(); Map> adminRolePermissionMap = adminRoles.stream() .filter(e -> allRolePermissionMap.containsKey(e.getId())) .collect(Collectors.toMap(SaasRoleRes::getId, e -> allRolePermissionMap.get(e.getId())));