[Bug #748] Fix bug
If the planning state is empty, the update and refreshing operations can't be done. FEA: ItEr64S03BugFixing
This commit is contained in:
parent
b3be811ffe
commit
111bac3e8f
2 changed files with 22 additions and 5 deletions
|
|
@ -1554,6 +1554,9 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel {
|
|||
|
||||
@Override
|
||||
public void onEvent(Event event) throws Exception {
|
||||
if (planningState.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
transactionService
|
||||
.runOnReadOnlyTransaction(new IOnTransaction<Void>() {
|
||||
@Override
|
||||
|
|
@ -1568,6 +1571,9 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel {
|
|||
}
|
||||
|
||||
public void refresh() {
|
||||
if (planningState.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
TaskGroup rootTask = planningState.getRootTask();
|
||||
|
||||
setAdvancePercentage(rootTask.getAdvancePercentage());
|
||||
|
|
@ -1584,11 +1590,10 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel {
|
|||
}
|
||||
|
||||
private void updateCriticalPathProgress(TaskGroup rootTask) {
|
||||
if (rootTask != null && planningState.getPlanner() != null) {
|
||||
taskElementDAO.save(rootTask);
|
||||
List<Task> criticalPath = planningState.getPlanner().getCriticalPath();
|
||||
rootTask.updateCriticalPathProgress(criticalPath);
|
||||
}
|
||||
taskElementDAO.save(rootTask);
|
||||
List<Task> criticalPath = planningState.getPlanner()
|
||||
.getCriticalPath();
|
||||
rootTask.updateCriticalPathProgress(criticalPath);
|
||||
}
|
||||
|
||||
private void setAdvancePercentage(BigDecimal value) {
|
||||
|
|
|
|||
|
|
@ -223,6 +223,8 @@ public abstract class PlanningState {
|
|||
return new EmptyPlannigState(currentScenario);
|
||||
}
|
||||
|
||||
public abstract boolean isEmpty();
|
||||
|
||||
public abstract Collection<? extends TaskElement> getTasksToSave();
|
||||
|
||||
public abstract List<TaskElement> getInitial();
|
||||
|
|
@ -402,6 +404,11 @@ public abstract class PlanningState {
|
|||
return planner;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEmpty() {
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private static class EmptyPlannigState extends PlanningState {
|
||||
|
|
@ -453,5 +460,10 @@ public abstract class PlanningState {
|
|||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEmpty() {
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue