Browse Source

后管-同步
1、从后管同步 新增表单逻辑调整

LHB 1 tuần trước cách đây
mục cha
commit
a859fc2363

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

@@ -521,7 +521,6 @@ public class WbsSynchronousServiceImpl {
                         case 3:
                             //公式配置
                         case 5:
-                            editData.addAll(addPrivateNodes);
                             editData.addAll(editPrivateNodes);
                             wbsSynchronousEViSaService.saveFormula(wbsTreeSynchronousRecord, editData);
                             //现在电签使用的是模糊匹配 如果电签匹配方式改为精确匹配 则需要使用该功能
@@ -1021,10 +1020,9 @@ public class WbsSynchronousServiceImpl {
             Set<Long> longs = collect.keySet();
 
             List<Long> pIds = new ArrayList<>(longs);
-            List<WbsTreePrivate> saveData = new ArrayList<>();
             //按最小节点批量新增
             List<List<Long>> partition = Lists.partition(pIds, 100);
-
+            int sum = 0;
             for (List<Long> data : partition) {
                 for (Long pId : data) {
                     List<WbsTreePrivate> list = collect.get(pId);
@@ -1051,10 +1049,8 @@ public class WbsSynchronousServiceImpl {
                         }
                     }
 
-                    boolean b = saveData.addAll(list);
-
                     //单个批次一个事务,只会回滚当前批次数据
-                    Integer i = wbsTreePrivateMapper.insertBatchSomeColumn(saveData);
+                    Integer i = wbsTreePrivateMapper.insertBatchSomeColumn(list);
                     //如果失败  -- - - - - 继续执行   或者把当前节点的p_key_id 记录到某个地方 方便后续处理
                     if (i == 0) {
                         List<Long> collect1 = addData.stream().map(WbsTreePrivate::getPKeyId).collect(Collectors.toList());
@@ -1077,6 +1073,10 @@ public class WbsSynchronousServiceImpl {
                                 wbsTreePrivateMapper.updateSortBatchByPKeyId(resourceData);
                             }
                         }
+                        synchronousRecordMapper.update(null, Wrappers.<WbsTreeSynchronousRecord>lambdaUpdate()
+                                .set(WbsTreeSynchronousRecord::getNodeNumEnd, sum++)
+                                .set(WbsTreeSynchronousRecord::getUpdateTime, DateTime.now())
+                                .eq(WbsTreeSynchronousRecord::getId, wbsTreeSynchronousRecord.getId()));
                     }
                 }
             }