From b896b6824bccadc041625d2db5a3bd9604829ca6 Mon Sep 17 00:00:00 2001 From: Diego Pino Garcia Date: Mon, 25 Apr 2011 19:26:39 +0200 Subject: [PATCH] Fixed test notAllowRemoveCalendarWithChildrenInOtherVersions Removed reference to calendar in CalendarData and implemented the method for checking if a calendar is being used by a resource in another manner FEA: ItEr74S04BugFixing --- .../business/calendars/daos/BaseCalendarDAO.java | 10 ++++------ .../business/calendars/entities/CalendarData.java | 6 ------ .../business/calendars/entities/Calendars.hbm.xml | 2 -- 3 files changed, 4 insertions(+), 14 deletions(-) diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/calendars/daos/BaseCalendarDAO.java b/navalplanner-business/src/main/java/org/navalplanner/business/calendars/daos/BaseCalendarDAO.java index a19d919c6..9ef151c21 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/calendars/daos/BaseCalendarDAO.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/calendars/daos/BaseCalendarDAO.java @@ -148,12 +148,10 @@ public class BaseCalendarDAO extends IntegrationEntityDAO * @param calendar */ private void checkHasResources(BaseCalendar calendar) { - Query query = getSession().createQuery( - "FROM CalendarData " - + "WHERE calendar IN (FROM ResourceCalendar) " - + "AND parent = :parent"); - query.setParameter("parent", calendar); - if (!query.list().isEmpty()) { + List calendars = getSession().createCriteria(ResourceCalendar.class) + .createCriteria("calendarDataVersions", "calendarData") + .add(Restrictions.eq("calendarData.parent", calendar)).list(); + if (!calendars.isEmpty()) { throw ValidationException .invalidValue( "Cannot delete calendar. It is being used at this moment by some resources.", diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/calendars/entities/CalendarData.java b/navalplanner-business/src/main/java/org/navalplanner/business/calendars/entities/CalendarData.java index 2c42d1289..2313fdac6 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/calendars/entities/CalendarData.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/calendars/entities/CalendarData.java @@ -79,8 +79,6 @@ public class CalendarData extends IntegrationEntity { private BaseCalendar parent; - private BaseCalendar calendar; - public enum Days { MONDAY(_("Monday")), TUESDAY(_("Tuesday")), WEDNESDAY(_("Wednesday")), THURSDAY( _("Thursday")), FRIDAY(_("Friday")), SATURDAY(_("Saturday")), SUNDAY( @@ -223,8 +221,4 @@ public class CalendarData extends IntegrationEntity { return Registry.getCalendarDataDAO(); } - public BaseCalendar getCalendar() { - return calendar; - } - } diff --git a/navalplanner-business/src/main/resources/org/navalplanner/business/calendars/entities/Calendars.hbm.xml b/navalplanner-business/src/main/resources/org/navalplanner/business/calendars/entities/Calendars.hbm.xml index 15cd3939f..95d5f7887 100644 --- a/navalplanner-business/src/main/resources/org/navalplanner/business/calendars/entities/Calendars.hbm.xml +++ b/navalplanner-business/src/main/resources/org/navalplanner/business/calendars/entities/Calendars.hbm.xml @@ -127,8 +127,6 @@ - -