【增加改方按钮抬起验证】
This commit is contained in:
parent
dc68b2daeb
commit
91ad315825
@ -73,6 +73,26 @@ public class StationDirectionService {
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* 改方按钮抬起验证
|
||||
*/
|
||||
private final ButtonValidInterface turnDirectionPressUpValid = (simulation, stationDirection) -> {
|
||||
// 原接车站无发车进路锁闭
|
||||
boolean isDeliverConflict = stationDirection.getDeliverRouteList().stream().anyMatch(Route::isLock);
|
||||
if (isDeliverConflict) {
|
||||
throw new SimulationException(SimulationExceptionType.Operation_Cannot_handed, "操作异常:存在发车进路");
|
||||
}
|
||||
// 原发车站无发车进路锁闭
|
||||
StationDirection relativeDirection = getRelativeStationDirection(simulation, stationDirection);
|
||||
boolean isReceiverConflict = relativeDirection != null;
|
||||
if (isReceiverConflict) {
|
||||
isReceiverConflict = relativeDirection.getReceiveRouteList().stream().anyMatch(Route::isLock);
|
||||
}
|
||||
if (isReceiverConflict) {
|
||||
throw new SimulationException(SimulationExceptionType.Operation_Cannot_handed, "操作异常:相对方向存在接车进路");
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* 总辅助校验
|
||||
*/
|
||||
@ -311,6 +331,8 @@ public class StationDirectionService {
|
||||
this.operationButtonValidMap = new HashMap<>();
|
||||
// 改方按下验证函数
|
||||
this.operationButtonValidMap.put(Operation.Type.ASSIST_PRESS_DOWN_TURN_DIRECTION, this.turnDirectionPressDownValid);
|
||||
// 改方抬起验证函数
|
||||
this.operationButtonValidMap.put(Operation.Type.ASSIST_PRESS_UP_TURN_DIRECTION, this.turnDirectionPressUpValid);
|
||||
// 总辅助按下验证函数
|
||||
this.operationButtonValidMap.put(Operation.Type.ASSIST_PRESS_MAIN_ASSIST, this.turnAssistValid);
|
||||
// 接辅助按下验证函数
|
||||
|
Loading…
Reference in New Issue
Block a user