添加配置:对信号机封锁操作,是否影响信号显示

This commit is contained in:
xiazengbin 2022-07-27 10:36:16 +08:00
parent 266463eb4c
commit a7a047390d
5 changed files with 883 additions and 860 deletions

View File

@ -1,74 +1,74 @@
package club.joylink.rtss.exception;
import lombok.Getter;
@Getter
public enum BusinessExceptionAssertEnum implements BusinessExceptionAssert {
INVALID_LICENSE(90000, "invalid license"),
LICENSE_EXPIRED(90001, "license expired"),
LICENSE_LOCAL_SAVE_FAILED(90002, "license local save failed"),
LICENSE_LOCAL_LOAD_FAILED(90003, "license local load failed"),
LICENSE_DECRYPT_FAILED(90004, "license decrypt failed"),
LICENSE_NOT_EXIST(90005, "license not exist"),
LICENSE_FILE_NOT_EXIST(90006, "license file not exist"),
SYSTEM_EXCEPTION(10000, "system exception"),
TRAINING_ROOM_SIMULATION_NOT_EXIST(10001, "training room simulation not exist"),
SIMULATION_PERMISSION_ALREADY_GET(10002, "permission already get"),
INSUFFICIENT_PERMISSIONS(10003, "insufficient permissions"),
OPERATION_NOT_SUPPORTED(10004, "operation not supported"),
INVALID_OPERATION(10005, "invalid operation"),
TRAINING_ROOM_SIMULATION_LOAD_DEVICE_ERROR(10006, "training room simulation load device error"),
DATA_NOT_EXIST(10007, "data not exist"),
ARGUMENT_ILLEGAL(10008, "argument illegal"),
SIMULATION_PERMISSION_USE_UP(10009, "simulation permission use up"),
NAME_REPEAT(10010, "name repeat"),
QUESTION_RULE_NOT_EXIST(10011, "question rule not exist"),
DATA_ALREADY_EXIST(10012, "data already exist"),
SIMULATION_PERMISSION_NOT_EXIST(10013, "simulation permission not exist"),
SIMULATION_PERMISSION_NOT_AVAILABLE(10014, "simulation permission not available"),
UNSUPPORTED_FILE_FORMAT(10015, "unsupported file format"),
OPERATION_REPEAT(10016, "operation repeat"),
SIMULATION_EXCEPTION_FOR_SHOW(10017, ""), //错误信息用于展示给仿真用户
OPERATION_FAIL(10018, "操作失败"),
DATA_ERROR(11000, "data error"),
CI_GENERATE_ERROR(11001, "ci data generate error"),
MAP_PASSENGER_FLOW_DATA_ERROR(11002, "map passenger flow data error"),
DATA_UNIQUE_PROPERTY_REPEAT(11013, "data unique property repeat"),
DATA_INVALID(11004, "data invalid"),
DATA_BEEN_USED(11005, "data has been used"),
DATA_STATE_INCORRECT(11007, "data state incorrect"),
// 运行图工具
BEYOND_RECEPTION(101, "beyond station reception"),
// 仿真
SIMULATION_NOT_EXIST(30001, "simulation not exist"),
SIMULATION_OPERATION_FAILED(30002, "simulation operation failed"),
//
LOGIN_INFO_ERROR(40003, "login info error"),
LOGIN_EXPIRED(40004, "login expired"),
NOT_LOGIN(40005, "not login"),
WECHAT_CODE_EXPIRED(40029, "wechat code expired"),
INVALID_CLIENT(40031, "invalid client"),
INCORRECT_VERIFICATION_CODE(40051, "incorrect verification code"),
THIRD_SERVICE_CALL_EXCEPTION(40071, "the third service call exception"),
//支付异常
PAY_ERROR(50000, "pay error"),
WECHAT_NOTIFY_ERROR(401, "wechat notify error")
;
int code;
String message;
BusinessExceptionAssertEnum(int code, String message) {
this.code = code;
this.message = message;
}
}
package club.joylink.rtss.exception;
import lombok.Getter;
@Getter
public enum BusinessExceptionAssertEnum implements BusinessExceptionAssert {
INVALID_LICENSE(90000, "invalid license"),
LICENSE_EXPIRED(90001, "license expired"),
LICENSE_LOCAL_SAVE_FAILED(90002, "license local save failed"),
LICENSE_LOCAL_LOAD_FAILED(90003, "license local load failed"),
LICENSE_DECRYPT_FAILED(90004, "license decrypt failed"),
LICENSE_NOT_EXIST(90005, "license not exist"),
LICENSE_FILE_NOT_EXIST(90006, "license file not exist"),
SYSTEM_EXCEPTION(10000, "system exception"),
TRAINING_ROOM_SIMULATION_NOT_EXIST(10001, "training room simulation not exist"),
SIMULATION_PERMISSION_ALREADY_GET(10002, "permission already get"),
INSUFFICIENT_PERMISSIONS(10003, "insufficient permissions"),
OPERATION_NOT_SUPPORTED(10004, "operation not supported"),
INVALID_OPERATION(10005, "invalid operation"),
TRAINING_ROOM_SIMULATION_LOAD_DEVICE_ERROR(10006, "training room simulation load device error"),
DATA_NOT_EXIST(10007, "data not exist"),
ARGUMENT_ILLEGAL(10008, "argument illegal"),
SIMULATION_PERMISSION_USE_UP(10009, "simulation permission use up"),
NAME_REPEAT(10010, "name repeat"),
QUESTION_RULE_NOT_EXIST(10011, "question rule not exist"),
DATA_ALREADY_EXIST(10012, "data already exist"),
SIMULATION_PERMISSION_NOT_EXIST(10013, "simulation permission not exist"),
SIMULATION_PERMISSION_NOT_AVAILABLE(10014, "simulation permission not available"),
UNSUPPORTED_FILE_FORMAT(10015, "unsupported file format"),
OPERATION_REPEAT(10016, "operation repeat"),
SIMULATION_EXCEPTION_FOR_SHOW(10017, ""), //错误信息用于展示给仿真用户
OPERATION_FAIL(10018, "操作失败"),
DATA_ERROR(11000, "data error"),
CI_GENERATE_ERROR(11001, "ci data generate error"),
MAP_PASSENGER_FLOW_DATA_ERROR(11002, "map passenger flow data error"),
DATA_UNIQUE_PROPERTY_REPEAT(11013, "data unique property repeat"),
DATA_INVALID(11004, "data invalid"),
DATA_BEEN_USED(11005, "data has been used"),
DATA_STATE_INCORRECT(11007, "data state incorrect"),
// 运行图工具
BEYOND_RECEPTION(101, "beyond station reception"),
// 仿真
SIMULATION_NOT_EXIST(30001, "simulation not exist"),
SIMULATION_OPERATION_FAILED(30002, "simulation operation failed"),
//
LOGIN_INFO_ERROR(40003, "login info error"),
LOGIN_EXPIRED(40004, "login expired"),
NOT_LOGIN(40005, "not login"),
WECHAT_CODE_EXPIRED(40029, "wechat code expired"),
INVALID_CLIENT(40031, "invalid client"),
INCORRECT_VERIFICATION_CODE(40051, "incorrect verification code"),
THIRD_SERVICE_CALL_EXCEPTION(40071, "the third service call exception"),
//支付异常
PAY_ERROR(50000, "pay error"),
WECHAT_NOTIFY_ERROR(401, "wechat notify error")
;
int code;
String message;
BusinessExceptionAssertEnum(int code, String message) {
this.code = code;
this.message = message;
}
}

