|
@@ -1,5 +1,6 @@
|
|
|
package cn.cslg.pas.service.business;
|
|
|
|
|
|
+import cn.cslg.pas.common.dto.CopyTreeNodeDTO;
|
|
|
import cn.cslg.pas.common.dto.business.QueryAllTreePathDTO;
|
|
|
import cn.cslg.pas.common.dto.business.QueryTreeNodeDTO;
|
|
|
import cn.cslg.pas.common.dto.business.TreeNodeDTO;
|
|
@@ -135,7 +136,7 @@ public class TreeNodeService extends ServiceImpl<TreeNodeMapper, TreeNode> imple
|
|
|
});
|
|
|
|
|
|
//返回树
|
|
|
- List<TreeNodeVO> treeNodeVOS = treeNodeMapper.getTreeNodeByIds(ids);
|
|
|
+ List<TreeNodeVO> treeNodeVOS = treeNodeMapper.getTreeNodeByIds(ids,false);
|
|
|
this.loadTreeNode(treeNodeVOS);
|
|
|
reTreeNodeVOS = this.reTrees(treeNodeVOS);
|
|
|
records.setData(reTreeNodeVOS);
|
|
@@ -506,75 +507,75 @@ public class TreeNodeService extends ServiceImpl<TreeNodeMapper, TreeNode> imple
|
|
|
|
|
|
//复制节点
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
- public void copy(Integer copiedId, Integer toId, Integer type, Integer typeId) {
|
|
|
+ public void copy(CopyTreeNodeDTO copyTreeNodeDTO) {
|
|
|
|
|
|
//根据id查出树
|
|
|
- QueryTreeNodeDTO queryTreeNodeDTO1 = new QueryTreeNodeDTO();
|
|
|
- queryTreeNodeDTO1.setId(copiedId);
|
|
|
- List<TreeNodeVO> copiedTreeNodeVOs = treeNodeMapper.getTreeNode(queryTreeNodeDTO1);
|
|
|
- List<ReTreeNodeVO> copiedReTreeNodeVOs = this.reTrees(copiedTreeNodeVOs);
|
|
|
- Integer level = 0;
|
|
|
-
|
|
|
- //根据copyId 查询节点
|
|
|
- if (toId != null) {
|
|
|
- TreeNode treeNode = this.getById(toId);
|
|
|
- level = treeNode.getLevel();
|
|
|
- for (ReTreeNodeVO item : copiedReTreeNodeVOs) {
|
|
|
- item.setParentId(toId);
|
|
|
- item.setPath(treeNode.getPath() + "/" + treeNode.getId());
|
|
|
- item.setLevel(level);
|
|
|
- item.setType(treeNode.getType());
|
|
|
- item.setTypeId(treeNode.getTypeId());
|
|
|
- }
|
|
|
- } else {
|
|
|
- for (ReTreeNodeVO item : copiedReTreeNodeVOs) {
|
|
|
- item.setParentId(0);
|
|
|
- item.setPath("");
|
|
|
- item.setLevel(level);
|
|
|
- item.setType(type);
|
|
|
- item.setTypeId(typeId);
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- List<TreeNodeVO> toTreeNodeVOs = new ArrayList<>();
|
|
|
- if (toId != null) {
|
|
|
- QueryTreeNodeDTO queryTreeNodeDTO2 = new QueryTreeNodeDTO();
|
|
|
- queryTreeNodeDTO2.setId(toId);
|
|
|
- toTreeNodeVOs = treeNodeMapper.getTreeNode(queryTreeNodeDTO2);
|
|
|
- }
|
|
|
- while (copiedReTreeNodeVOs.size() != 0) {
|
|
|
- List<ReTreeNodeVO> reTreeNodeVOS = new ArrayList<>();
|
|
|
- for (ReTreeNodeVO reTreeNodeVO : copiedReTreeNodeVOs) {
|
|
|
- //根据父id查找子节点
|
|
|
- TreeNodeVO treeNodeVO = toTreeNodeVOs.stream().filter(item -> item.getParentId().equals(reTreeNodeVO.getParentId()) && reTreeNodeVO.getName().equals(reTreeNodeVO.getName())).findFirst().orElse(null);
|
|
|
-
|
|
|
- //当有相同节点时
|
|
|
- if (treeNodeVO != null) {
|
|
|
- BeanUtils.copyProperties(treeNodeVO, reTreeNodeVO);
|
|
|
-
|
|
|
- } else {
|
|
|
- TreeNode treeNode1 = new TreeNode();
|
|
|
- BeanUtils.copyProperties(reTreeNodeVO, treeNode1);
|
|
|
- treeNode1.setId(null);
|
|
|
- treeNode1.insert();
|
|
|
- reTreeNodeVO.setId(treeNode1.getId());
|
|
|
- }
|
|
|
-//TODO复制相关专利
|
|
|
- List<ReTreeNodeVO> childNodes = reTreeNodeVO.getChild();
|
|
|
- if (childNodes != null && childNodes.size() > 0) {
|
|
|
- childNodes.forEach(item -> {
|
|
|
- item.setParentId(reTreeNodeVO.getId());
|
|
|
- item.setPath(reTreeNodeVO.getPath() + "/" + reTreeNodeVO.getId());
|
|
|
- item.setTypeId(reTreeNodeVO.getTypeId());
|
|
|
- item.setType(reTreeNodeVO.getType());
|
|
|
- });
|
|
|
- reTreeNodeVOS.addAll(childNodes);
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
- copiedReTreeNodeVOs = reTreeNodeVOS;
|
|
|
- }
|
|
|
+// QueryTreeNodeDTO queryTreeNodeDTO1 = new QueryTreeNodeDTO();
|
|
|
+// queryTreeNodeDTO1.setId(copiedId);
|
|
|
+// List<TreeNodeVO> copiedTreeNodeVOs = treeNodeMapper.getTreeNode(List<Integer> ids,);
|
|
|
+// List<ReTreeNodeVO> copiedReTreeNodeVOs = this.reTrees(copiedTreeNodeVOs);
|
|
|
+// Integer level = 0;
|
|
|
+//
|
|
|
+// //根据copyId 查询节点
|
|
|
+// if (toId != null) {
|
|
|
+// TreeNode treeNode = this.getById(toId);
|
|
|
+// level = treeNode.getLevel();
|
|
|
+// for (ReTreeNodeVO item : copiedReTreeNodeVOs) {
|
|
|
+// item.setParentId(toId);
|
|
|
+// item.setPath(treeNode.getPath() + "/" + treeNode.getId());
|
|
|
+// item.setLevel(level);
|
|
|
+// item.setType(treeNode.getType());
|
|
|
+// item.setTypeId(treeNode.getTypeId());
|
|
|
+// }
|
|
|
+// } else {
|
|
|
+// for (ReTreeNodeVO item : copiedReTreeNodeVOs) {
|
|
|
+// item.setParentId(0);
|
|
|
+// item.setPath("");
|
|
|
+// item.setLevel(level);
|
|
|
+// item.setType(type);
|
|
|
+// item.setTypeId(typeId);
|
|
|
+// }
|
|
|
+//
|
|
|
+// }
|
|
|
+//
|
|
|
+// List<TreeNodeVO> toTreeNodeVOs = new ArrayList<>();
|
|
|
+// if (toId != null) {
|
|
|
+// QueryTreeNodeDTO queryTreeNodeDTO2 = new QueryTreeNodeDTO();
|
|
|
+// queryTreeNodeDTO2.setId(toId);
|
|
|
+// toTreeNodeVOs = treeNodeMapper.getTreeNode(queryTreeNodeDTO2);
|
|
|
+// }
|
|
|
+// while (copiedReTreeNodeVOs.size() != 0) {
|
|
|
+// List<ReTreeNodeVO> reTreeNodeVOS = new ArrayList<>();
|
|
|
+// for (ReTreeNodeVO reTreeNodeVO : copiedReTreeNodeVOs) {
|
|
|
+// //根据父id查找子节点
|
|
|
+// TreeNodeVO treeNodeVO = toTreeNodeVOs.stream().filter(item -> item.getParentId().equals(reTreeNodeVO.getParentId()) && reTreeNodeVO.getName().equals(reTreeNodeVO.getName())).findFirst().orElse(null);
|
|
|
+//
|
|
|
+// //当有相同节点时
|
|
|
+// if (treeNodeVO != null) {
|
|
|
+// BeanUtils.copyProperties(treeNodeVO, reTreeNodeVO);
|
|
|
+//
|
|
|
+// } else {
|
|
|
+// TreeNode treeNode1 = new TreeNode();
|
|
|
+// BeanUtils.copyProperties(reTreeNodeVO, treeNode1);
|
|
|
+// treeNode1.setId(null);
|
|
|
+// treeNode1.insert();
|
|
|
+// reTreeNodeVO.setId(treeNode1.getId());
|
|
|
+// }
|
|
|
+////TODO复制相关专利
|
|
|
+// List<ReTreeNodeVO> childNodes = reTreeNodeVO.getChild();
|
|
|
+// if (childNodes != null && childNodes.size() > 0) {
|
|
|
+// childNodes.forEach(item -> {
|
|
|
+// item.setParentId(reTreeNodeVO.getId());
|
|
|
+// item.setPath(reTreeNodeVO.getPath() + "/" + reTreeNodeVO.getId());
|
|
|
+// item.setTypeId(reTreeNodeVO.getTypeId());
|
|
|
+// item.setType(reTreeNodeVO.getType());
|
|
|
+// });
|
|
|
+// reTreeNodeVOS.addAll(childNodes);
|
|
|
+//
|
|
|
+// }
|
|
|
+// }
|
|
|
+// copiedReTreeNodeVOs = reTreeNodeVOS;
|
|
|
+// }
|
|
|
}
|
|
|
|
|
|
public void loadPath(List<TreeNodeVO> treeNodeVOS) {
|