Parcourir la source

公式-占位符
1、质量检验表如果为占位符忽略对应坐标

LHB il y a 1 semaine
Parent
commit
382b74c175

+ 10 - 0
blade-service/blade-manager/src/main/java/com/mixsmart/utils/FormulaUtils.java

@@ -301,6 +301,8 @@ public class FormulaUtils {
                 }
                 if(values.size()>fd.getValues().size()){
                     if(fd.getCoordsList().size()==1){
+                        //去掉所有占位符
+                        values=values.stream().filter(f -> !f.toString().contains("/!@#$%^")).collect(Collectors.toList());
                         /*元素只绑定了一个单元格的情况*/
                         if(values.stream().filter(CustomFunction::containsZH).anyMatch(e->e.toString().contains("\n"))){
                             fd.getValues().get(0).setValue(values.stream().filter(Objects::nonNull).map(Object::toString).collect(Collectors.joining()));
@@ -321,6 +323,10 @@ public class FormulaUtils {
                         }
                     }else{
                         for(int n=0;n<fd.getValues().size();n++){
+                            //跳过占位符对应的坐标
+                            if(values.get(n).toString().contains("/!@#$%^")){
+                                continue;
+                            }
                             fd.getValues().get(n).setValue(values.get(n));
                         }
                         List<Object> overList=values.stream().skip(fd.getValues().size()).collect(Collectors.toList());
@@ -339,6 +345,10 @@ public class FormulaUtils {
                                 if(st<overList.size()){
                                     v= overList.get(st);
                                 }
+                                //如果为展位符
+                                if(v.toString().contains("/!@#$%^")){
+                                    continue;
+                                }
                                 addList.add(new ElementData(indexBase+i,last.getGroupId(),v,coords.getX(),coords.getY()));
                             }
                         }