Commit 7c78fa83 authored by duanruiming's avatar duanruiming

[update] 海信灯态优化

parent 2f2b3857
...@@ -101,12 +101,10 @@ public class SignalStatusTask { ...@@ -101,12 +101,10 @@ public class SignalStatusTask {
lightsStatusVOS = hkLightsStatusService.getHkLightsStatus(crossId); lightsStatusVOS = hkLightsStatusService.getHkLightsStatus(crossId);
} else if (StringUtils.equals(BasicEnum.ManufacturerEnum.DT.getCode(), manufacturerInfoPO.getCode())) { } else if (StringUtils.equals(BasicEnum.ManufacturerEnum.DT.getCode(), manufacturerInfoPO.getCode())) {
JsonViewObject jsonViewObject = utcDTFeignClients.lightStatus(crossId); JsonViewObject jsonViewObject = utcDTFeignClients.lightStatus(crossId);
lightsStatusVOS = mapper.convertValue(jsonViewObject.getContent(), new TypeReference<List<LightsStatusVO>>() { lightsStatusVOS = mapper.convertValue(jsonViewObject.getContent(), new TypeReference<List<LightsStatusVO>>() {});
});
} else if (StringUtils.endsWithIgnoreCase(BasicEnum.ManufacturerEnum.HISENSE.getCode(), manufacturerInfoPO.getCode())) { } else if (StringUtils.endsWithIgnoreCase(BasicEnum.ManufacturerEnum.HISENSE.getCode(), manufacturerInfoPO.getCode())) {
JsonViewObject jsonViewObject = utcHisenseFeignClients.lightStatus(crossId); JsonViewObject jsonViewObject = utcHisenseFeignClients.lightStatus(crossId);
lightsStatusVOS = mapper.convertValue(jsonViewObject.getContent(), new TypeReference<List<LightsStatusVO>>() { lightsStatusVOS = mapper.convertValue(jsonViewObject.getContent(), new TypeReference<List<LightsStatusVO>>() {});
});
} else if (StringUtils.endsWithIgnoreCase("STATIC", manufacturerInfoPO.getCode())) { } else if (StringUtils.endsWithIgnoreCase("STATIC", manufacturerInfoPO.getCode())) {
LightsStatusVO lightsStatusVO = SignalStatus4StaticSchemeTask.currentCrossLightStatusCache.get(crossId); LightsStatusVO lightsStatusVO = SignalStatus4StaticSchemeTask.currentCrossLightStatusCache.get(crossId);
if (Objects.nonNull(lightsStatusVO)) { if (Objects.nonNull(lightsStatusVO)) {
...@@ -165,7 +163,13 @@ public class SignalStatusTask { ...@@ -165,7 +163,13 @@ public class SignalStatusTask {
Map<Integer, String> turnColorMap = (Map<Integer, String>) groupEntry.getValue(); Map<Integer, String> turnColorMap = (Map<Integer, String>) groupEntry.getValue();
List<LightsStatusVO2.TurnInfo> turnList = new ArrayList<>(); List<LightsStatusVO2.TurnInfo> turnList = new ArrayList<>();
for (Map.Entry<Integer, String> turnEntry : turnColorMap.entrySet()) { for (Map.Entry<Integer, String> turnEntry : turnColorMap.entrySet()) {
Integer turn = turnEntry.getKey(); Integer turn = null;
if (turnEntry.getKey() instanceof Integer) {
turn = (Integer) turnEntry.getKey();
} else {
Object object = turnEntry.getKey();
turn = Integer.parseInt(String.valueOf(object));
}
String color = turnEntry.getValue(); String color = turnEntry.getValue();
LightsStatusVO2.TurnInfo turnInfo = new LightsStatusVO2.TurnInfo(); LightsStatusVO2.TurnInfo turnInfo = new LightsStatusVO2.TurnInfo();
turnInfo.setTurn(String.valueOf(turn)); turnInfo.setTurn(String.valueOf(turn));
...@@ -175,15 +179,20 @@ public class SignalStatusTask { ...@@ -175,15 +179,20 @@ public class SignalStatusTask {
turnInfo.setColor(color); turnInfo.setColor(color);
} }
String key = dir.concat(Constants.SEPARATOR_UNDER_LINE).concat(String.valueOf(turn)); String key = dir.concat(Constants.SEPARATOR_UNDER_LINE).concat(String.valueOf(turn));
if (phaseMap.get(key) instanceof Map) { if (phaseMap.get(key) instanceof Map) {
Map<Integer, Integer> turnMap = (Map<Integer, Integer>) phaseMap.get(key); Map<Integer, Integer> turnMap = (Map<Integer, Integer>) phaseMap.get(key);
if (Objects.nonNull(turnMap) && !turnMap.isEmpty()) { if (Objects.nonNull(turnMap) && !turnMap.isEmpty()) {
Integer countDown = turnMap.get(turn); Integer countDown = turnMap.get(turn);
turnInfo.setCountDown(countDown); turnInfo.setCountDown(countDown);
} }
} else { } else {
Integer countDown = (Integer) phaseMap.get(key); Integer countDown = null;
log.error("当前方向转向:{},倒计时:{}", key, countDown); if (phaseMap.get(dir) instanceof Map) {
Map<String, Integer> turnMap = (Map<String, Integer>) phaseMap.get(dir);
countDown = turnMap.get(String.valueOf(turn));
} else {
countDown = (Integer) phaseMap.get(key);
}
turnInfo.setCountDown(countDown); turnInfo.setCountDown(countDown);
} }
turnList.add(turnInfo); turnList.add(turnInfo);
......
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