update 拆分结果编辑 目录不能拖动到上级
This commit is contained in:
+13
-5
@@ -1,5 +1,6 @@
|
||||
package com.jero.modules.split.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollStreamUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
@@ -386,17 +387,19 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl<SarFileSplitMenuE
|
||||
}
|
||||
// 要移动的节点所有子集(包括本身)
|
||||
List<SarFileSplitMenuEO> sarFileSplitMenuEO1List = new ArrayList<>();
|
||||
List<String> idList = new ArrayList<>();
|
||||
for (int i = 0; i < sourceIdList.size(); i++) {
|
||||
String sourceId = sourceIdList.get(i);
|
||||
// 要移动的节点信息
|
||||
SarFileSplitMenuEO sarFileSplitMenuEO = baseMapper.findById(sourceId);
|
||||
sarFileSplitMenuEO.setParentId(parentId);
|
||||
sarFileSplitMenuEO1List.add(sarFileSplitMenuEO);
|
||||
|
||||
idList.add(sourceId);
|
||||
}
|
||||
sarFileSplitMenuEO1List.addAll(lastMenuList);
|
||||
List<SarFileSplitMenuEO> allList = new ArrayList<>();
|
||||
getChildren(allList, sarFileSplitMenuEO1List);
|
||||
//排除
|
||||
getChildren(allList, lastMenuList);
|
||||
|
||||
for (int i = 0; i < allList.size(); i++) {
|
||||
SarFileSplitMenuEO sarFileSplitMenuEO = allList.get(i);
|
||||
@@ -442,10 +445,15 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl<SarFileSplitMenuE
|
||||
|
||||
private void getChildren(List<SarFileSplitMenuEO> allList, List<SarFileSplitMenuEO> sarFileSplitMenuEOList) {
|
||||
for (SarFileSplitMenuEO sarFileSplitMenuEO : sarFileSplitMenuEOList) {
|
||||
String id = sarFileSplitMenuEO.getId();
|
||||
List<String> idList = CollStreamUtil.toList(allList, SarFileSplitMenuEO::getId);
|
||||
if (idList.contains(id)){
|
||||
continue;
|
||||
}
|
||||
allList.add(sarFileSplitMenuEO);
|
||||
List<SarFileSplitMenuEO> childrenList = baseMapper.findByParentId(sarFileSplitMenuEO.getId());
|
||||
if (CollectionUtils.isNotEmpty(childrenList)){
|
||||
getChildren(allList, childrenList);
|
||||
List<SarFileSplitMenuEO> childrenList = baseMapper.findByParentId(id);
|
||||
if (CollectionUtils.ist, cisNotEmpty(childrenList)){
|
||||
getChildren(allLhildrenList);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user