修改宁波一延续保护异常触发的问题
This commit is contained in:
parent
ecb29dbcc2
commit
aace990217
@ -30,7 +30,8 @@ public class CiService {
|
||||
public void checkAndTrySettingOverlap(Simulation simulation, RouteOverlap overlap) {
|
||||
if (overlap != null && !overlap.isSetting() && !overlap.isLock() &&
|
||||
!overlap.isForbidden()) {
|
||||
if (overlap.getSection().isRouteLock()) {
|
||||
//添加后半条件为解决宁波一S011003信号机延续保护可能在反向进路S011007-S011001办理时触发的问题
|
||||
if (overlap.getSection().isRouteLock() && overlap.isRight() == overlap.getSection().isLockRight()) {
|
||||
SectionPath sectionPath = overlap.selectPath();
|
||||
for (SwitchElement switchElement : sectionPath.getSwitchList()) {
|
||||
Switch aSwitch = switchElement.getASwitch();
|
||||
@ -51,6 +52,11 @@ public class CiService {
|
||||
}
|
||||
}
|
||||
}
|
||||
// 如果延续保护区段被占用,则不触发(为解决宁波一列车停站结束后离开站台轨导致延续保护重新办理的问题)
|
||||
if (sectionPath.getSectionList().stream().anyMatch(Section::isOccupied)) {
|
||||
log.debug("延续保护区段占用,不能触发");
|
||||
return;
|
||||
}
|
||||
overlap.startSetting(simulation.getSystemTime());
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user