yangyj hace 2 años
padre
commit
533224176d

+ 2 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/dto/FormData.java

@@ -60,6 +60,8 @@ public class FormData {
     private List<String> tableIds;
 
     private String position;
+    /**是否更新数据*/
+    private Integer update=0;
 
     public static final String CODE_REG="[^:]+:[^:]+";
 

+ 3 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/WbsParamController.java

@@ -55,11 +55,13 @@ public class WbsParamController {
         if(wp.getId()==null){
             WbsParam e= new WbsParam();
             BeanUtils.copyProperties(wp,e);
+            e.setIsDeleted(0);
             return R.status(this.service.save(e));
         }else{
             WbsParam old = this.service.getById(wp.getId());
             if(old!=null){
                 BeanUtils.copyProperties(wp,old);
+                old.setIsDeleted(0);
                 return R.status(service.updateById(old));
             }
             return R.status(false);
@@ -85,6 +87,7 @@ public class WbsParamController {
                List<WbsParam> ul = new ArrayList<>();
                for(WbsParamBean b:updateList){
                    WbsParam old = this.service.getById(b.getId());
+                   old.setIsDeleted(0);
                    BeanUtils.copyProperties(b,old);
                    ul.add(old);
                }

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

@@ -106,6 +106,10 @@ public class TableElementConverter implements ITableElementConverter {
         LinkedHashMap<String,List<KeyMapper>> tabs = keyMappers.stream().collect(Collectors.groupingBy(KeyMapper::getCode,LinkedHashMap::new,Collectors.toList()));
         Map<String,List<TableInfo>> tableMap = new HashMap<>(tabs.size()*2);
         for (FormData fd : this.fds) {
+            if(fd.getUpdate().equals(0)){
+                continue;
+            }
+            /*暂时不处理没有公式配置的数据*/
             /*元素所有的数据内容*/
             List<ElementData> values = fd.getValues();
             List<TableInfo> tables;
@@ -129,8 +133,7 @@ public class TableElementConverter implements ITableElementConverter {
             });
 
         }
-        /*code前缀相同的是同一张表的元素*/
-        Map<String,List<FormData>> fdsMap = this.fds.stream().collect(Collectors.groupingBy(FormData::getTableName));
+
     }
 
     /**格式化回写内容*/

+ 5 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/FormulaServiceImpl.java

@@ -166,6 +166,7 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
             Formula formula= fd.getFormula();
             if(formula!=null){
                 String f=formula.getFormula();
+                List<ElementData> cp = new ArrayList<>(fd.getValues());
                 if(Func.isNotBlank(f)){
                     Map<String, Object> currentMap = new HashMap<>(this.env.constantMap);
                     List<String>  relyList = fd.getFormula().getRelyList();
@@ -199,6 +200,10 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
                         fd.getValues().add(new ElementData(0,0,Expression.parse(formula.getFormula()).calculate(currentMap)));
                     }
                 }
+                if(fd.getValues().size()>0&&cp.size()!=fd.getValues().size()){
+                    /*往后还要判断是否更新*/
+                    fd.setUpdate(1);
+                }
             }
         }
     }