Commit 9e5213a0 authored by duanruiming's avatar duanruiming

[update] 周期倒计时优化

parent e819e32e
...@@ -151,6 +151,10 @@ public class HkLightsStatusServiceImpl implements HkLightsStatusService { ...@@ -151,6 +151,10 @@ public class HkLightsStatusServiceImpl implements HkLightsStatusService {
if (2 != vehicleStatus) { // 2红灯 if (2 != vehicleStatus) { // 2红灯
infoVo.setPhaseId(String.valueOf(phaseNo)); infoVo.setPhaseId(String.valueOf(phaseNo));
} }
Integer runTime = phaseInfoPO.getRunTime();
if (!Objects.equals(runTime, 0) && runTime <= phaseLength) {
infoVo.setCyclePhaseCountDown(phaseLength - runTime);
}
} }
} }
infoVo.setPhaseMap(phaseMap); infoVo.setPhaseMap(phaseMap);
......
...@@ -70,18 +70,18 @@ public class SignalStatusTask { ...@@ -70,18 +70,18 @@ public class SignalStatusTask {
RealTimeDataWebSocket webSocket = entry.getValue(); RealTimeDataWebSocket webSocket = entry.getValue();
if (!CollectionUtils.isEmpty(lightsStatusVOS)) { if (!CollectionUtils.isEmpty(lightsStatusVOS)) {
for (LightsStatusVO lightsStatusVO : lightsStatusVOS) { for (LightsStatusVO lightsStatusVO : lightsStatusVOS) {
if (Objects.equals(lightsStatusVO.getCrossId(), crossId)) { if (Objects.equals(lightsStatusVO.getCrossId(), crossIdStr.split(",")[0])) {
Integer coutTime = 0; Integer coutTime = 0;
if (Arrays.asList(2, 3, 4, 9).contains(Integer.valueOf(lightsStatusVO.getRunMode()))) { if (Arrays.asList(2, 3, 4, 9).contains(Integer.valueOf(lightsStatusVO.getRunMode()))) {
if (runModeTimeMap.isEmpty() || Objects.isNull(runModeTimeMap.get(crossId))) { if (runModeTimeMap.isEmpty() || Objects.isNull(runModeTimeMap.get(crossId))) {
runModeTimeMap.put(crossId, coutTime); runModeTimeMap.put(crossIdStr, coutTime);
} else { } else {
Integer countTimeCahce = runModeTimeMap.get(crossId); Integer countTimeCahce = runModeTimeMap.get(crossId);
runModeTimeMap.put(crossId, ++countTimeCahce); runModeTimeMap.put(crossIdStr, ++countTimeCahce);
} }
lightsStatusVO.setCycleCountDown(runModeTimeMap.get(crossId)); lightsStatusVO.setCycleCountDown(runModeTimeMap.get(crossIdStr));
} else if (StringUtils.equals(lightsStatusVO.getRunMode(), "11")){ } else if (StringUtils.equals(lightsStatusVO.getRunMode(), "11")){
runModeTimeMap.remove(crossId); runModeTimeMap.remove(crossIdStr);
} }
try { try {
webSocket.sendInfo(JSONObject.toJSONString(lightsStatusVOS, SerializerFeature.WriteMapNullValue), crossIdStr); webSocket.sendInfo(JSONObject.toJSONString(lightsStatusVOS, SerializerFeature.WriteMapNullValue), crossIdStr);
......
...@@ -38,6 +38,8 @@ public class LightsStatusVO extends BaseCrossInfo { ...@@ -38,6 +38,8 @@ public class LightsStatusVO extends BaseCrossInfo {
//相位周期剩余时长 //相位周期剩余时长
@ApiModelProperty(value = "相位周期剩余时长") @ApiModelProperty(value = "相位周期剩余时长")
private Integer cycleCountDown; private Integer cycleCountDown;
@ApiModelProperty(value = "相位周期剩余时长")
private Integer cyclePhaseCountDown;
//相位周期时长 //相位周期时长
@ApiModelProperty(value = "相位周期时长") @ApiModelProperty(value = "相位周期时长")
private Integer cycleLen; private Integer cycleLen;
......
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