|
@@ -2688,6 +2688,9 @@ public class InformationWriteQueryController extends BladeController {
|
|
|
} else {
|
|
|
//todo 仅当前节点操作
|
|
|
if (allSelectedNodeList.size() > 0) {
|
|
|
+ if (allSelectedNodeList.size() != 1) {
|
|
|
+ throw new ServiceException("只能选择单节点进行新增操作");
|
|
|
+ }
|
|
|
//查询数据
|
|
|
selectedNodeList = this.unifiedCode(allSelectedNodeList, treeContract, "0");
|
|
|
|
|
@@ -2722,7 +2725,7 @@ public class InformationWriteQueryController extends BladeController {
|
|
|
});
|
|
|
|
|
|
//处理数据
|
|
|
- selectedNodeList.forEach(half -> {
|
|
|
+ for (WbsTreeContract half : selectedNodeList) {
|
|
|
//处理合同段数据
|
|
|
WbsTreeContract newData = new WbsTreeContract();
|
|
|
BeanUtils.copyProperties(half, newData);
|
|
@@ -2736,12 +2739,22 @@ public class InformationWriteQueryController extends BladeController {
|
|
|
//设置父级id
|
|
|
if ("1".equals(vo.getSaveType())) {
|
|
|
//当前节点及其子节点操作
|
|
|
- newData.setParentId(OldIdToNewIdMap.containsKey(half.getParentId()) ? OldIdToNewIdMap.get(half.getParentId()) : treeContract.getId().equals(half.getParentId()) || treeContract.getOldId().equals(half.getParentId().toString()) ? treeContract.getId() : SnowFlakeUtil.getId());
|
|
|
+ newData.setParentId(OldIdToNewIdMap.containsKey(half.getParentId()) ? OldIdToNewIdMap.get(half.getParentId()) : treeContract.getId().equals(half.getParentId()) /*|| treeContract.getOldId().equals(half.getParentId().toString())*/ ? treeContract.getId() : SnowFlakeUtil.getId());
|
|
|
} else {
|
|
|
- //仅当前节点新增操作时,父级id=选择新增的节点父级id
|
|
|
+ //TODO 仅当前节点新增操作时,父级id=选择新增的节点父级id(同级情况) or 父级id=选择新增的节点id(不同级情况,也就是下级)
|
|
|
if (new Integer("1").equals(half.getType())) {
|
|
|
- //节点
|
|
|
- newData.setParentId(half.getParentId());
|
|
|
+ if (vo.getAllSelectedList().size() == 1) {
|
|
|
+ AddContractTreeNodeVO.Node node = vo.getAllSelectedList().get(0);
|
|
|
+ if (("1").equals(node.getIsPeer())) {
|
|
|
+ //同级
|
|
|
+ newData.setParentId(treeContract.getParentId());
|
|
|
+
|
|
|
+ } else if (("2").equals(node.getIsPeer())) {
|
|
|
+ //下一级
|
|
|
+ newData.setParentId(treeContract.getId());
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
} else if (new Integer("2").equals(half.getType())) {
|
|
|
//表
|
|
|
newData.setParentId(OldIdToNewIdMap.containsKey(half.getParentId()) ? OldIdToNewIdMap.get(half.getParentId()) : treeContract.getId().equals(half.getParentId()) || treeContract.getOldId().equals(half.getParentId().toString()) ? treeContract.getId() : SnowFlakeUtil.getId());
|
|
@@ -2809,7 +2822,7 @@ public class InformationWriteQueryController extends BladeController {
|
|
|
//生成施工日志
|
|
|
this.createLedger(newData, saveLedger, null, nodeMap);
|
|
|
}
|
|
|
- });
|
|
|
+ }
|
|
|
}
|
|
|
treeContract.setNodeName(vo.getAllSelectedList().get(0).getNodeName());
|
|
|
R<Boolean> booleanR = this.saveOrCopyNodeTree(saveList, saveLedger, 2, treeContract);
|
|
@@ -2859,9 +2872,7 @@ public class InformationWriteQueryController extends BladeController {
|
|
|
//selectedNodeList.removeIf(wbsTreePrivate -> treeContract.getId().equals(wbsTreePrivate.getId()) || treeContract.getOldId().equals(wbsTreePrivate.getId().toString()));
|
|
|
selectedNodeList.removeIf(wbsTreePrivate -> {
|
|
|
Long id = wbsTreePrivate.getId();
|
|
|
- String oldId = wbsTreePrivate.getId().toString();
|
|
|
- return treeContract.getId() != null && treeContract.getOldId() != null &&
|
|
|
- (treeContract.getId().equals(id) || treeContract.getOldId().equals(oldId));
|
|
|
+ return treeContract.getId() != null && treeContract.getId().equals(id);
|
|
|
});
|
|
|
}
|
|
|
|
|
@@ -2982,9 +2993,7 @@ public class InformationWriteQueryController extends BladeController {
|
|
|
//剔除与当前操作节点相同的ID
|
|
|
allSelectedNodeLists.removeIf(wbsTreePrivate -> {
|
|
|
Long id = wbsTreePrivate.getId();
|
|
|
- String oldId = wbsTreePrivate.getId().toString();
|
|
|
- return treeContract.getId() != null && treeContract.getOldId() != null &&
|
|
|
- (treeContract.getId().equals(id) || treeContract.getOldId().equals(oldId));
|
|
|
+ return treeContract.getId() != null && treeContract.getId().equals(id);
|
|
|
});
|
|
|
//allSelectedNodeLists.removeIf(wbsTreePrivate -> treeContract.getId().equals(wbsTreePrivate.getId()) || treeContract.getOldId().equals(wbsTreePrivate.getId().toString()));
|
|
|
//设置到集合中
|