From ea99dc9a46c86a165d791e996b57582fa3a246ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=93scar=20Gonz=C3=A1lez=20Fern=C3=A1ndez?= Date: Thu, 15 Sep 2011 17:09:39 +0200 Subject: [PATCH] Avoid unnecessary calculations The interval is applied immediately. FEA: ItEr75S04BugFixing --- .../business/planner/chart/ResourceLoadChartData.java | 10 +++++++++- .../web/resourceload/ResourceLoadController.java | 6 ++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/planner/chart/ResourceLoadChartData.java b/navalplanner-business/src/main/java/org/navalplanner/business/planner/chart/ResourceLoadChartData.java index e10f7d756..bd8794006 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/planner/chart/ResourceLoadChartData.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/planner/chart/ResourceLoadChartData.java @@ -62,10 +62,18 @@ public class ResourceLoadChartData implements ILoadChartData { private SortedMap availability; public ResourceLoadChartData(List dayAssignments, List resources) { + this(dayAssignments, resources, null, null); + } + + public ResourceLoadChartData(List dayAssignments, + List resources, LocalDate startInclusive, + LocalDate endExclusive) { ContiguousDaysLine> assignments = ContiguousDaysLine .byDay(dayAssignments); - + if (startInclusive != null && endExclusive != null) { + assignments = assignments.subInterval(startInclusive, endExclusive); + } ContiguousDaysLine load = assignments .transform(extractLoad()); diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/resourceload/ResourceLoadController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/resourceload/ResourceLoadController.java index 6b7efa09c..009e3b932 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/resourceload/ResourceLoadController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/resourceload/ResourceLoadController.java @@ -900,10 +900,8 @@ public class ResourceLoadController implements Composer { List assignments = generatedData .getDayAssignmentsConsidered(); List resources = generatedData.getResourcesConsidered(); - ResourceLoadChartData data = new ResourceLoadChartData(assignments, - resources); - return data.on(getStart(generatedData.getFilterStart(), interval), - getEnd(generatedData.getFilterEnd(), interval)); + return new ResourceLoadChartData(assignments, + resources, interval.getStart(), interval.getFinish()); } }