package com.zy.core.utils.station.model;
|
|
public final class RerouteDecision {
|
private final boolean skip;
|
private final String skipReason;
|
private final Integer targetStationId;
|
private final OutOrderDispatchDecision dispatchDecision;
|
|
private RerouteDecision(boolean skip,
|
String skipReason,
|
Integer targetStationId,
|
OutOrderDispatchDecision dispatchDecision) {
|
this.skip = skip;
|
this.skipReason = skipReason;
|
this.targetStationId = targetStationId;
|
this.dispatchDecision = dispatchDecision;
|
}
|
|
public static RerouteDecision skip(String reason) {
|
return new RerouteDecision(true, reason, null, null);
|
}
|
|
public static RerouteDecision proceed(Integer targetStationId) {
|
return new RerouteDecision(false, null, targetStationId, null);
|
}
|
|
public static RerouteDecision proceed(Integer targetStationId,
|
OutOrderDispatchDecision dispatchDecision) {
|
return new RerouteDecision(false, null, targetStationId, dispatchDecision);
|
}
|
|
public boolean skip() {
|
return skip;
|
}
|
|
public String skipReason() {
|
return skipReason;
|
}
|
|
public Integer targetStationId() {
|
return targetStationId;
|
}
|
|
public OutOrderDispatchDecision dispatchDecision() {
|
return dispatchDecision;
|
}
|
}
|