[Bug #1004] Fix bug LazyInitializationException of Calendars
FEA: ItEr74S04BugFixing
This commit is contained in:
parent
a8a9d3f4ec
commit
1f7a960f53
2 changed files with 28 additions and 1 deletions
|
|
@ -21,6 +21,7 @@
|
|||
|
||||
package org.navalplanner.business.calendars.entities;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
|
|
@ -136,6 +137,10 @@ public class CalendarData extends IntegrationEntity {
|
|||
return capacityPerDay.get(day.ordinal());
|
||||
}
|
||||
|
||||
public Map<Integer, Capacity> getCapacityPerDay() {
|
||||
return Collections.unmodifiableMap(capacityPerDay);
|
||||
}
|
||||
|
||||
public void setCapacityAt(Days day, Capacity capacity) {
|
||||
capacityPerDay.put(day.ordinal(), capacity);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -25,6 +25,7 @@ import java.util.List;
|
|||
|
||||
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.planner.entities.Task;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.config.BeanDefinition;
|
||||
|
|
@ -49,7 +50,28 @@ public class CalendarAllocationModel implements ICalendarAllocationModel {
|
|||
@Override
|
||||
@Transactional(readOnly = true)
|
||||
public List<BaseCalendar> getBaseCalendars() {
|
||||
return baseCalendarDAO.getBaseCalendars();
|
||||
return initializeCalendars(baseCalendarDAO.getBaseCalendars());
|
||||
}
|
||||
|
||||
private List<BaseCalendar> initializeCalendars(List<BaseCalendar> calendars) {
|
||||
for (BaseCalendar each : calendars) {
|
||||
baseCalendarDAO.reattach(each);
|
||||
initializeCalendar(each);
|
||||
}
|
||||
return calendars;
|
||||
}
|
||||
|
||||
public void initializeCalendar(BaseCalendar calendar) {
|
||||
calendar.getCalendarAvailabilities().size();
|
||||
calendar.getExceptions().size();
|
||||
initializeCalendarData(calendar.getCalendarDataVersions());
|
||||
}
|
||||
|
||||
private void initializeCalendarData(List<CalendarData> calendarData) {
|
||||
calendarData.size();
|
||||
for (CalendarData each: calendarData) {
|
||||
each.getCapacityPerDay().size();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue