Переглянути джерело

档案-试验资料同步
1、调整同步参数

LHB 1 місяць тому
батько
коміт
5b0760ebe2

+ 54 - 50
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ArchiveTreeContractSyncImpl.java

@@ -1051,7 +1051,7 @@ public class ArchiveTreeContractSyncImpl {
                 }
                 //挂载到子节点下
                 List<ArchiveFile> newArchiveFileList = files.stream().map(file -> {
-                    ArchiveFile archiveFile = trialFileCovertArchiveFile(file, trialNode);
+                    ArchiveFile archiveFile = trialFileCovertArchiveFile(file, trialNode, contractInfo);
                     return archiveFile;
                 }).collect(Collectors.toList());
                 addFile.addAll(newArchiveFileList);
@@ -1084,51 +1084,51 @@ public class ArchiveTreeContractSyncImpl {
                 addFile.addAll(newArchiveFileList);
             }
         }
-
+        //暂时先不做
         /**单独处理原材料资质证书 */
-        if (contractTrialType.contains("99")){
-            //获取所有的原材节点
-            List<ArchiveSyncTrialVO> trialVOS = trialsMap.get(52);
-            if (CollectionUtil.isNotEmpty(trialVOS)){
-                //查询出整个系统的附件,设计问题
-                Map<String, Attach> maps = jdbcTemplate.query("select link,original_name from blade_attach", new BeanPropertyRowMapper<>(Attach.class)).stream().collect(Collectors.toMap(Attach::getLink, Attach -> Attach, (obj1, obj2) -> obj1));
-                //获取出所有节点id
-                List<Long> nodeIds = trialVOS.stream().map(l -> l.getPKeyId()).collect(Collectors.toList());
-                //根据节点id,查询出所有的报告id
-                List<Long> recordIds = records.stream().filter(l -> nodeIds.contains(l.getNodeId())).map(l -> l.getId()).collect(Collectors.toList());
-                //根据报告id,查询出所有的报告附件
-                List<TrialSelfInspectionRecordFileVO> fileVOS = archiveTreeContractMapper.getAllTrialRecordFile(recordIds);
-                //报告附件按照节点id分组
-                Map<Long, List<TrialSelfInspectionRecordFileVO>> fileMap = fileVOS.stream().collect(Collectors.groupingBy(l -> l.getNodeId()));
-                //循环原材节点
-                for (ArchiveSyncTrialVO vo : trialVOS) {
-                    //把节点转换为档案节点,挂载到同步节点下
-                    ArchiveTreeContract trialNode = createTypeNode(vo.getNodeName(), archiveTreeContract);
-                    addNode.add(trialNode);
-                    //获取出节点下面的报告下面的附件,并转换为档案文件
-                    List<TrialSelfInspectionRecordFileVO> files = fileMap.get(vo.getPKeyId());
-                    if (CollectionUtil.isEmpty(files)){
-                        continue;
-                    }
-                    //上个开发太懒,敷衍了事,重新设置附件相关值
-                    for (TrialSelfInspectionRecordFileVO file : files) {
-                        Attach attach = maps.get(file.getUrl());
-                        if (attach != null){
-                            file.setFileName(attach.getOriginalName());
-                            file.setCreateTime(attach.getCreateTime());
-                        }
-                    }
-                    //挂载到子节点下
-                    List<ArchiveFile> newArchiveFileList = files.stream().map(file -> {
-                        ArchiveFile archiveFile = trialFileCovertArchiveFile2(file, trialNode);
-                        return archiveFile;
-                    }).collect(Collectors.toList());
-                    addFile.addAll(newArchiveFileList);
-                }
-
-            }
-
-        }
+//        if (contractTrialType.contains("99")){
+//            //获取所有的原材节点
+//            List<ArchiveSyncTrialVO> trialVOS = trialsMap.get(52);
+//            if (CollectionUtil.isNotEmpty(trialVOS)){
+//                //查询出整个系统的附件,设计问题
+//                Map<String, Attach> maps = jdbcTemplate.query("select link,original_name from blade_attach", new BeanPropertyRowMapper<>(Attach.class)).stream().collect(Collectors.toMap(Attach::getLink, Attach -> Attach, (obj1, obj2) -> obj1));
+//                //获取出所有节点id
+//                List<Long> nodeIds = trialVOS.stream().map(l -> l.getPKeyId()).collect(Collectors.toList());
+//                //根据节点id,查询出所有的报告id
+//                List<Long> recordIds = records.stream().filter(l -> nodeIds.contains(l.getNodeId())).map(l -> l.getId()).collect(Collectors.toList());
+//                //根据报告id,查询出所有的报告附件
+//                List<TrialSelfInspectionRecordFileVO> fileVOS = archiveTreeContractMapper.getAllTrialRecordFile(recordIds);
+//                //报告附件按照节点id分组
+//                Map<Long, List<TrialSelfInspectionRecordFileVO>> fileMap = fileVOS.stream().collect(Collectors.groupingBy(l -> l.getNodeId()));
+//                //循环原材节点
+//                for (ArchiveSyncTrialVO vo : trialVOS) {
+//                    //把节点转换为档案节点,挂载到同步节点下
+//                    ArchiveTreeContract trialNode = createTypeNode(vo.getNodeName(), archiveTreeContract);
+//                    addNode.add(trialNode);
+//                    //获取出节点下面的报告下面的附件,并转换为档案文件
+//                    List<TrialSelfInspectionRecordFileVO> files = fileMap.get(vo.getPKeyId());
+//                    if (CollectionUtil.isEmpty(files)){
+//                        continue;
+//                    }
+//                    //上个开发太懒,敷衍了事,重新设置附件相关值
+//                    for (TrialSelfInspectionRecordFileVO file : files) {
+//                        Attach attach = maps.get(file.getUrl());
+//                        if (attach != null){
+//                            file.setFileName(attach.getOriginalName());
+//                            file.setCreateTime(attach.getCreateTime());
+//                        }
+//                    }
+//                    //挂载到子节点下
+//                    List<ArchiveFile> newArchiveFileList = files.stream().map(file -> {
+//                        ArchiveFile archiveFile = trialFileCovertArchiveFile2(file, trialNode);
+//                        return archiveFile;
+//                    }).collect(Collectors.toList());
+//                    addFile.addAll(newArchiveFileList);
+//                }
+//
+//            }
+//
+//        }
         if (addNode.size() > 0){
             addNode.stream().forEach(l->l.setTenantId(tenantId));
             archiveTreeContractMapper.batchInsertArchiveTreeContract(addNode);
@@ -1446,7 +1446,8 @@ public class ArchiveTreeContractSyncImpl {
         archiveFile.setContractId(String.valueOf(parentNode.getContractId()));
         archiveFile.setNodeId(parentNode.getId()+"");
         archiveFile.setFileNumber(vo.getReportNo());
-        archiveFile.setFileName(vo.getMaterialName()+vo.getSpecificationModel());
+        //规格型号 + 试验名称
+        archiveFile.setFileName(vo.getSpecificationModel()+vo.getMaterialName());
         if (vo.getReportDate() != null) {
             archiveFile.setFileTime(new SimpleDateFormat("yyyy-MM-dd").format(vo.getReportDate()));
         }
@@ -1456,7 +1457,8 @@ public class ArchiveTreeContractSyncImpl {
         archiveFile.setIsApproval(0);
         archiveFile.setIsCertification(1);
         archiveFile.setIsNeedCertification(0);
-        archiveFile.setDutyUser(vo.getUserName());
+        //责任人 - 委托单位名称
+        archiveFile.setDutyUser(vo.getEntrustCompany());
         archiveFile.setCreateUser(vo.getCreateUser());
         archiveFile.setStatus(0);
         archiveFile.setIsDeleted(0);
@@ -1479,7 +1481,7 @@ public class ArchiveTreeContractSyncImpl {
     /**
      * 质检试验资料 转换为 档案文件
      */
-    private ArchiveFile trialFileCovertArchiveFile(TrialSelfInspectionRecord vo,ArchiveTreeContract parentNode)
+    private ArchiveFile trialFileCovertArchiveFile(TrialSelfInspectionRecord vo,ArchiveTreeContract parentNode, ContractInfo contractInfo)
     {
         ArchiveFile archiveFile = new ArchiveFile();
         archiveFile.setId(SnowFlakeUtil.getId());
@@ -1487,7 +1489,8 @@ public class ArchiveTreeContractSyncImpl {
         archiveFile.setContractId(String.valueOf(parentNode.getContractId()));
         archiveFile.setNodeId(parentNode.getId()+"");
         archiveFile.setFileNumber(vo.getReportNo());
-        archiveFile.setFileName(StringUtils.isNotBlank(vo.getSpecificationModel())?vo.getSpecificationModel():vo.getTrialProjectName());
+        //规格型号 + 试验名称
+        archiveFile.setFileName(vo.getSpecificationModel() + vo.getTrialProjectName());
         if (vo.getReportDate() != null) {
             archiveFile.setFileTime(new SimpleDateFormat("yyyy-MM-dd").format(vo.getReportDate()));
         }
@@ -1497,7 +1500,8 @@ public class ArchiveTreeContractSyncImpl {
         archiveFile.setIsApproval(0);
         archiveFile.setIsCertification(1);
         archiveFile.setIsNeedCertification(0);
-        archiveFile.setDutyUser(vo.getTrialUserName());
+        //当前合同段单位名称 施工单位 / 监理单位
+        archiveFile.setDutyUser(contractInfo.getContractType() == 1 ? contractInfo.getConstructionUnitName() : contractInfo.getSupervisionUnitName());
         archiveFile.setCreateUser(vo.getCreateUser());
         archiveFile.setStatus(0);
         archiveFile.setIsDeleted(0);