|
@@ -361,19 +361,33 @@ public class AnalysisServiceImpl implements AnalysisService {
|
|
Map.Entry<String, JsonNode> entry = it.next();
|
|
Map.Entry<String, JsonNode> entry = it.next();
|
|
// 匹配到属性名称,进行值的修改
|
|
// 匹配到属性名称,进行值的修改
|
|
if (entry.getKey().equalsIgnoreCase(propertyName)) {
|
|
if (entry.getKey().equalsIgnoreCase(propertyName)) {
|
|
- //判断当前节点有没有子节点 排除分析节点
|
|
|
|
- if(!entry.getValue().fields().hasNext() && !propertyName.equalsIgnoreCase(algorithmProperties.getConfigAnalysisProperties())){
|
|
|
|
- //数组属性得特殊处理
|
|
|
|
- if(algorithmProperties.getAnalysisArrayProperties().contains(propertyName)){
|
|
|
|
- ArrayNode arrayNode = mapper.createArrayNode();
|
|
|
|
- ((List<String>)newValue).stream().forEach(item-> arrayNode.add(item));
|
|
|
|
- ((ObjectNode) parentNode).set(propertyName,arrayNode);
|
|
|
|
- }else{
|
|
|
|
- ((ObjectNode) parentNode).put(propertyName, newValue.toString());
|
|
|
|
- }
|
|
|
|
- }else{
|
|
|
|
|
|
+ //分析类型及有子节点的处理
|
|
|
|
+ if(propertyName.equalsIgnoreCase(algorithmProperties.getConfigAnalysisProperties()) || entry.getValue().fields().hasNext()){
|
|
assignmentByPropertyName(entry.getValue(), propertyName, newValue,scada);
|
|
assignmentByPropertyName(entry.getValue(), propertyName, newValue,scada);
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
+ //数组属性得特殊处理
|
|
|
|
+ if(algorithmProperties.getAnalysisArrayProperties().contains(propertyName)){
|
|
|
|
+ ArrayNode arrayNode = mapper.createArrayNode();
|
|
|
|
+ ((List<String>)newValue).stream().forEach(item-> arrayNode.add(item));
|
|
|
|
+ ((ObjectNode) parentNode).set(propertyName,arrayNode);
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ //普通单节点
|
|
|
|
+ ((ObjectNode) parentNode).put(propertyName, newValue.toString());
|
|
|
|
+ //判断当前节点有没有子节点 排除分析节点
|
|
|
|
+// if(!entry.getValue().fields().hasNext() && !propertyName.equalsIgnoreCase(algorithmProperties.getConfigAnalysisProperties())){
|
|
|
|
+// //数组属性得特殊处理
|
|
|
|
+// if(algorithmProperties.getAnalysisArrayProperties().contains(propertyName)){
|
|
|
|
+// ArrayNode arrayNode = mapper.createArrayNode();
|
|
|
|
+// ((List<String>)newValue).stream().forEach(item-> arrayNode.add(item));
|
|
|
|
+// ((ObjectNode) parentNode).set(propertyName,arrayNode);
|
|
|
|
+// }else{
|
|
|
|
+// ((ObjectNode) parentNode).put(propertyName, newValue.toString());
|
|
|
|
+// }
|
|
|
|
+// }else{
|
|
|
|
+// assignmentByPropertyName(entry.getValue(), propertyName, newValue,scada);
|
|
|
|
+// }
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
// 递归搜索子节点
|
|
// 递归搜索子节点
|