ItEr60S04ValidacionEProbasFuncionaisItEr59S04: Refactor.
Move method to class so it can be reused.
This commit is contained in:
parent
ab681a9f03
commit
b267408ff8
2 changed files with 22 additions and 18 deletions
|
|
@ -47,6 +47,11 @@ import org.zkoss.ganttz.util.Interval;
|
|||
*/
|
||||
public abstract class EarnedValueChartFiller extends ChartFiller {
|
||||
|
||||
public static boolean includes(Interval interval, LocalDate date) {
|
||||
LocalDate start = LocalDate.fromDateFields(interval.getStart());
|
||||
LocalDate end = LocalDate.fromDateFields(interval.getFinish());
|
||||
return start.compareTo(date) <= 0 && date.compareTo(end) < 0;
|
||||
}
|
||||
public enum EarnedValueType {
|
||||
|
||||
BCWS(_("BCWS"), _("Budgeted Cost Work Scheduled"), "#0000FF"), ACWP(
|
||||
|
|
@ -323,6 +328,18 @@ public abstract class EarnedValueChartFiller extends ChartFiller {
|
|||
public Interval getIndicatorsDefinitionInterval() {
|
||||
return indicatorsInterval;
|
||||
}
|
||||
|
||||
/**
|
||||
* Will try to use today if possible
|
||||
* @return Today if there are values defined for that date. The last day in
|
||||
* the interval otherwise
|
||||
*/
|
||||
public LocalDate initialDateForIndicatorValues() {
|
||||
Interval chartInterval = getIndicatorsDefinitionInterval();
|
||||
LocalDate today = new LocalDate();
|
||||
return includes(chartInterval, today) ? today
|
||||
: LocalDate.fromDateFields(chartInterval.getFinish());
|
||||
}
|
||||
protected void addZeroBeforeTheFirstValue(
|
||||
SortedMap<LocalDate, BigDecimal> map) {
|
||||
if (!map.isEmpty()) {
|
||||
|
|
|
|||
|
|
@ -92,8 +92,8 @@ import org.navalplanner.web.planner.calendar.ICalendarAllocationCommand;
|
|||
import org.navalplanner.web.planner.chart.Chart;
|
||||
import org.navalplanner.web.planner.chart.ChartFiller;
|
||||
import org.navalplanner.web.planner.chart.EarnedValueChartFiller;
|
||||
import org.navalplanner.web.planner.chart.IChartFiller;
|
||||
import org.navalplanner.web.planner.chart.EarnedValueChartFiller.EarnedValueType;
|
||||
import org.navalplanner.web.planner.chart.IChartFiller;
|
||||
import org.navalplanner.web.planner.consolidations.AdvanceConsolidationController;
|
||||
import org.navalplanner.web.planner.consolidations.IAdvanceConsolidationCommand;
|
||||
import org.navalplanner.web.planner.milestone.IAddMilestoneCommand;
|
||||
|
|
@ -517,7 +517,7 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel {
|
|||
Hbox dateHbox = new Hbox();
|
||||
dateHbox.appendChild(new Label(_("Select date:")));
|
||||
|
||||
LocalDate initialDateForIndicatorValues = calculateInitialDateForIndicatorValues(earnedValueChartFiller);
|
||||
LocalDate initialDateForIndicatorValues = earnedValueChartFiller.initialDateForIndicatorValues();
|
||||
Datebox datebox = new Datebox(initialDateForIndicatorValues
|
||||
.toDateTimeAtStartOfDay().toDate());
|
||||
datebox.setConstraint(dateMustBeInsideVisualizationArea(earnedValueChartFiller));
|
||||
|
|
@ -544,20 +544,6 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel {
|
|||
earnedValueChartPannel.appendChild(hbox);
|
||||
}
|
||||
|
||||
private LocalDate calculateInitialDateForIndicatorValues(
|
||||
OrderEarnedValueChartFiller earnedValueChartFiller) {
|
||||
Interval chartInterval = earnedValueChartFiller.getIndicatorsDefinitionInterval();
|
||||
LocalDate today = new LocalDate();
|
||||
return includes(chartInterval, today) ? today : LocalDate
|
||||
.fromDateFields(chartInterval.getFinish());
|
||||
}
|
||||
|
||||
private boolean includes(Interval interval, LocalDate date) {
|
||||
LocalDate start = LocalDate.fromDateFields(interval.getStart());
|
||||
LocalDate end = LocalDate.fromDateFields(interval.getFinish());
|
||||
return start.compareTo(date) <= 0 && date.compareTo(end) < 0;
|
||||
}
|
||||
|
||||
private Constraint dateMustBeInsideVisualizationArea(
|
||||
final OrderEarnedValueChartFiller earnedValueChartFiller) {
|
||||
return new Constraint() {
|
||||
|
|
@ -568,7 +554,8 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel {
|
|||
throws WrongValueException {
|
||||
Date value = (Date) valueObject;
|
||||
if (value != null
|
||||
&& !includes(earnedValueChartFiller
|
||||
&& !EarnedValueChartFiller.includes(
|
||||
earnedValueChartFiller
|
||||
.getIndicatorsDefinitionInterval(), LocalDate
|
||||
.fromDateFields(value))) {
|
||||
throw new WrongValueException(comp,
|
||||
|
|
@ -1335,7 +1322,7 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel {
|
|||
|
||||
}
|
||||
|
||||
private class OrderEarnedValueChartFiller extends EarnedValueChartFiller {
|
||||
class OrderEarnedValueChartFiller extends EarnedValueChartFiller {
|
||||
|
||||
private Order order;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue