|
@@ -171,14 +171,18 @@ public class SharePathServiceImpl implements SharePathService {
|
|
|
List<TreeNode> deep = sharePathDO2TreeNode(sharePathDOS);
|
|
|
if (maxDepth > 1) {
|
|
|
List<Long> descs = sharePathDOS.stream().filter(k -> k.getDepth() > 1).map(SharePathDO::getDescendant).collect(Collectors.toList());
|
|
|
- // 获取大于1层级的数据
|
|
|
- List<SharePathDO> descList = sharePathMapper.selectList(new LambdaQueryWrapperX<SharePathDO>()
|
|
|
- .inIfPresent(SharePathDO::getDescendant, descs)
|
|
|
- .ne(SharePathDO::getAncestor, 1)
|
|
|
- );
|
|
|
- List<TreeNode> treeNodes1 = sharePathDO2TreeNode(descList);
|
|
|
- deep = deep.stream().filter(k -> k.getDeep() == 1).collect(Collectors.toList());
|
|
|
- deep.addAll(treeNodes1);
|
|
|
+
|
|
|
+ if (!descs.isEmpty()) {
|
|
|
+ // 获取大于1层级的数据
|
|
|
+ List<SharePathDO> descList = sharePathMapper.selectList(new LambdaQueryWrapperX<SharePathDO>()
|
|
|
+ .in(SharePathDO::getDescendant, descs)
|
|
|
+ .ne(SharePathDO::getAncestor, 1)
|
|
|
+ );
|
|
|
+ List<TreeNode> treeNodes1 = sharePathDO2TreeNode(descList);
|
|
|
+ deep = deep.stream().filter(k -> k.getDeep() == 1).collect(Collectors.toList());
|
|
|
+ deep.addAll(treeNodes1);
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
// 整合结构
|
|
|
List<TreeNode> treeNodes = listWithTree(deep, userId);
|
|
@@ -355,14 +359,6 @@ public class SharePathServiceImpl implements SharePathService {
|
|
|
|
|
|
@Override
|
|
|
public PageResult<SharePathRespVO> getDescendants(SharePathPageReqVO pageReqVO) {
|
|
|
- LambdaQueryWrapperX<SharePathDO> wrapper = new LambdaQueryWrapperX<SharePathDO>()
|
|
|
- .eq(SharePathDO::getAncestor, pageReqVO.getAncestor());
|
|
|
- if (pageReqVO.getDepth() != null) {
|
|
|
- wrapper.eq(SharePathDO::getDepth, 1);
|
|
|
- } else {
|
|
|
- wrapper.ne(SharePathDO::getDepth, 1);
|
|
|
- }
|
|
|
-
|
|
|
PageResult<SharePathDO> sharePathDOPageResult = sharePathMapper.selectDescendantsPage(pageReqVO);
|
|
|
PageResult<SharePathRespVO> result = BeanUtils.toBean(sharePathDOPageResult, SharePathRespVO.class);
|
|
|
List<SharePathRespVO> list = result.getList();
|