ItEr33S14CUCreacionUnidadesPlanificacion: Setting notBeforeThanConstraint when is applyable

This commit is contained in:
Óscar González Fernández 2009-11-07 16:07:08 +01:00
parent b5907632ac
commit 8967665877
2 changed files with 22 additions and 8 deletions

View file

@ -35,7 +35,6 @@ import org.zkoss.ganttz.adapters.IStructureNavigator;
import org.zkoss.ganttz.adapters.PlannerConfiguration;
import org.zkoss.ganttz.data.DefaultFundamentalProperties;
import org.zkoss.ganttz.data.DependencyType;
import org.zkoss.ganttz.data.GanttDiagramGraph;
import org.zkoss.ganttz.data.ITaskFundamentalProperties;
import org.zkoss.ganttz.extensions.ICommand;
import org.zkoss.ganttz.extensions.ICommandOnTask;
@ -54,10 +53,6 @@ public class DataForPlanner {
}
public GanttDiagramGraph getEmpty() {
return new GanttDiagramGraph();
}
private PlannerConfiguration<ITaskFundamentalProperties> addCommands(
PlannerConfiguration<ITaskFundamentalProperties> configuration) {
configuration
@ -179,7 +174,8 @@ public class DataForPlanner {
return false;
}
};
return new PlannerConfiguration<ITaskFundamentalProperties>(
return mustStartNotTwoMonthsBeforeThan(now,
new PlannerConfiguration<ITaskFundamentalProperties>(
new AutoAdapter() {
@Override
public List<DomainDependency<ITaskFundamentalProperties>> getOutcomingDependencies(
@ -194,9 +190,17 @@ public class DataForPlanner {
}
return result;
}
}, navigator, list);
}, navigator, list));
}
private PlannerConfiguration<ITaskFundamentalProperties> mustStartNotTwoMonthsBeforeThan(
Date date,
PlannerConfiguration<ITaskFundamentalProperties> plannerConfiguration) {
plannerConfiguration.setNotBeforeThan(twoMonthsBefore(date));
return plannerConfiguration;
}
private DefaultFundamentalProperties createTask(String name, Date now,
Date end) {
return new DefaultFundamentalProperties(name, end, end.getTime()
@ -209,6 +213,13 @@ public class DataForPlanner {
twoMonthsLater(new Date())));
}
private Date twoMonthsBefore(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.MONTH, -2);
return calendar.getTime();
}
private static Date twoMonthsLater(Date now) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(now);

View file

@ -277,8 +277,11 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel {
forceLoadOfDependenciesCollections(planningState.getInitial());
forceLoadOfWorkingHours(planningState.getInitial());
forceLoadOfLabels(planningState.getInitial());
return new PlannerConfiguration<TaskElement>(taskElementAdapter,
PlannerConfiguration<TaskElement> result = new PlannerConfiguration<TaskElement>(
taskElementAdapter,
new TaskElementNavigator(), planningState.getInitial());
result.setNotBeforeThan(orderReloaded.getInitDate());
return result;
}
private void forceLoadOfWorkingHours(List<TaskElement> initial) {