Browse Source

同步-判断更新表单时各个类型都能单独更新,公式查询之前做非空判断

LHB 2 tháng trước cách đây
mục cha
commit
3046e64796

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

@@ -2,6 +2,7 @@ package org.springblade.manager.service.impl;
 
 import cn.hutool.core.date.DateTime;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import org.springblade.core.tool.utils.CollectionUtil;
 import org.springblade.manager.entity.*;
 import org.springblade.manager.mapper.TextdictInfoMapper;
 import org.springblade.manager.mapper.WbsTreeContractMapper;
@@ -99,6 +100,9 @@ public class WbsSynchronousEViSaServiceImpl {
     public void saveFormula(WbsTreeSynchronousRecord wbsTreeSynchronousRecord, List<WbsTreePrivate> list){
         Map<Long, List<WbsTreePrivate>> collect = list.stream().collect(Collectors.groupingBy(WbsTreePrivate::getParentId));
         Set<Long> ids = collect.keySet();
+        if(CollectionUtil.isEmpty(ids)){
+            return;
+        }
         List<ElementFormulaMapping> elementFormulaMappings = elementFormulaMappingService.list(Wrappers.<ElementFormulaMapping>lambdaQuery()
                 .eq(ElementFormulaMapping::getProjectId, wbsTreeSynchronousRecord.getTemplateId())
                 .in(ElementFormulaMapping::getNodeId, ids));

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

@@ -393,7 +393,8 @@ public class WbsSynchronousServiceImpl {
                     //更新只跟新表单
                     for (WbsTreePrivate editPrivateNode : wbsTreePrivates) {
                         // 判断模板表与项目表 html是否一致
-                        if (ObjectUtils.equals(templateNode.getTreePId(), editPrivateNode.getTreePId()) && templateNode.getType() == 2) {
+                        if (ObjectUtils.equals(templateNode.getTreePId(), editPrivateNode.getTreePId()) &&
+                                (templateNode.getType() == 2 || templateNode.getType() == 3 || templateNode.getType() == 5 || templateNode.getType() == 7)) {
                             //清表
                             if (collect.contains(2)) {
                                 //绑定清表
@@ -480,7 +481,8 @@ public class WbsSynchronousServiceImpl {
                             //公式配置
                         case 5:
                             editData.addAll(addPrivateNodes);
-                            wbsSynchronousEViSaService.saveFormula(wbsTreeSynchronousRecord,editData);
+                            editData.addAll(editPrivateNodes);
+                            wbsSynchronousEViSaService.saveFormula(wbsTreeSynchronousRecord, editData);
                             //排序
                         case 7:
                             //元素配置
@@ -1293,6 +1295,4 @@ public class WbsSynchronousServiceImpl {
     }
 
 
-
-
 }