Pārlūkot izejas kodu

节点参数bug

yangyj 1 gadu atpakaļ
vecāks
revīzija
6da6646607

+ 2 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/formula/impl/TableElementConverter.java

@@ -102,6 +102,8 @@ public class TableElementConverter implements ITableElementConverter {
 
     /**是否使用新流程,默认关闭*/
     public  boolean isNew=false;
+    /**是否强制执行,刷数据的时候会用到*/
+    public boolean  force=false;
 
     public JdbcTemplate  jdbcTemplate;
 

+ 11 - 3
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/FormulaServiceImpl.java

@@ -796,9 +796,17 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
             List<FormData> simple = map.get(false);
             if (CollectionUtil.isNotEmpty(simple)) {
                 for(FormData fd:simple){
-                    if(fd.getCoordsList().size()==1&&fd.executable()&&fd.getFormula().getFormula().contains(WP)&&!fd.empty()){
-                        fd.setFinished(true);
-                        fd.setUpdate(1);
+                    if(!tec.force&&fd.executable()&&fd.getFormula().getFormula().contains(WP)){
+                        /*节点公式已经生成过就自动填充,无需再计算*/
+                       Optional<Object> op= fd.getValues().stream().map(ElementData::getValue).filter(Func::isNotEmpty).findAny();
+                       if(op.isPresent()) {
+                           for(ElementData ed:fd.getValues()){
+                               ed.setValue(op.get());
+                           }
+                           fd.getFormula().setOutm(1);
+                           fd.setFinished(true);
+                           fd.setUpdate(1);
+                       }
                     }
                 }
                 tec.formDataList.addAll(simple);