Commit 7541bfe3 authored by duanruiming's avatar duanruiming

[update] 统一使用jackson

parent d6753799
package net.wanji.utc.task;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.extern.slf4j.Slf4j;
import net.wanji.common.framework.rest.JsonViewObject;
......@@ -75,6 +73,7 @@ public class SignalStatusTask {
if (!evenWarnWebSocketMap.isEmpty()) {
for (Map.Entry<String, RealTimeDataWebSocket> entry : evenWarnWebSocketMap.entrySet()) {
commonThreadPoolExecutor.execute(() -> {
ObjectMapper mapper = new ObjectMapper();
String crossId = null;
String crossIdStr = entry.getKey();
if (StringUtils.isNotBlank(crossIdStr)) {
......@@ -90,14 +89,11 @@ public class SignalStatusTask {
lightsStatusVOS = hkLightsStatusService.getHkLightsStatus(crossId);
} else if (StringUtils.equals(BasicEnum.ManufacturerEnum.DT.getCode(), manufacturerInfoPO.getCode())){
JsonViewObject jsonViewObject = utcDTFeignClients.lightStatus(crossId);
lightsStatusVOS = JSON.parseObject((String) jsonViewObject.getContent(), new com.alibaba.fastjson.TypeReference<List<LightsStatusVO>>() {});
lightsStatusVOS = mapper.convertValue(jsonViewObject.getContent(), new TypeReference<List<LightsStatusVO>>() {});
} else if (StringUtils.equals(BasicEnum.ManufacturerEnum.HISENSE.getCode(), manufacturerInfoPO.getCode())){
JsonViewObject jsonViewObject = utcHisenseFeignClients.lightStatus(crossId);
ObjectMapper mapper = new ObjectMapper();
lightsStatusVOS = mapper.convertValue(jsonViewObject.getContent(),
new com.fasterxml.jackson.core.type.TypeReference<List<LightsStatusVO>>() {
});
lightsStatusVOS = mapper.convertValue(jsonViewObject.getContent(), new TypeReference<List<LightsStatusVO>>() {});
}
long end = System.currentTimeMillis();
log.info("当前路口编号:{},海康返回灯态时间:{}ms", crossId, (end - start));
......@@ -122,7 +118,7 @@ public class SignalStatusTask {
Constants.controlModeMap.put(crossId, lightsStatusVO.getRunMode());
try {
log.error("{}路口倒计时:{}", crossId, lightsStatusVOS.get(0).getCycleCountDown());
webSocket.sendInfo(JSONObject.toJSONString(lightsStatusVOS, SerializerFeature.WriteMapNullValue), crossIdStr);
webSocket.sendInfo(mapper.writeValueAsString(lightsStatusVOS), crossIdStr);
} catch (Exception e) {
log.error("RealTimeDataWebSocket发送异常,异常信息:", e);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment