From c2bfee9d82d7a7fdb411bcafc59de1168cf41b77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=93scar=20Gonz=C3=A1lez=20Fern=C3=A1ndez?= Date: Mon, 2 Nov 2009 18:04:53 +0100 Subject: [PATCH] ItEr33S08ValidacionEProbasFuncionaisItEr32S09: [Bug #72] TaskElement calculates the hours assigned by day --- .../planner/entities/TaskElement.java | 20 +++++++++++++++++++ .../web/planner/TaskElementAdapter.java | 4 ++-- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskElement.java b/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskElement.java index 1ca68f660..3515d9e36 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskElement.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/planner/entities/TaskElement.java @@ -26,8 +26,11 @@ import java.util.Date; import java.util.HashSet; import java.util.List; import java.util.Set; +import java.util.SortedMap; +import java.util.TreeMap; import org.apache.commons.lang.Validate; +import org.joda.time.LocalDate; import org.navalplanner.business.calendars.entities.BaseCalendar; import org.navalplanner.business.common.BaseEntity; import org.navalplanner.business.orders.entities.OrderElement; @@ -278,4 +281,21 @@ public abstract class TaskElement extends BaseEntity { public abstract Set> getResourceAllocations(); + public SortedMap getHoursAssignedByDay() { + SortedMap result = new TreeMap(); + for (ResourceAllocation resourceAllocation : getResourceAllocations()) { + for (DayAssignment each : resourceAllocation + .getAssignments()) { + addToResult(result, each.getDay(), each.getHours()); + } + } + return result; + } + + private void addToResult(SortedMap result, + LocalDate date, int hours) { + int current = result.get(date) != null ? result.get(date) : 0; + result.put(date, current + hours); + } + } diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java index 7fa5ead13..421915f52 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java @@ -239,8 +239,8 @@ public class TaskElementAdapter implements ITaskElementAdapter { LocalDate lastDay = null; Integer hoursLastDay = 0; - Map daysMap = dayAssignmentDAO - .getHoursAssignedByDayFor(taskElement); + Map daysMap = taskElement + .getHoursAssignedByDay(); if (daysMap.isEmpty()) { return null; }