feat: There is no way the, tree
This commit is contained in:
+25
-36
@@ -17,10 +17,8 @@ import org.apache.commons.lang3.StringUtils;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Arrays;
|
import java.util.stream.Collectors;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
@@ -184,8 +182,15 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
|
|||||||
tsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
|
tsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
|
||||||
TsResources=dao.selectList(tsResourceQueryWrapper);
|
TsResources=dao.selectList(tsResourceQueryWrapper);
|
||||||
|
|
||||||
for(TsResource TsResource:TsResources){
|
for(TsResource resource:TsResources){
|
||||||
TsResource.setChildren(recursionGetListChildren((tsResource.getSorDivide()),(TsResource),(getMenuIdList)));
|
QueryWrapper<TsResource> TsResourceQueryWrapper=new QueryWrapper<>();
|
||||||
|
TsResourceQueryWrapper.like("PARENT_IDS",resource.getId());
|
||||||
|
if(StringUtils.isNotBlank(tsResource.getSorDivide())){
|
||||||
|
TsResourceQueryWrapper.in("ID",getMenuIdList);
|
||||||
|
}
|
||||||
|
TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
|
||||||
|
List<TsResource> children=dao.selectList(TsResourceQueryWrapper);
|
||||||
|
resource.setChildren(recursionGetListChildrenStand((resource),(children)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -209,8 +214,12 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
|
|||||||
queryWrapper.orderByAsc("DISPLAY_SEQ");
|
queryWrapper.orderByAsc("DISPLAY_SEQ");
|
||||||
TsResources=dao.selectList(queryWrapper);
|
TsResources=dao.selectList(queryWrapper);
|
||||||
|
|
||||||
for(TsResource TsResource:TsResources){
|
for(TsResource resource:TsResources){
|
||||||
TsResource.setChildren(recursionGetListChildrenStand((tsResource.getSorDivide()),(TsResource)));
|
QueryWrapper<TsResource> TsResourceQueryWrapper=new QueryWrapper<>();
|
||||||
|
TsResourceQueryWrapper.like("PARENT_IDS",resource.getId());
|
||||||
|
TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
|
||||||
|
List<TsResource> children=dao.selectList(TsResourceQueryWrapper);
|
||||||
|
resource.setChildren(recursionGetListChildrenStand((resource),(children)));
|
||||||
}
|
}
|
||||||
|
|
||||||
return TsResources;
|
return TsResources;
|
||||||
@@ -311,37 +320,17 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 递归调用获取子节点
|
* 递归调用获取子节点
|
||||||
* @param parent:父节点
|
|
||||||
* @return List<TsResource>
|
* @return List<TsResource>
|
||||||
*/
|
*/
|
||||||
private List<TsResource> recursionGetListChildren(String sorDivide,TsResource parent,List<String> getMenuIdList){
|
private List<TsResource> recursionGetListChildrenStand(TsResource resource,List<TsResource> children){
|
||||||
QueryWrapper<TsResource> TsResourceQueryWrapper=new QueryWrapper<>();
|
List<TsResource> tsResources = children.stream().filter(resource1 -> resource1.getParentId().equals(resource.getId())).collect(Collectors.toList());
|
||||||
TsResourceQueryWrapper.eq("PARENT_ID",parent.getId());
|
if(!tsResources.isEmpty()){
|
||||||
if(StringUtils.isNotBlank(sorDivide)){
|
tsResources = tsResources.stream().sorted(Comparator.comparing(resource1 -> resource1.getDisplaySeq())).collect(Collectors.toList());
|
||||||
TsResourceQueryWrapper.in("ID",getMenuIdList);
|
tsResources.forEach(resource1 -> {
|
||||||
|
resource1.setChildren(recursionGetListChildrenStand((resource1),(children)));
|
||||||
|
});
|
||||||
}
|
}
|
||||||
TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
|
return tsResources;
|
||||||
List<TsResource> children=dao.selectList(TsResourceQueryWrapper);
|
|
||||||
for(TsResource TsResource:children){
|
|
||||||
TsResource.setChildren(recursionGetListChildren((sorDivide),(TsResource),(getMenuIdList)));
|
|
||||||
}
|
|
||||||
return children;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 递归调用获取子节点
|
|
||||||
* @param parent:父节点
|
|
||||||
* @return List<TsResource>
|
|
||||||
*/
|
|
||||||
private List<TsResource> recursionGetListChildrenStand(String sorDivide,TsResource parent){
|
|
||||||
QueryWrapper<TsResource> TsResourceQueryWrapper=new QueryWrapper<>();
|
|
||||||
TsResourceQueryWrapper.eq("PARENT_ID",parent.getId());
|
|
||||||
TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
|
|
||||||
List<TsResource> children=dao.selectList(TsResourceQueryWrapper);
|
|
||||||
for(TsResource TsResource:children){
|
|
||||||
TsResource.setChildren(recursionGetListChildrenStand((sorDivide),(TsResource)));
|
|
||||||
}
|
|
||||||
return children;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user