From e9ecd93966587969dc6c65df97ad4e1f298195d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lorenzo=20Tilve=20=C3=81lvaro?= Date: Mon, 29 Apr 2013 12:51:32 +0200 Subject: [PATCH] Bug #1606: Revert fix for bug #1546 wich causes regressions on dependencies after saving project This reverts commit 9a8d7deffe7bb5034448f698ab3dff4014b1bdb1. The original fix on the patch "Bug #1546: Force recalculation of critical path progresses on saving project" is having a side-effect on the behaviour of the dependencies, that don't push tasks and are show violated. As the regression effect is more severe than the original bug, we revert the patch while finding another solution for the original issue. --- .../web/planner/order/PlanningStateCreator.java | 9 --------- .../libreplan/web/planner/order/SaveCommandBuilder.java | 1 - .../libreplan/web/planner/tabs/CriticalPathBuilder.java | 4 ++-- 3 files changed, 2 insertions(+), 12 deletions(-) diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/planner/order/PlanningStateCreator.java b/libreplan-webapp/src/main/java/org/libreplan/web/planner/order/PlanningStateCreator.java index 3f4cf28b0..3adcc18d6 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/planner/order/PlanningStateCreator.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/planner/order/PlanningStateCreator.java @@ -70,7 +70,6 @@ import org.libreplan.business.planner.entities.consolidations.CalculatedConsolid import org.libreplan.business.requirements.entities.CriterionRequirement; import org.libreplan.business.resources.daos.ICriterionDAO; import org.libreplan.business.resources.daos.IResourceDAO; -import org.libreplan.business.resources.daos.IResourcesSearcher; import org.libreplan.business.resources.entities.Criterion; import org.libreplan.business.resources.entities.CriterionSatisfaction; import org.libreplan.business.resources.entities.IAssignmentsOnResourceCalculator; @@ -88,7 +87,6 @@ import org.libreplan.business.users.entities.UserOrderAuthorization; import org.libreplan.web.UserUtil; import org.libreplan.web.calendars.BaseCalendarModel; import org.libreplan.web.planner.TaskElementAdapter; -import org.libreplan.web.planner.tabs.CriticalPathBuilder; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.context.annotation.Scope; @@ -181,9 +179,6 @@ public class PlanningStateCreator { @Autowired private IMoneyCostCalculator moneyCostCalculator; - @Autowired - private IResourcesSearcher resourcesSearcher; - void synchronizeWithSchedule(Order order, IOptionalPersistence persistence) { List synchronizationsNeeded = order .calculateSynchronizationsNeeded(); @@ -1122,10 +1117,6 @@ public class PlanningStateCreator { savedOrderState = order.getState(); } - public List getCriticalPath() { - return CriticalPathBuilder.criticalPathFor(this, resourcesSearcher); - } - } public interface IAllocationCriteria { diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/planner/order/SaveCommandBuilder.java b/libreplan-webapp/src/main/java/org/libreplan/web/planner/order/SaveCommandBuilder.java index b4bb6ce8e..82b9dd0f4 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/planner/order/SaveCommandBuilder.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/planner/order/SaveCommandBuilder.java @@ -396,7 +396,6 @@ public class SaveCommandBuilder { // the deletes on cascade a new root task is fetched causing a // NonUniqueObjectException later taskElementDAO.reattach(rootTask); - rootTask.updateCriticalPathProgress(state.getCriticalPath()); } orderDAO.save(order); diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/planner/tabs/CriticalPathBuilder.java b/libreplan-webapp/src/main/java/org/libreplan/web/planner/tabs/CriticalPathBuilder.java index 4f8aa515f..787126bf5 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/planner/tabs/CriticalPathBuilder.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/planner/tabs/CriticalPathBuilder.java @@ -95,7 +95,7 @@ public class CriticalPathBuilder { }); } - public static List criticalPathFor(PlanningState state, + private List criticalPathFor(PlanningState state, IResourcesSearcher resourcesSearcher) { final Order order = state.getOrder(); final Scenario currentScenario = state.getCurrentScenario(); @@ -110,7 +110,7 @@ public class CriticalPathBuilder { return criticalPathCalculator.calculateCriticalPath(graph); } - private static LocalDate asLocalDate(Date date) { + private LocalDate asLocalDate(Date date) { return date != null ? LocalDate.fromDateFields(date) : null; }