浏览代码

质检公式执行前解析key201

lvy 2 月之前
父节点
当前提交
d2ba206214

+ 5 - 1
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/util/DataStructureFormatUtils.java

@@ -41,7 +41,11 @@ public class DataStructureFormatUtils {
         for (Map.Entry<String, Object> entry : map.entrySet()) {
             // 转义特殊字符以避免解析错误
             String key = escapeSpecialChars(entry.getKey());
-            String value = escapeSpecialChars(entry.getValue() + "");
+            Object obj = entry.getValue();
+            if (obj == null) {
+                continue;
+            }
+            String value = escapeSpecialChars(obj + "");
             sb.append(key).append(":").append(value).append("$$");
         }
         // 移除最后的分隔符

+ 8 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExcelTabServiceImpl.java

@@ -397,6 +397,7 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
                         List<Map<String, Object>> dataMap = this.jdbcTemplate.queryForList(selSql);
                         if (dataMap.size() > 0) {
                             dataMap.forEach(map -> {
+                                DataStructureFormatUtils.parseDataByKey(map);
                                 TableInfo e = new TableInfo();
                                 e.setPkeyId(map.get("p_key_id").toString());
                                 e.setDataMap(new LinkedHashMap<>());
@@ -1410,6 +1411,7 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
         dataMap2.remove("id");
         dataMap2.remove("group_id");
         dataMap2.remove("p_key_id");
+        String key201 = dataMap2.remove("key_201");
         String fields = dataMap2.keySet().stream().map(key -> "'" + key + "'").collect(Collectors.joining(","));
         Map<String, Integer> map = new HashMap<>();
         if (!fields.isEmpty()) {
@@ -1428,6 +1430,12 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
                 e.printStackTrace();
             }
         }
+        if (key201 != null) {
+            Map<String, String> map1 = DataStructureFormatUtils.parseDataByKey(key201);
+            if (!map1.isEmpty()) {
+                opsParamMap.putAll(map1);
+            }
+        }
         for (String key : dataMap2.keySet()) {
             String[] split = key.split("_");
             if (split.length > 1 && Integer.parseInt(split[1]) > 80) {