feat: There is no way the, tree

This commit is contained in:
super_liu
2021-11-03 17:35:14 +08:00
parent 51ca9f08fe
commit 13c66d6b5b
2 changed files with 14 additions and 4 deletions
@@ -2,6 +2,7 @@ package com.adc.da.slrs.sarResource.dao;
import com.adc.da.slrs.sarResource.entity.TsResource; import com.adc.da.slrs.sarResource.entity.TsResource;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
@@ -14,6 +15,7 @@ import java.util.List;
* @author zyl * @author zyl
* @since 2021-06-30 * @since 2021-06-30
*/ */
@Repository
public interface TsResourceDao extends BaseMapper<TsResource> { public interface TsResourceDao extends BaseMapper<TsResource> {
List<TsResource> queryMenuByDis(TsResource sarMenuEO); List<TsResource> queryMenuByDis(TsResource sarMenuEO);
@@ -151,6 +151,10 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
tsResourceQueryWrapper.eq("sor_divide",tsResource.getSorDivide()); tsResourceQueryWrapper.eq("sor_divide",tsResource.getSorDivide());
} }
tsResourceQueryWrapper.isNull("PARENT_ID"); tsResourceQueryWrapper.isNull("PARENT_ID");
List<String> list = new ArrayList<>();
list.add("INLAND_STAND");
list.add("FOREIGN_STAND");
tsResourceQueryWrapper.notIn("SOR_DIVIDE",list);
tsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ"); tsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
List<TsResource> TsResources=dao.selectList(tsResourceQueryWrapper); List<TsResource> TsResources=dao.selectList(tsResourceQueryWrapper);
for(TsResource TsResource:TsResources){ for(TsResource TsResource:TsResources){
@@ -181,7 +185,7 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
TsResources=dao.selectList(tsResourceQueryWrapper); TsResources=dao.selectList(tsResourceQueryWrapper);
for(TsResource TsResource:TsResources){ for(TsResource TsResource:TsResources){
TsResource.setChildren(recursionGetListChildren((TsResource),(getMenuIdList))); TsResource.setChildren(recursionGetListChildren((tsResource.getSorDivide()),(TsResource),(getMenuIdList)));
} }
} }
} }
@@ -287,14 +291,18 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
* @param parent:父节点 * @param parent:父节点
* @return List<TsResource> * @return List<TsResource>
*/ */
private List<TsResource> recursionGetListChildren(TsResource parent,List<String> getMenuIdList){ private List<TsResource> recursionGetListChildren(String sorDivide,TsResource parent,List<String> getMenuIdList){
QueryWrapper<TsResource> TsResourceQueryWrapper=new QueryWrapper<>(); QueryWrapper<TsResource> TsResourceQueryWrapper=new QueryWrapper<>();
TsResourceQueryWrapper.eq("PARENT_ID",parent.getId()); TsResourceQueryWrapper.eq("PARENT_ID",parent.getId());
TsResourceQueryWrapper.in("ID",getMenuIdList); if(StringUtils.isNotBlank(sorDivide)){
if(!sorDivide.equals("INLAND_STAND") && !sorDivide.equals("FOREIGN_STAND")){
TsResourceQueryWrapper.in("ID",getMenuIdList);
}
}
TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ"); TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
List<TsResource> children=dao.selectList(TsResourceQueryWrapper); List<TsResource> children=dao.selectList(TsResourceQueryWrapper);
for(TsResource TsResource:children){ for(TsResource TsResource:children){
TsResource.setChildren(recursionGetListChildren((TsResource),(getMenuIdList))); TsResource.setChildren(recursionGetListChildren((sorDivide),(TsResource),(getMenuIdList)));
} }
return children; return children;
} }