|
@@ -1357,7 +1357,20 @@ public class InformationWriteQueryController extends BladeController {
|
|
List<ConstructionLedger> saveLedger = new ArrayList<>();
|
|
List<ConstructionLedger> saveLedger = new ArrayList<>();
|
|
|
|
|
|
//获取子级节点、表信息
|
|
//获取子级节点、表信息
|
|
- List<WbsTreeContract> nodeChildAll = informationQueryService.getNodeChildAllByNodeId(needCopyNode.getId() + "", needCopyNode.getContractId(), vo.getNeedCopyPrimaryKeyId());
|
|
|
|
|
|
+ //List<WbsTreeContract> nodeChildAll = informationQueryService.getNodeChildAllByNodeId(needCopyNode.getId() + "", needCopyNode.getContractId(), vo.getNeedCopyPrimaryKeyId());
|
|
|
|
+ List<WbsTreeContract> needCopyChildNodes = this.getChildNodes(needCopyNode);
|
|
|
|
+ if (ObjectUtil.isEmpty(needCopyChildNodes) || needCopyChildNodes.size() == 0) {
|
|
|
|
+ //最下层级节点复制
|
|
|
|
+ needCopyChildNodes = new ArrayList<>();
|
|
|
|
+ needCopyChildNodes.add(needCopyNode);
|
|
|
|
+ }
|
|
|
|
+ needCopyChildNodes.add(needCopyNode);
|
|
|
|
+ List<WbsTreeContract> nodeChildAll = new ArrayList<>(needCopyChildNodes);
|
|
|
|
+ List<WbsTreeContract> addChildNodesTables = this.getChildNodesTables(needCopyChildNodes, needCopyNode.getContractId());
|
|
|
|
+ if (addChildNodesTables != null) {
|
|
|
|
+ nodeChildAll.addAll(addChildNodesTables);
|
|
|
|
+ }
|
|
|
|
+
|
|
//获取数据源表(附件复制使用)
|
|
//获取数据源表(附件复制使用)
|
|
Set<WbsTreeContract> oldTabs = nodeChildAll.stream().filter(f -> (new Integer(2).equals(f.getType()))).collect(Collectors.toSet());
|
|
Set<WbsTreeContract> oldTabs = nodeChildAll.stream().filter(f -> (new Integer(2).equals(f.getType()))).collect(Collectors.toSet());
|
|
|
|
|
|
@@ -1458,7 +1471,8 @@ public class InformationWriteQueryController extends BladeController {
|
|
}
|
|
}
|
|
|
|
|
|
//更新redis缓存
|
|
//更新redis缓存
|
|
- informationQueryService.AsyncWbsTree(needCopyNode.getParentId() + "", needCopyNode.getParentId() + "", needCopyNode.getContractId(), "", "1");
|
|
|
|
|
|
+ //informationQueryService.AsyncWbsTree(needCopyNode.getParentId() + "", needCopyNode.getParentId() + "", needCopyNode.getContractId(), "", "1");
|
|
|
|
+ informationQueryService.delAsyncWbsTree(needCopyNode.getContractId());
|
|
|
|
|
|
return booleanR;
|
|
return booleanR;
|
|
|
|
|
|
@@ -1661,7 +1675,7 @@ public class InformationWriteQueryController extends BladeController {
|
|
if (obj != null && ObjectUtil.isNotEmpty(obj.getParentId())) {
|
|
if (obj != null && ObjectUtil.isNotEmpty(obj.getParentId())) {
|
|
if (newMap.size() > 0) {
|
|
if (newMap.size() > 0) {
|
|
WbsTreeContract parentObj = newMap.get(obj.getParentId());
|
|
WbsTreeContract parentObj = newMap.get(obj.getParentId());
|
|
- if (parentObj != null && !obj.getAncestors().contains(obj.getParentId().toString())) {
|
|
|
|
|
|
+ if (parentObj != null && ObjectUtil.isNotEmpty(obj.getAncestors()) && ObjectUtil.isNotEmpty(obj.getParentId()) && !obj.getAncestors().contains(obj.getParentId().toString())) {
|
|
String parentAncestors = parentObj.getAncestors();
|
|
String parentAncestors = parentObj.getAncestors();
|
|
obj.setAncestors(parentAncestors + "," + obj.getParentId());
|
|
obj.setAncestors(parentAncestors + "," + obj.getParentId());
|
|
}
|
|
}
|