Commit 9e5213a0 authored by duanruiming's avatar duanruiming

[update] 周期倒计时优化

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