diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/nodeuser/service/impl/NodeUserCheckServiceImpl.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/nodeuser/service/impl/NodeUserCheckServiceImpl.java index d511b84..deba245 100644 --- a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/nodeuser/service/impl/NodeUserCheckServiceImpl.java +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/nodeuser/service/impl/NodeUserCheckServiceImpl.java @@ -261,8 +261,11 @@ public class NodeUserCheckServiceImpl implements NodeUserCheckService { roleUserParam.setNeedRole(true); roleUserParam.setPageSize(1000); + Set identityIds = nodeUsers.stream().map(NodeUserDTO::getIdentityId).collect(Collectors.toSet()); + List saasRoleUserInfo = roleUserGateway.pageAll(roleUserParam); - saasRoleUserInfo = saasRoleUserInfo.stream().filter(e -> Objects.nonNull(e.getRole())).collect(Collectors.toList()); + saasRoleUserInfo = saasRoleUserInfo.stream().filter(e -> Objects.nonNull(e.getRole())) + .filter(e -> identityIds.contains(e.getIdentityId())).collect(Collectors.toList()); saasRoleUserInfo.forEach(e -> { // 班组长不用校验,因为班组长也会有管理员角色 if (teamLeadPersonSet.contains(e.getPersonId())) {