Browse Source

监理树的同步

huangtf 1 year ago
parent
commit
8de4c919c2

+ 6 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/entity/ArchiveFile.java

@@ -277,4 +277,10 @@ public class ArchiveFile extends BaseEntity {
     //整改情况,0,无整改,1 待整改,2 已整改
     @ApiModelProperty("整改情况")
     private Integer rectification;
+
+    /**
+     * 类型,1施工 2监理
+     */
+    @ApiModelProperty("类型,1施工 2监理")
+    private Integer classify;
 }

+ 1 - 1
blade-service-api/blade-business-api/src/main/java/org/springblade/business/feign/ArchiveFileClient.java

@@ -146,7 +146,7 @@ public interface ArchiveFileClient {
     void updateArchiveFile(@RequestBody List<ArchiveFile> files);
 
     @PostMapping(API_PREFIX + "/getListByContractId")
-    List<ArchiveFile> getListByContractId(@RequestParam Long contractId);
+    List<ArchiveFile> getListByContractId(@RequestParam Long contractId,@RequestParam Integer classify);
 
     @PostMapping(API_PREFIX + "/updateById2")
     void updateById2(@RequestBody ArchiveFile archiveFile);

+ 1 - 1
blade-service-api/blade-business-api/src/main/java/org/springblade/business/feign/InformationQueryClient.java

@@ -89,7 +89,7 @@ public interface InformationQueryClient {
     List<QueryProcessDataVO> getNodeChildTabColsAllByTabName(@RequestParam String initTabName);
 
     @PostMapping(API_PREFIX + "/getInformationByContractId")
-    List<InformationQuery> getInformationByContractId(@RequestParam Long contractId);
+    List<InformationQuery> getInformationByContractId(@RequestParam Long contractId,@RequestParam Integer classify);
 
     @PostMapping(API_PREFIX + "/getInformationByContractId1")
     void getInformationByContractId1(Long contractId);

+ 2 - 2
blade-service/blade-business/src/main/java/org/springblade/business/feignClient/ArchiveFileClientImpl.java

@@ -333,8 +333,8 @@ public class ArchiveFileClientImpl implements ArchiveFileClient {
     }
 
     @Override
-    public List<ArchiveFile> getListByContractId(Long contractId) {
-        return fileMapper.getListByContractId(contractId);
+    public List<ArchiveFile> getListByContractId(Long contractId,Integer classify) {
+        return fileMapper.getListByContractId(contractId,classify);
     }
 
     @Override

+ 3 - 2
blade-service/blade-business/src/main/java/org/springblade/business/feignClient/InformationQueryClientImpl.java

@@ -13,6 +13,7 @@ import org.springblade.business.service.IInformationQueryFileService;
 import org.springblade.business.service.IInformationQueryService;
 import org.springblade.business.vo.QueryProcessDataVO;
 import org.springblade.common.utils.SnowFlakeUtil;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.util.List;
@@ -112,8 +113,8 @@ public class InformationQueryClientImpl implements InformationQueryClient {
     }
 
     @Override
-    public List<InformationQuery> getInformationByContractId(Long contractId) {
-        return informationQueryMapper.getInformationByContractId(contractId);
+    public List<InformationQuery> getInformationByContractId(Long contractId, Integer classify) {
+        return informationQueryMapper.getInformationByContractId(contractId,classify);
     }
 
     @Override

+ 1 - 1
blade-service/blade-business/src/main/java/org/springblade/business/mapper/ArchiveFileMapper.java

@@ -95,7 +95,7 @@ public interface ArchiveFileMapper extends BaseMapper<ArchiveFile> {
 
     List<ArchiveFile> batchSearchArchiveFile(@Param("ids") List<Long> ids);
 
-    List<ArchiveFile> getListByContractId(@Param("contractId") Long contractId);
+    List<ArchiveFile> getListByContractId(@Param("contractId") Long contractId, @Param("classify") Integer classify);
 
 
     List<ArchivesAutoVO> getAllArchiveAutoByContractType(@Param("projectId") Long projectId);

+ 1 - 1
blade-service/blade-business/src/main/java/org/springblade/business/mapper/ArchiveFileMapper.xml

@@ -412,7 +412,7 @@
         FROM
             u_archive_file u
                 LEFT JOIN m_archive_tree_contract ar on u.node_id = ar.id
-        where 	u.contract_id = #{contractId}
+        where 	u.contract_id = #{contractId} and u.classify = #{classify}
           AND u.is_deleted = 0
           AND u.source_type = 1 and ar.is_deleted = 0;
     </select>

+ 1 - 1
blade-service/blade-business/src/main/java/org/springblade/business/mapper/InformationQueryMapper.java

@@ -139,7 +139,7 @@ public interface InformationQueryMapper extends BaseMapper<InformationQuery> {
 
     List<InformationQuery> selectChildrenNodeInfo(@Param("node") WbsTreeContract node);
 
-    List<InformationQuery> getInformationByContractId(@Param("contractId") Long contractId);
+    List<InformationQuery> getInformationByContractId(@Param("contractId") Long contractId, @Param("classify")Integer classify);
 
     List<TabBusstimeInfo> getTabussTimeInfo(@Param("tables") List<String> tables);
 

+ 2 - 1
blade-service/blade-business/src/main/java/org/springblade/business/mapper/InformationQueryMapper.xml

@@ -955,11 +955,12 @@
         name,
         e_visa_pdf_url,
         business_time,
+        classify,
         e_visa_pdf_page,
         e_visa_pdf_size
         from u_information_query
         where is_deleted = 0
-          and contract_id = #{contractId} and status = 2 and is_deleted = 0;
+          and contract_id = #{contractId} and classify = #{classify} and status = 2 and is_deleted = 0;
     </select>
 
     <select id="getTabussTimeInfo" resultMap="tabBusstimeInfoResultMap">

+ 5 - 2
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TaskServiceImpl.java

@@ -1216,6 +1216,7 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
 
         List<ArchiveFile> archiveFiles = this.archiveFileService.list(Wrappers.<ArchiveFile>lambdaQuery()
                 .eq(ArchiveFile::getNodeId, nodeId.toString())
+                .eq(ArchiveFile::getClassify, query.getClassify())
                 .eq(ArchiveFile::getNodeExtId, keyId)
                 .eq(ArchiveFile::getIsDeleted, 0));
 
@@ -1236,12 +1237,12 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
             if (wbsTreeContract != null) {
                 createTime = wbsTreeContract.getCreateTime();
             }
-            ArchiveFile newArchiveFile = getArchiveFile(query, nodeId, keyId, query.getEVisaPdfSize(), contractIndfo.archivesUnit(), createTime);
+            ArchiveFile newArchiveFile = getArchiveFile(query, nodeId, keyId, query.getEVisaPdfSize(), contractIndfo.archivesUnit(), createTime,query.getClassify());
             this.archiveFileService.save(newArchiveFile);
         }
     }
 
-    public ArchiveFile getArchiveFile(InformationQuery query, Long nodeId, Long keyId, Long fileSize, String unit, Date createTime) {
+    public ArchiveFile getArchiveFile(InformationQuery query, Long nodeId, Long keyId, Long fileSize, String unit, Date createTime,Integer classify) {
         ArchiveFile archiveFile = new ArchiveFile();
         archiveFile.setNodeId(nodeId.toString());
         archiveFile.setNodeExtId(keyId);
@@ -1255,6 +1256,8 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
 
         //责任人怎么取
         archiveFile.setDutyUser(unit);
+        //设置施工监理
+        archiveFile.setClassify(classify);
 
         //文件大小
         archiveFile.setFileSize(query.getEVisaPdfSize());

+ 1 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ArchiveTreeContractController.java

@@ -421,7 +421,7 @@ public class ArchiveTreeContractController extends BladeController {
     @ApiOperation(value = "同步业务数据", notes = "传入节点id")
     public R test1(Long projectId,Long contractId) {
 
-        archiveTreeContractSync.syncBusinessData(projectId,contractId);
+        archiveTreeContractSync.syncBusinessData(projectId,contractId,1);
 
         return R.success("开始同步合同段,请耐心等待" );
     }

+ 19 - 16
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ArchiveTreeContractSyncImpl.java

@@ -257,7 +257,7 @@ public class ArchiveTreeContractSyncImpl {
         //executorService.execute(()->{
             try{
                 //将项目未锁定案卷拆卷
-                syncBusinessData(projectId,contractId);
+                syncBusinessData(projectId,contractId,1);
 
                 contractInfoService.updateIsArchivesAutoById(contractId, 0);
 
@@ -277,7 +277,7 @@ public class ArchiveTreeContractSyncImpl {
      * @param projectId
      * @param contractId
      */
-    public void  syncBusinessData(Long projectId,Long contractId) {
+    public void  syncBusinessData(Long projectId,Long contractId,Integer classify) {
 
         log.info("同步文件  projectId:"+projectId+"-contractId:"+contractId);
 
@@ -291,10 +291,10 @@ public class ArchiveTreeContractSyncImpl {
         ContractInfo contractIndfo = contractInfoService.getById(contractId);
 
         //获取某个合同段所有的电签完成的文件题名
-        List<InformationQuery> informationQueryList = getInformationQuerys(contractId);
+        List<InformationQuery> informationQueryList = getInformationQuerys(contractId,classify);
 
         //获取某个合同段下所有的质检归档文件
-        List<ArchiveFile>  archiveFiles = getArchiveFiles(contractId);
+        List<ArchiveFile>  archiveFiles = getArchiveFiles(contractId,classify);
 
         //wbs的keyId到 归档文件的映射
         Map<Long,ArchiveFile> archiveKeyIdMap = new LinkedHashMap<>();
@@ -333,7 +333,7 @@ public class ArchiveTreeContractSyncImpl {
 
         //同步质检关联节点
         syncNodes(contractId, informationQueryList, wbsTreeContractVO6Map, wbsTreeKeyToSortMap,
-                wbsTreeKeyToIdMap, archiveKeyIdMap, contractIndfo);
+                wbsTreeKeyToIdMap, archiveKeyIdMap, contractIndfo,classify);
 
 
         //wbs的keyId到 归档树的映射
@@ -420,7 +420,7 @@ public class ArchiveTreeContractSyncImpl {
     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) {
+                           ContractInfo contractIndfo,Integer classify) {
         // 获取关联节点
         List<ArchiveTreeContract> associatedNodes = getWbsAssociatedNodes(contractId.toString());
         if (associatedNodes == null || associatedNodes.isEmpty()) {
@@ -440,7 +440,7 @@ public class ArchiveTreeContractSyncImpl {
             }
 
             // 获取该合同段下的wbs节点
-            List<ArchiveTreeContract> archiveTreeContracts = getArchiveTreeContractsWbs(contractId, node.getId());
+            List<ArchiveTreeContract> archiveTreeContracts = getArchiveTreeContractsWbs(contractId, node.getId(),classify);
 
             // 更新archiveTreeContractIdMap映射
             archiveTreeContractIdMap.clear();
@@ -450,7 +450,7 @@ public class ArchiveTreeContractSyncImpl {
 
             syncNode(informationQueryList, wbsTreeContractVO6Map, wbsTreeKeyToSortMap, wbsTreeKeyToIdMap,
                     archiveKeyIdMap, archiveTreeContractIdMap,
-                    nodeLevel, node.getMajorDataType(), contractIndfo);
+                    nodeLevel, node.getMajorDataType(), contractIndfo,classify);
         }
     }
 
@@ -462,7 +462,7 @@ public class ArchiveTreeContractSyncImpl {
                   Map<Long,Long> archiveTreeContractIdMap,
                   Integer level,
                   String majarDataType,
-                  ContractInfo contractIndfo) {
+                  ContractInfo contractIndfo,Integer classify) {
 
         //新增的文件题名
         List<InformationQuery> newInformationQueryList = new ArrayList<>();
@@ -549,7 +549,7 @@ public class ArchiveTreeContractSyncImpl {
                 continue;
             }
             //生成新增的归档文件
-            ArchiveFile archiveFile = getArchiveFile(info,nodeId,info.getWbsId(),contractIndfo);
+            ArchiveFile archiveFile = getArchiveFile(info,nodeId,info.getWbsId(),contractIndfo,classify);
             newArchiveFiles.add(archiveFile);
         }
 
@@ -581,27 +581,28 @@ public class ArchiveTreeContractSyncImpl {
     }
 
 
-    public List<InformationQuery>  getInformationQuerys(Long contractId) {
+    public List<InformationQuery>  getInformationQuerys(Long contractId,Integer classify) {
         //获取某个合同段所有的电签完成的文件题名,取 id wbsid name,eVisaPdfUrl
 //        List<InformationQuery> informationQueryList = new ArrayList<>();
         informationQueryClient.getInformationByContractId1(contractId);
-        List<InformationQuery> informationQueryList = informationQueryClient.getInformationByContractId(contractId);
+        List<InformationQuery> informationQueryList = informationQueryClient.getInformationByContractId(contractId,classify);
         return informationQueryList;
 
         //互殴去
     }
 
-    public List<ArchiveFile>  getArchiveFiles(Long contractId) {
+    public List<ArchiveFile>  getArchiveFiles(Long contractId,Integer classify) {
 //        List<ArchiveFile> archiveFiles = new ArrayList<>();
-       List<ArchiveFile> archiveFiles = archiveFileClient.getListByContractId(contractId);
+       List<ArchiveFile> archiveFiles = archiveFileClient.getListByContractId(contractId,classify);
         return archiveFiles;
     }
 
-    public List<ArchiveTreeContract>  getArchiveTreeContractsWbs(Long contractId,Long attachId) {
+    public List<ArchiveTreeContract>  getArchiveTreeContractsWbs(Long contractId,Long attachId,Integer classify) {
 
         List<ArchiveTreeContract> archiveTreeContracts = 	archiveTreeContractMapper.selectList(Wrappers.<ArchiveTreeContract>query().lambda()
                 .eq(ArchiveTreeContract::getContractId, contractId)
                 .eq(ArchiveTreeContract::getExtAttachId, attachId)
+                .eq(ArchiveTreeContract::getClassify, classify)
                 .eq(ArchiveTreeContract::getExtType, 1));
         return archiveTreeContracts;
 
@@ -628,7 +629,7 @@ public class ArchiveTreeContractSyncImpl {
         }
     }
 
-    public ArchiveFile getArchiveFile(InformationQuery query,Long nodeId,Long keyId,ContractInfo contractIndfo) {
+    public ArchiveFile getArchiveFile(InformationQuery query,Long nodeId,Long keyId,ContractInfo contractIndfo,Integer classify) {
         ArchiveFile archiveFile = new ArchiveFile();
         archiveFile.setNodeId(nodeId.toString());
         archiveFile.setNodeExtId(keyId);
@@ -655,6 +656,8 @@ public class ArchiveTreeContractSyncImpl {
         archiveFile.setFileSize(query.getEVisaPdfSize());
         archiveFile.setFilePage(query.getEVisaPdfPage());
 
+        archiveFile.setClassify(classify);
+
         //
         archiveFile.setEVisaFile(query.getEVisaPdfUrl());
         archiveFile.setPdfFileUrl(query.getEVisaPdfUrl());