ItEr44S08ImplantacionAplicacionItEr43S09: [Bug #248] Fixed loading resource calendars in resource allocation window.

This commit is contained in:
Manuel Rego Casasnovas 2010-01-19 11:12:53 +01:00 committed by Javier Moran Rua
parent c45f1981f0
commit 21bab56df8

View file

@ -28,6 +28,8 @@ import java.util.Set;
import org.hibernate.Hibernate;
import org.navalplanner.business.calendars.daos.IBaseCalendarDAO;
import org.navalplanner.business.calendars.entities.BaseCalendar;
import org.navalplanner.business.calendars.entities.CalendarData;
import org.navalplanner.business.common.IAdHocTransactionService;
import org.navalplanner.business.common.IOnTransaction;
import org.navalplanner.business.common.ProportionalDistributor;
@ -346,6 +348,7 @@ public class ResourceAllocationModel implements IResourceAllocationModel {
reattachCriterionSatisfactions(resource.getCriterionSatisfactions());
if (resource.getCalendar() != null) {
calendarDAO.reattachUnmodifiedEntity(resource.getCalendar());
loadCalendar(resource.getCalendar());
}
for (DayAssignment dayAssignment : resource.getAssignments()) {
Hibernate.initialize(dayAssignment);
@ -355,6 +358,17 @@ public class ResourceAllocationModel implements IResourceAllocationModel {
}
}
private void loadCalendar(BaseCalendar baseCalendar) {
for (CalendarData calendarData : baseCalendar.getCalendarDataVersions()) {
calendarData.getHoursPerDay().size();
if (calendarData.getParent() != null) {
loadCalendar(calendarData.getParent());
}
}
baseCalendar.getExceptions().size();
baseCalendar.getCalendarAvailabilities().size();
}
private void reattachCriterionSatisfactions(
Set<CriterionSatisfaction> criterionSatisfactions) {
for (CriterionSatisfaction criterionSatisfaction : criterionSatisfactions) {