package com.zy.core.utils.station.model;
|
|
import com.zy.core.service.StationTaskLoopService;
|
|
public final class OutOrderDispatchDecision {
|
private final Integer targetStationId;
|
private final boolean circle;
|
private final StationTaskLoopService.LoopEvaluation loopEvaluation;
|
private final boolean countLoopIssue;
|
|
private OutOrderDispatchDecision(Integer targetStationId,
|
boolean circle,
|
StationTaskLoopService.LoopEvaluation loopEvaluation,
|
boolean countLoopIssue) {
|
this.targetStationId = targetStationId;
|
this.circle = circle;
|
this.loopEvaluation = loopEvaluation;
|
this.countLoopIssue = countLoopIssue;
|
}
|
|
public static OutOrderDispatchDecision direct(Integer targetStationId) {
|
return new OutOrderDispatchDecision(targetStationId, false, null, false);
|
}
|
|
public static OutOrderDispatchDecision circle(Integer targetStationId,
|
StationTaskLoopService.LoopEvaluation loopEvaluation,
|
boolean countLoopIssue) {
|
return new OutOrderDispatchDecision(targetStationId, true, loopEvaluation, countLoopIssue);
|
}
|
|
public Integer getTargetStationId() {
|
return targetStationId;
|
}
|
|
public boolean isCircle() {
|
return circle;
|
}
|
|
public StationTaskLoopService.LoopEvaluation getLoopEvaluation() {
|
return loopEvaluation;
|
}
|
|
public boolean shouldCountLoopIssue() {
|
return countLoopIssue;
|
}
|
}
|