|
@@ -238,10 +238,7 @@ public class ArchiveTreeContractSyncImpl {
|
|
|
*/
|
|
|
public void syncBusinessData(Long projectId,Long contractId) {
|
|
|
|
|
|
- //检查是否有配置关联质检的节点
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ //检查是否有配置关联质检的节
|
|
|
//新增的文件题名
|
|
|
List<InformationQuery> newInformationQueryList = new ArrayList<>();
|
|
|
//新增的文件
|
|
@@ -264,9 +261,6 @@ public class ArchiveTreeContractSyncImpl {
|
|
|
//获取某个合同段下所有的质检归档文件
|
|
|
List<ArchiveFile> archiveFiles = getArchiveFiles(contractId);
|
|
|
|
|
|
- //获取该合同段下的wbs节点
|
|
|
-// List<ArchiveTreeContract> archiveTreeContracts = getArchiveTreeContractsWbs(contractId);
|
|
|
-
|
|
|
//wbs的keyId到 归档文件的映射
|
|
|
Map<Long,ArchiveFile> archiveKeyIdMap = new LinkedHashMap<>();
|
|
|
for (ArchiveFile ar: archiveFiles) {
|
|
@@ -275,12 +269,6 @@ public class ArchiveTreeContractSyncImpl {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //wbs的keyId到 归档树的映射
|
|
|
-// Map<Long,Long> archiveTreeContractIdMap = new LinkedHashMap<>();
|
|
|
-// for (ArchiveTreeContract ar :archiveTreeContracts) {
|
|
|
-// archiveTreeContractIdMap.put(ar.getExtKeyId(),ar.getId());
|
|
|
-// }
|
|
|
-
|
|
|
//获取合同段wbs划分树,用来组织树
|
|
|
List<WbsTreeContractVO6> wbsTrees = contractInfoService.tree8(lWbsId.toString(), projectId.toString(), contractId.toString());
|
|
|
if (wbsTrees == null || wbsTrees.size() == 0) {
|
|
@@ -304,29 +292,39 @@ public class ArchiveTreeContractSyncImpl {
|
|
|
wbsTreeKeyToIdMap.put(wbsTreeContractVO6.getPKeyId(),wbsTreeContractVO6.getId());
|
|
|
}
|
|
|
|
|
|
- Integer level = 5;
|
|
|
- List<ArchiveTreeContract> associatedNodes = getWbsAssociatedNodes(contractId.toString());
|
|
|
- if (associatedNodes == null || associatedNodes.size() == 0) {
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
- //遍历所有的关联节点
|
|
|
- for (ArchiveTreeContract node :associatedNodes) {
|
|
|
- Integer nodeLevel = Integer.valueOf(associatedNodes.get(0).getDisplayHierarchy());
|
|
|
+ //同步质检关联节点
|
|
|
+ syncNodes(contractId, informationQueryList, wbsTreeContractVO6Map, wbsTreeKeyToSortMap,
|
|
|
+ wbsTreeKeyToIdMap, archiveKeyIdMap, contractIndfo);
|
|
|
|
|
|
- //获取该合同段下的wbs节点
|
|
|
- List<ArchiveTreeContract> archiveTreeContracts = getArchiveTreeContractsWbs(contractId,node.getId());
|
|
|
|
|
|
- //wbs的keyId到 归档树的映射
|
|
|
- Map<Long,Long> archiveTreeContractIdMap = new LinkedHashMap<>();
|
|
|
- for (ArchiveTreeContract ar :archiveTreeContracts) {
|
|
|
- archiveTreeContractIdMap.put(ar.getExtKeyId(),ar.getId());
|
|
|
- }
|
|
|
+ //wbs的keyId到 归档树的映射
|
|
|
+// Map<Long,Long> archiveTreeContractIdMap = new LinkedHashMap<>();
|
|
|
+// for (ArchiveTreeContract ar :archiveTreeContracts) {
|
|
|
+// archiveTreeContractIdMap.put(ar.getExtKeyId(),ar.getId());
|
|
|
+// }
|
|
|
+// Integer level = 5;
|
|
|
+// List<ArchiveTreeContract> associatedNodes = getWbsAssociatedNodes(contractId.toString());
|
|
|
+// if (associatedNodes == null || associatedNodes.size() == 0) {
|
|
|
+// return;
|
|
|
+// }
|
|
|
|
|
|
- syncNode(informationQueryList,wbsTreeContractVO6Map,wbsTreeKeyToSortMap,wbsTreeKeyToIdMap,
|
|
|
- archiveKeyIdMap,archiveTreeContractIdMap,
|
|
|
- nodeLevel,node.getMajorDataType(),contractIndfo);
|
|
|
- }
|
|
|
+ //遍历所有的关联节点
|
|
|
+// for (ArchiveTreeContract node :associatedNodes) {
|
|
|
+// Integer nodeLevel = Integer.valueOf(associatedNodes.get(0).getDisplayHierarchy());
|
|
|
+//
|
|
|
+// //获取该合同段下的wbs节点
|
|
|
+// List<ArchiveTreeContract> archiveTreeContracts = getArchiveTreeContractsWbs(contractId,node.getId());
|
|
|
+//
|
|
|
+// //wbs的keyId到 归档树的映射
|
|
|
+// Map<Long,Long> archiveTreeContractIdMap = new LinkedHashMap<>();
|
|
|
+// for (ArchiveTreeContract ar :archiveTreeContracts) {
|
|
|
+// archiveTreeContractIdMap.put(ar.getExtKeyId(),ar.getId());
|
|
|
+// }
|
|
|
+//
|
|
|
+// syncNode(informationQueryList,wbsTreeContractVO6Map,wbsTreeKeyToSortMap,wbsTreeKeyToIdMap,
|
|
|
+// archiveKeyIdMap,archiveTreeContractIdMap,
|
|
|
+// nodeLevel,node.getMajorDataType(),contractIndfo);
|
|
|
+// }
|
|
|
// level = Integer.valueOf(associatedNodes.get(0).getDisplayHierarchy());
|
|
|
//
|
|
|
//
|
|
@@ -348,7 +346,6 @@ public class ArchiveTreeContractSyncImpl {
|
|
|
// || (sort!= null && sort != archiveFile.getSort()) ) {
|
|
|
//
|
|
|
// //需要更新的
|
|
|
-// //todo 后续需增加判断已组件或者锁定的不要更新?
|
|
|
// archiveFile.setPdfFileUrl(info.getEVisaPdfUrl());
|
|
|
// archiveFile.setEVisaFile(info.getEVisaPdfUrl());
|
|
|
// archiveFile.setFilePage(info.getEVisaPdfPage());
|
|
@@ -381,6 +378,35 @@ public class ArchiveTreeContractSyncImpl {
|
|
|
// handleAddandUpdateFiles(newArchiveFiles,updateArchiveFiles);
|
|
|
}
|
|
|
|
|
|
+ private void syncNodes(Long contractId, List<InformationQuery> informationQueryList,
|
|
|
+ Map<Long, WbsTreeContractVO6> wbsTreeContractVO6Map, Map<Long, Integer> wbsTreeKeyToSortMap,
|
|
|
+ Map<Long, Long> wbsTreeKeyToIdMap, Map<Long, ArchiveFile> archiveKeyIdMap,
|
|
|
+ ContractInfo contractIndfo) {
|
|
|
+ // 获取关联节点
|
|
|
+ List<ArchiveTreeContract> associatedNodes = getWbsAssociatedNodes(contractId.toString());
|
|
|
+ if (associatedNodes == null || associatedNodes.isEmpty()) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<Long,Long> archiveTreeContractIdMap = new LinkedHashMap<>();
|
|
|
+
|
|
|
+ for (ArchiveTreeContract node : associatedNodes) {
|
|
|
+ Integer nodeLevel = Integer.valueOf(associatedNodes.get(0).getDisplayHierarchy());
|
|
|
+
|
|
|
+ // 获取该合同段下的wbs节点
|
|
|
+ List<ArchiveTreeContract> archiveTreeContracts = getArchiveTreeContractsWbs(contractId, node.getId());
|
|
|
+
|
|
|
+ // 更新archiveTreeContractIdMap映射
|
|
|
+ archiveTreeContractIdMap.clear();
|
|
|
+ for (ArchiveTreeContract ar : archiveTreeContracts) {
|
|
|
+ archiveTreeContractIdMap.put(ar.getExtKeyId(), ar.getId());
|
|
|
+ }
|
|
|
+
|
|
|
+ syncNode(informationQueryList, wbsTreeContractVO6Map, wbsTreeKeyToSortMap, wbsTreeKeyToIdMap,
|
|
|
+ archiveKeyIdMap, archiveTreeContractIdMap,
|
|
|
+ nodeLevel, node.getMajorDataType(), contractIndfo);
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
void syncNode(List<InformationQuery> informationQueryList,
|
|
|
Map<Long,WbsTreeContractVO6> wbsTreeContractVO6Map,
|