diff --git a/adc-da-slrs/src/main/java/com/adc/da/mq/SendStandMQService.java b/adc-da-slrs/src/main/java/com/adc/da/mq/SendStandMQService.java index f8082445..9bcc232a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/mq/SendStandMQService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/mq/SendStandMQService.java @@ -80,7 +80,10 @@ public class SendStandMQService { } } String sarStandAttrEOStr = infoEO.getSarStandAttrEOStr(); - Map attrInfoMap = JSONObject.fromObject(sarStandAttrEOStr); + Map attrInfoMap = new TreeMap<>(); + if(StringUtils.isNotBlank(sarStandAttrEOStr)){ + attrInfoMap = JSONObject.fromObject(sarStandAttrEOStr); + } Map infoMap = infoEO.getAttrInfoMap(); Map infoEOMapItems = infoEO.getMapItems(); @@ -178,15 +181,25 @@ public class SendStandMQService { // 动态存储属性字段 for (String field : fieldInfoList) { - saveMap.put(field,attrInfoMap.getOrDefault(field,"")); - String fieldValue = ""; - if(infoMap.get(field) != null && StringUtils.isNotBlank(infoMap.get(field).toString())){ - Object json= new JSONTokener(infoMap.get(field).toString()).nextValue(); - if(!json.toString().equals("null")){ - fieldValue = infoMap.get(field).toString(); + String fieldValue = ""; + try { + saveMap.put(field,attrInfoMap.getOrDefault(field,"")); + if(infoMap.get(field) != null && StringUtils.isNotBlank(infoMap.get(field).toString())){ + Object json= new JSONTokener(infoMap.get(field).toString()).nextValue(); + if(json instanceof org.json.JSONArray){ + fieldValue = String.join(",", com.alibaba.fastjson.JSONObject.parseArray(standMap.get(field).toString(),String.class)); + }else { + if(!("null").equals(json)){ + fieldValue = standMap.get(field).toString(); + } + } } + saveMap.put(field+"Name",fieldValue); + }catch (Exception e){ + logger.info("国内外标准 消息队列: "+addOrUpdate+", 标准ID:"+infoEO.getId()+",问题字段:"+field); + saveMap.put(field+"Name",fieldValue); } - saveMap.put(field+"Name",fieldValue); + } if(infoEOMapItems != null && !infoEOMapItems.isEmpty()){ diff --git a/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java b/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java index 92863c62..506cbb55 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/search/server/ResetSearchCenterService.java @@ -33,7 +33,6 @@ import com.adc.da.utils.util.FieldConvertUtil; import com.adc.da.utils.util.InitStandAttrUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.google.gson.JsonObject; import org.apache.commons.lang3.StringUtils; import org.elasticsearch.client.transport.TransportClient; import org.json.JSONTokener;