Browse Source

公式相关:表单公式背景色

yangyj 2 years ago
parent
commit
21cf622200

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

@@ -451,6 +451,7 @@ public class FormulaUtils {
             e.printStackTrace();
         }
     }
+
     public static Map<String, String> getElementCell(String uri){
         return getElementCell(uri,null);
     }

+ 9 - 3
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExcelTabServiceImpl.java

@@ -702,17 +702,23 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
                         .filter(e -> e.getFormulaId() != null)
                         .forEach(e -> {
                             String key = e.getField() + "__";
-                            processElements(doc.select("el-input[keyname^=" + key + "]"));
-                            processElements(doc.select("el-date-picker[keyname^=" + key + "]"));
+                            processElements(doc.select("table").first().select("[keyname^=" + key + "]"));
                         });
             }
         } catch (Exception e) {
             e.printStackTrace();
         }
     }
+    public  Element findParentTd(Element element) {
+        Element parent = element.parent();
+        while (parent != null && !parent.tagName().equalsIgnoreCase("td")) {
+            parent = parent.parent();
+        }
+        return parent;
+    }
 
     private void processElements(Elements elements) {
-        elements.forEach(element -> element.parent().attr("gscolor", "11"));
+        elements.stream().map(this::findParentTd).filter(Objects::nonNull).forEach(element -> element.attr("gscolor", "11"));
     }
 
     public void dataInfo(List<WbsTreeContract> collect, Map<Long, String> lastList, Map<String, List<WbsTreeContract>> Data) {