文档拆分-删除目录:查询子节点bug修改
This commit is contained in:
+7
@@ -22,6 +22,13 @@ public interface ISarFileSplitMenuEOService extends IService<SarFileSplitMenuEO>
|
|||||||
|
|
||||||
int addMenu(SarFileSplitMenuEO sarFileSplitMenuEO);
|
int addMenu(SarFileSplitMenuEO sarFileSplitMenuEO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据ID查询所有的子节点包括父节点
|
||||||
|
* @param sarFileSplitMenuEO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<SarFileSplitMenuEO> queryAllChildrenById(SarFileSplitMenuEO sarFileSplitMenuEO);
|
||||||
|
|
||||||
void deleteMenu(String id);
|
void deleteMenu(String id);
|
||||||
|
|
||||||
int insert(SarFileSplitMenuEO sarFileSplitMenuEO);
|
int insert(SarFileSplitMenuEO sarFileSplitMenuEO);
|
||||||
|
|||||||
+7
-1
@@ -45,6 +45,7 @@ import com.jero.modules.split.page.SarFileSplitMenuEOPage;
|
|||||||
import com.jero.modules.split.service.IFileSplitItemsEOService;
|
import com.jero.modules.split.service.IFileSplitItemsEOService;
|
||||||
import com.jero.modules.split.service.ISarFileSplitInfoService;
|
import com.jero.modules.split.service.ISarFileSplitInfoService;
|
||||||
import com.jero.modules.split.service.ISarFileSplitItemsValEOService;
|
import com.jero.modules.split.service.ISarFileSplitItemsValEOService;
|
||||||
|
import com.jero.modules.split.service.ISarFileSplitMenuEOService;
|
||||||
import com.jero.modules.split.util.POIReadExcelToHtml;
|
import com.jero.modules.split.util.POIReadExcelToHtml;
|
||||||
import com.jero.modules.system.entity.SysCategory;
|
import com.jero.modules.system.entity.SysCategory;
|
||||||
import com.jero.modules.system.entity.SysCategoryTreeVO;
|
import com.jero.modules.system.entity.SysCategoryTreeVO;
|
||||||
@@ -124,6 +125,8 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
|||||||
private IBussDocumentLibraryEOService documentLibraryEOService;
|
private IBussDocumentLibraryEOService documentLibraryEOService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ISysUserService sysUserService;
|
private ISysUserService sysUserService;
|
||||||
|
@Autowired
|
||||||
|
private ISarFileSplitMenuEOService sarFileSplitMenuEOService;
|
||||||
|
|
||||||
|
|
||||||
@Value(value = "${jero.path.upload}")
|
@Value(value = "${jero.path.upload}")
|
||||||
@@ -682,9 +685,12 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
|||||||
// 查询所有子级id
|
// 查询所有子级id
|
||||||
SarFileSplitMenuEO sarFileSplitMenuEO = new SarFileSplitMenuEO();
|
SarFileSplitMenuEO sarFileSplitMenuEO = new SarFileSplitMenuEO();
|
||||||
sarFileSplitMenuEO.setId(value);
|
sarFileSplitMenuEO.setId(value);
|
||||||
List<String> menuIdList = sarFileSplitMenuEOMapper.queryAllChildrenByid(sarFileSplitMenuEO).stream()
|
List<String> menuIdList = sarFileSplitMenuEOService.queryAllChildrenById(sarFileSplitMenuEO).stream()
|
||||||
.map(SarFileSplitMenuEO::getId)
|
.map(SarFileSplitMenuEO::getId)
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
|
// List<String> menuIdList = sarFileSplitMenuEOMapper.queryAllChildrenByid(sarFileSplitMenuEO).stream()
|
||||||
|
// .map(SarFileSplitMenuEO::getId)
|
||||||
|
// .collect(Collectors.toList());
|
||||||
String menuIds = StringUtils.join(menuIdList,"','");
|
String menuIds = StringUtils.join(menuIdList,"','");
|
||||||
conditionSb.append(" and sar_file_split_items." + key + " in('" + menuIds + "')");
|
conditionSb.append(" and sar_file_split_items." + key + " in('" + menuIds + "')");
|
||||||
}
|
}
|
||||||
|
|||||||
+32
-2
@@ -1,6 +1,6 @@
|
|||||||
package com.jero.modules.split.service.impl;
|
package com.jero.modules.split.service.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import cn.hutool.core.collection.CollectionUtil;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.jero.modules.split.entity.SarFileSplitMenuEO;
|
import com.jero.modules.split.entity.SarFileSplitMenuEO;
|
||||||
import com.jero.modules.split.mapper.SarFileSplitItemsValEOMapper;
|
import com.jero.modules.split.mapper.SarFileSplitItemsValEOMapper;
|
||||||
@@ -16,6 +16,7 @@ import org.springframework.transaction.annotation.Propagation;
|
|||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -79,12 +80,41 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl<SarFileSplitMenuE
|
|||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<SarFileSplitMenuEO> queryAllChildrenById(SarFileSplitMenuEO sarMenuEO) {
|
||||||
|
SarFileSplitMenuEO sarFileSplitMenuEO = dao.selectByPrimaryKey(sarMenuEO.getId());
|
||||||
|
SarFileSplitMenuEOPage page = new SarFileSplitMenuEOPage();
|
||||||
|
page.setInfoId(sarFileSplitMenuEO.getInfoId());
|
||||||
|
List<SarFileSplitMenuEO> listAll = dao.queryByList(page); // 查询所有目录
|
||||||
|
|
||||||
|
List<SarFileSplitMenuEO> result = new ArrayList<>();
|
||||||
|
// 递归查询 指定父节点下的所有子节点,包括父节点
|
||||||
|
if (CollectionUtil.isNotEmpty(listAll)) {
|
||||||
|
result.add(sarFileSplitMenuEO); // 加上父节点
|
||||||
|
recursion(listAll, result, sarFileSplitMenuEO);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void recursion(List<SarFileSplitMenuEO> listAll, List<SarFileSplitMenuEO> result, SarFileSplitMenuEO father) {
|
||||||
|
List<SarFileSplitMenuEO> childern = listAll.stream().filter(e-> father.getId().equals(e.getPId())).collect(Collectors.toList());
|
||||||
|
if (CollectionUtil.isNotEmpty(childern)) {
|
||||||
|
result.addAll(childern);
|
||||||
|
for(SarFileSplitMenuEO menuEO : childern) {
|
||||||
|
recursion(listAll, result, menuEO);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void deleteMenu(String id){
|
public void deleteMenu(String id){
|
||||||
List<String> menuIds = new ArrayList<>();
|
List<String> menuIds = new ArrayList<>();
|
||||||
SarFileSplitMenuEO sarMenuEO = new SarFileSplitMenuEO();
|
SarFileSplitMenuEO sarMenuEO = new SarFileSplitMenuEO();
|
||||||
sarMenuEO.setId(id);
|
sarMenuEO.setId(id);
|
||||||
// 查询当前节点及所有子节点
|
// 查询当前节点及所有子节点
|
||||||
List<SarFileSplitMenuEO> list = dao.queryAllChildrenByid(sarMenuEO);
|
// List<SarFileSplitMenuEO> list = dao.queryAllChildrenByid(sarMenuEO);
|
||||||
|
List<SarFileSplitMenuEO> list = queryAllChildrenById(sarMenuEO);
|
||||||
|
|
||||||
if (list != null && !list.isEmpty()) {
|
if (list != null && !list.isEmpty()) {
|
||||||
for(SarFileSplitMenuEO menu : list){
|
for(SarFileSplitMenuEO menu : list){
|
||||||
menuIds.add(menu.getId());
|
menuIds.add(menu.getId());
|
||||||
|
|||||||
Reference in New Issue
Block a user