View File

@ -91,7 +91,9 @@ public class CiSignalControlService {
public void blockade(Simulation simulation, Signal signal) {
if(!signal.isBlockade()) {
signal.setBlockade(true);
this.tryControlSignalAspectAccordingLevel(simulation, signal, signal.getDefaultAspect());
if(simulation.getRepository().getConfig().isSignalBolckOptReflectSignal()) {
this.tryControlSignalAspectAccordingLevel(simulation, signal, signal.getDefaultAspect());
}
if (signal.getLockedRoute() != null) {
signal.setReblockade(true);
log.debug(signal.debugStr() + "因信号机封锁且有锁闭的进路而重复封锁");

View File

@ -233,6 +233,13 @@ public class MapConfig {
* 大铁线路
*/
private boolean railway;
/**
* 对信号机封锁操作是否影响信号显示
* <p>
* true-封锁信号机会使信号机显示禁止色<br>
* false-封锁信号机不会影响信号机显示
*/
private boolean signalBolckOptReflectSignal;
/**
* 区故解只能应用于故障锁闭区段
@ -298,6 +305,7 @@ public class MapConfig {
setStandTbStrategyIsInvalid(configVO.isStandTbStrategyIsInvalid());
setUpdateTripPlanByServiceNumber(configVO.isUpdateTripPlanByServiceNumber());
setRailway(configVO.isRailway());
setSignalBolckOptReflectSignal(configVO.isSignalBolckOptReflectSignal());
setSFUCanOnlyApplyForFaultLockSection(configVO.isSFUCanOnlyApplyForFaultLockSection());
}
}

View File

@ -220,6 +220,14 @@ public class RealLineConfigVO {
* 大铁线路
*/
private boolean railway;
/**
* 对信号机封锁操作是否影响信号显示
* <p>
* true-封锁信号机会使信号机显示禁止色<br>
* false-封锁信号机不会影响信号机显示
*/
private boolean signalBolckOptReflectSignal=true;
/**
* 区故解只能应用于故障锁闭区段