Commit dbf2b89a authored by duanruiming's avatar duanruiming

[update] 优化模拟灯态时间戳;优化接口调用灯态服务

parent e9ccaee7
......@@ -26,6 +26,7 @@ import net.wanji.utc.service.runninginfo.WanJiCommonRunningStatusService;
import net.wanji.utc.task.SignalStatus4StaticSchemeTask;
import net.wanji.utc.util.ListUtil;
import net.wanji.utc.util.RedisUtil;
import net.wanji.utc.util.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
......@@ -105,6 +106,9 @@ public class SignalStatusServiceImpl implements SignalStatusService {
if (Objects.equals(BasicEnum.ManufacturerEnum.HK.getCode(), manufacturerCode)) {
// 海康
lightsStatusVOList.addAll(hkLightsStatusService.getHkLightsStatus(crossId));
} else if (StringUtils.equals("STATIC", manufacturerCode)) {
LightsStatusVO lightsStatusVO = SignalStatus4StaticSchemeTask.currentCrossLightStatusCache.get(crossId);
lightsStatusVOList.add(lightsStatusVO);
} else {
// 默认万集
lightsStatusVOList.addAll(wanJiRunningStatusService.lightsStatus(Arrays.asList(crossId)));
......@@ -139,6 +143,15 @@ public class SignalStatusServiceImpl implements SignalStatusService {
// 海康
// 3.2.4灯态
lightsStatusVOList = hkLightsStatusService.getHkLightsStatus(baseCrossInfoList);
} else if (StringUtils.equals("STATIC", manufacturerEnum.getCode())) {
// 静态方案
Map<String, LightsStatusVO> currentCrossLightStatusCache = SignalStatus4StaticSchemeTask.currentCrossLightStatusCache;
if (!currentCrossLightStatusCache.isEmpty()) {
for (Map.Entry<String, LightsStatusVO> entry : currentCrossLightStatusCache.entrySet()) {
LightsStatusVO value = entry.getValue();
lightsStatusVOList.add(value);
}
}
} else {
// todo 其他厂商
List<String> crossIdList = baseCrossInfoList.stream().map(BaseCrossInfo::getCrossId).collect(Collectors.toList());
......
......@@ -69,6 +69,9 @@ public class SignalStatus4StaticSchemeTask {
// 红灯倒计时
//getRedCountDown(crossId, lightsStatusVO, schemeId);
getRedCountDownV2(crossId, lightsStatusVO, schemeId);
Date date = new Date();
String currentTimeStr = String.valueOf(date.getTime());
lightsStatusVO.setTimeStamp(currentTimeStr);
runningStateInfoCache.put(crossId, lightsStatusVO);
}
}
......
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