Browse Source

bug修复

master
maojian 3 days ago
parent
commit
feea172934
  1. 5
      src/main/java/com/bfd/assemble/entity/Constants.java
  2. 30
      src/main/java/com/bfd/assemble/utils/DataUtil.java

5
src/main/java/com/bfd/assemble/entity/Constants.java

@ -144,4 +144,9 @@ public class Constants {
public static final String SEARCHFIELDS = "searchFields";
public static final String ISLAST = "isLast";
public static final String TRACE = "trace";
/**
* 不需要DataUtil解析的Key
*/
public static final String NOT_KEY = ":$";
}

30
src/main/java/com/bfd/assemble/utils/DataUtil.java

@ -19,17 +19,19 @@ import com.bfd.assemble.entity.Constants;
@Slf4j
public class DataUtil {
/**
*
* @param key 传入的key
* @param key 传入的key
* @param dataMap 数据map
* @return 根据传入的参数进行判断解析返回正确的dataValue
*/
public static Object getValue(String key, Map dataMap) {
try {
//公式为空直接就返回
if(key.equals(Constants.EMPTY)){
return Constants.EMPTY;
}
try {
//公式为空直接就返回
if (key.equals(Constants.EMPTY)) {
return Constants.EMPTY;
}
if (!key.contains(Constants.NOT_KEY)) {
return key;
}
Object dataValue;
String isJson = "#json#";
if (key.contains(isJson)) {
@ -51,13 +53,13 @@ public class DataUtil {
String jsonPath = keySplit[1];
String dataJson = (String) dataMap.get(keySplit[0]);
JSONObject dataJsonObject = JSON.parseObject(dataJson);
dataValue = JSONPath.eval(dataJsonObject, jsonPath);
dataValue = JSONPath.eval(dataJsonObject, jsonPath);
return dataValue;
} catch (Exception e) {
// TODO: handle exception
log.error("jsonpath公式取值异常,",e);
return null;
}
} catch (Exception e) {
// TODO: handle exception
log.error("jsonpath公式取值异常,", e);
return null;
}
}
}
Loading…
Cancel
Save