From cf578f4ee34c0a951cc323ac16f0a12bbf117dc7 Mon Sep 17 00:00:00 2001 From: xuyuxiang Date: Tue, 15 Nov 2022 15:52:57 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E6=9B=B4=E6=96=B0=E3=80=91=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E4=B8=9A=E5=8A=A1=E6=A8=A1=E5=9D=97=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=9C=BA=E6=9E=84=E6=A0=91=E6=9E=84=E9=80=A0=E7=BB=93=E6=9E=9C?= =?UTF-8?q?=E4=B8=BA=E7=A9=BA=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modular/org/service/impl/BizOrgServiceImpl.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/org/service/impl/BizOrgServiceImpl.java b/snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/org/service/impl/BizOrgServiceImpl.java index 48136779..6193fe98 100644 --- a/snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/org/service/impl/BizOrgServiceImpl.java +++ b/snowy-plugin/snowy-plugin-biz/src/main/java/vip/xiaonuo/biz/modular/org/service/impl/BizOrgServiceImpl.java @@ -46,6 +46,7 @@ import vip.xiaonuo.sys.api.SysRoleApi; import javax.annotation.Resource; import java.util.List; +import java.util.Set; import java.util.stream.Collectors; /** @@ -97,17 +98,18 @@ public class BizOrgServiceImpl extends ServiceImpl impleme @Override public List> tree() { - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + // 获取所有机构 + List allOrgList = this.list(); + // 定义机构集合 + Set bizOrgSet = CollectionUtil.newHashSet(); // 校验数据范围 List loginUserDataScope = StpLoginUserUtil.getLoginUserDataScope(); if(ObjectUtil.isNotEmpty(loginUserDataScope)) { - lambdaQueryWrapper.in(BizOrg::getId, loginUserDataScope); + loginUserDataScope.forEach(orgId -> bizOrgSet.addAll(this.getParentListById(allOrgList, orgId, true))); } else { return CollectionUtil.newArrayList(); } - lambdaQueryWrapper.orderByAsc(BizOrg::getSortCode); - List bizOrgList = this.list(lambdaQueryWrapper); - List> treeNodeList = bizOrgList.stream().map(bizOrg -> + List> treeNodeList = bizOrgSet.stream().map(bizOrg -> new TreeNode<>(bizOrg.getId(), bizOrg.getParentId(), bizOrg.getName(), bizOrg.getSortCode()).setExtra(JSONUtil.parseObj(bizOrg))) .collect(Collectors.toList());