|
@@ -383,6 +383,7 @@ public class ArchiveTreeContractServiceImpl extends BaseServiceImpl<ArchiveTreeC
|
|
|
contractMap.put(contractInfo.getId(),contractInfo);
|
|
|
}
|
|
|
|
|
|
+ dstTree.setValue(1L);
|
|
|
for (ArchiveTreeContractVO2 ar: dstTree.getChildren()) {
|
|
|
//施工和监理
|
|
|
ar.setValue(1L);
|
|
@@ -450,16 +451,39 @@ public class ArchiveTreeContractServiceImpl extends BaseServiceImpl<ArchiveTreeC
|
|
|
//同步
|
|
|
if (dstNode.getParentId() == 0 || dstScopeTree.getId() == ar.getId()) {
|
|
|
//同步
|
|
|
- List<ArchiveTreeContract> tmpSaveList = archiveTreeContractSync.getNormalSaveList(srcNode.getId(),
|
|
|
- srcTrees.get(0),dstNode.getId(),ar);
|
|
|
+ List<ArchiveTreeContract> tmpSaveList = null;
|
|
|
+ if (dstNode.getParentId() == 0) {
|
|
|
+ ArchiveTreeVO2 tmpSubTree = ForestNodeMergerEx.getSubTree(srcTree,ar.getFromId());
|
|
|
+ if (tmpSubTree == null) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ tmpSaveList = archiveTreeContractSync.getNormalSaveList(tmpSubTree.getId(),
|
|
|
+ tmpSubTree,ar.getId(),ar);
|
|
|
+ }else {
|
|
|
+ tmpSaveList = archiveTreeContractSync.getNormalSaveList(srcNode.getId(),
|
|
|
+ srcTree,dstNode.getId(),ar);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
saveList.addAll(tmpSaveList);
|
|
|
}
|
|
|
}else {
|
|
|
for (ArchiveTreeContractVO2 contractNode : ar.getChildren()){
|
|
|
+
|
|
|
+ List<ArchiveTreeContract> tmpSaveList = null;
|
|
|
if (dstNode.getParentId() == 0 || dstScopeTree.getId() == contractNode.getId()) {
|
|
|
|
|
|
- List<ArchiveTreeContract> tmpSaveList = archiveTreeContractSync.getNormalSaveList(srcNode.getId(),
|
|
|
- srcTrees.get(0),dstNode.getId(),contractNode);
|
|
|
+ ArchiveTreeVO2 tmpSubTree = srcTree;
|
|
|
+ Long dstNodeId = dstNode.getId();
|
|
|
+ if (dstNode.getParentId() == 0) {
|
|
|
+ tmpSubTree = ForestNodeMergerEx.getSubTree(srcTree,ar.getFromId());
|
|
|
+ dstNodeId = contractNode.getId();
|
|
|
+ }
|
|
|
+ if (tmpSubTree == null) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ tmpSaveList = archiveTreeContractSync.getNormalSaveList(tmpSubTree.getId(),
|
|
|
+ tmpSubTree,dstNodeId,contractNode);
|
|
|
saveList.addAll(tmpSaveList);
|
|
|
}
|
|
|
}
|