瀏覽代碼

同步-同步合同段-添加历史html调整

LHB 3 周之前
父節點
當前提交
37fbb4ce0f

+ 0 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsSynchronousEViSaServiceImpl.java

@@ -229,7 +229,6 @@ public class WbsSynchronousEViSaServiceImpl {
 
                     WbsTreeContractOldHtml oldHtml = new WbsTreeContractOldHtml();
                     oldHtml.setId(SnowFlakeUtil.getId());
-                    oldHtml.setCreateUser(getUser().getUserId());
                     String htmlUrl = wbsTreeContract.getHtmlUrl();
                     // 获取或下载文件
                     Path sourcePath = FileUtils.getOrDownloadFile(htmlUrl);

+ 11 - 32
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsSynchronousServiceImpl.java

@@ -644,7 +644,9 @@ public class WbsSynchronousServiceImpl {
                             .eq(WbsTreeContract::getContractId, contractInfo.getId())
                             .eq(WbsTreeContract::getIsDeleted, 0)
                             .apply("FIND_IN_SET({0},ancestors_p_id)", wbsTreeContract.getPKeyId());
-                    wrapperContract.apply("FIND_IN_SET({0},ancestors_p_id)", wbsTreeContract.getPKeyId());
+                    if(CollectionUtil.isNotEmpty(formList)){
+                        wrapperContract.in(WbsTreeContract::getIsTypePrivatePid, formList);
+                    }
 
                     //当前合同的子节点数据
                     List<WbsTreeContract> wbsTreeContracts = wbsTreeContractMapper.selectList(wrapperContract);
@@ -678,20 +680,12 @@ public class WbsSynchronousServiceImpl {
                     //需要新增的表单
                     List<WbsTreePrivate> addPrivateNodes = wbsTreePrivates.stream().filter(f -> !typePrivateIds.contains(f.getPKeyId())).collect(Collectors.toList());
 
-                    //如果没有选中 则默认同步所有
-                    if (CollectionUtil.isNotEmpty(formList)) {
-                        //二次筛选  只保留任务选中的表单   但可能新增的数据包含新节点
-                        addPrivateNodes = addPrivateNodes.stream().filter(f -> formList.contains(f.getPKeyId())).collect(Collectors.toList());
-                    }
 
                     //筛选出需要更新的节点  同时做数据隔离
                     List<WbsTreeContract> editContractNodes = new ArrayList<>();
                     for (WbsTreePrivate templateNode : wbsTreePrivates) {
                         //更新只跟新表单
                         for (WbsTreeContract editContractNode : wbsTreeContracts) {
-                            if (CollectionUtil.isNotEmpty(formList) && !formList.contains(editContractNode.getPKeyId())) {
-                                continue;
-                            }
 
 
                             // 判断模板表与项目表 html是否一致
@@ -724,7 +718,7 @@ public class WbsSynchronousServiceImpl {
                                                     if (i == 0) {
                                                         throw new ServiceException(editContractNode.getNodeName()  + "( " + wbsTreeContract.getPKeyId() + ")--表单未查到填报信息");
                                                     }
-                                                    if (contractRanges.contains(WbsSyncTypeEnum.ALREADY_FILLED_IN_NOT_REPORTED.code)) {
+                                                    if (contractRanges.contains(WbsSyncTypeEnum.ALREADY_FILLED_IN_NOT_REPORTED.code) && (submit == null || submit == 0)) {
                                                         //已填报-未上报 102
                                                         isSync = true;
                                                     } else {
@@ -778,26 +772,15 @@ public class WbsSynchronousServiceImpl {
                                     }
 
                                     //手动选中的表单 进行筛选
-                                    if (CollectionUtil.isNotEmpty(formList)) {
-                                        if (formList.contains(templateNode.getPKeyId())) {
-                                            if (collect.contains(2) || collect.contains(3) || collect.contains(4) || collect.contains(5) || collect.contains(6) || collect.contains(7)) {
-                                                if (isSync) {
-                                                    editContractNodes.add(editContractNode);
-                                                }
-
-                                            }
+                                    if (collect.contains(2) || collect.contains(3) || collect.contains(4) || collect.contains(5) || collect.contains(6) || collect.contains(7)) {
+                                        if (isSync) {
+                                            editContractNodes.add(editContractNode);
                                         }
-                                    } else {
-                                        if (collect.contains(2) || collect.contains(3) || collect.contains(4) || collect.contains(5) || collect.contains(6) || collect.contains(7)) {
-                                            if (isSync) {
-                                                editContractNodes.add(editContractNode);
-                                            }
-                                            //记录历史html
-                                            if (isOldHtml) {
-                                                oldHtml.add(editContractNode);
-                                            }
-
+                                        //记录历史html
+                                        if (isOldHtml) {
+                                            oldHtml.add(editContractNode);
                                         }
+
                                     }
                                     //找到了某个选中节点下与项目节点想同的节点了  提前结束循环,节省资源
                                     break;
@@ -805,10 +788,6 @@ public class WbsSynchronousServiceImpl {
                             }
                         }
                     }
-                    //修改数据二次筛选  只保留任务选中的表单   但可能新增的数据包含新节点
-                    if (CollectionUtil.isNotEmpty(formList)) {
-                        editContractNodes = editContractNodes.stream().filter(f -> formList.contains(f.getPKeyId())).collect(Collectors.toList());
-                    }
 
                     //合同段新增节点
                     List<WbsTreeContract> addContractNode = null;

+ 4 - 4
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreeSynchronousRecordServiceImpl.java

@@ -237,11 +237,11 @@ public class WbsTreeSynchronousRecordServiceImpl extends ServiceImpl<WbsTreeSync
      */
     @Scheduled(fixedDelay = 10000)
     public void syncInit() {
-        if(SystemUtils.isWindows()){
-            return;
-        }
+//        if(SystemUtils.isWindows()){
+//            return;
+//        }
         // 本地环境跳过执行(可添加日志输出)
-        if (!schedulerEnabled) return;
+//        if (!schedulerEnabled) return;
 
         List<WbsTreeSynchronousRecord> wbsTreeSynchronousRecords = baseMapper.selectList(new QueryWrapper<WbsTreeSynchronousRecord>().lambda()
                 .in(WbsTreeSynchronousRecord::getStatus, 0, 1)