Quellcode durchsuchen

公式相关 G10 bug

yangyj vor 2 Jahren
Ursprung
Commit
6736fe4a35

+ 9 - 6
blade-service/blade-manager/src/main/java/org/springblade/manager/formula/impl/FormulaMileage.java

@@ -53,13 +53,15 @@ public class FormulaMileage implements FormulaStrategy {
                 List<String> cp =cur.getFormula().getRelyList();
                 Map<String,FormData> map = new LinkedHashMap<>();
                 List<FormData> listFd = new ArrayList<>();
-                fds.forEach(e->{
-                    if(cp.contains(e.getCode())){
-                        map.put(e.getCode(),e);
-                        listFd.add(e);
-                    }
+                cp.forEach(e->{
+                    fds.forEach(k->{
+                        if(e.equals(k.getCode())){
+                            map.put(k.getCode(),k);
+                            listFd.add(k);
+                        }
+                    });
                 });
-                if(listFd.size()<9){
+                if(listFd.size()<keys.size()){
                     return;
                 }
                 /*测点名称*/
@@ -98,6 +100,7 @@ public class FormulaMileage implements FormulaStrategy {
                     /*设计ds*/
                     listFd.get(8).getValues().add(new ElementData(index,groupId,ds));
                 }
+                listFd.forEach(e->e.setUpdate(1));
             }
         }
         this.cur.setFinished(Boolean.TRUE);

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

@@ -177,8 +177,8 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
         /*先处理聚合类的方法*/
         /*每次执行都会构造一个只有依赖的的集合*/
         for(FormData fd:this.env.formDataList){
-            Formula formula= fd.getFormula();
-            if(formula!=null){
+            if(fd.verify()){
+                Formula formula =fd.getFormula();
                 String f=formula.getFormula();
                 List<ElementData> cp = new ArrayList<>(fd.getValues());
                 if(Func.isNotBlank(f)){