diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/resources/entities/LimitingResourceQueue.java b/navalplanner-business/src/main/java/org/navalplanner/business/resources/entities/LimitingResourceQueue.java index fdf444776..d39e12a07 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/resources/entities/LimitingResourceQueue.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/resources/entities/LimitingResourceQueue.java @@ -34,12 +34,10 @@ import java.util.SortedSet; import java.util.TreeSet; import org.navalplanner.business.common.BaseEntity; -import org.navalplanner.business.orders.entities.OrderElement; import org.navalplanner.business.planner.limiting.entities.DateAndHour; import org.navalplanner.business.planner.limiting.entities.Gap; import org.navalplanner.business.planner.limiting.entities.Gap.GapOnQueue; import org.navalplanner.business.planner.limiting.entities.InsertionRequirements; -import org.navalplanner.business.planner.limiting.entities.LimitingResourceAllocator; import org.navalplanner.business.planner.limiting.entities.LimitingResourceQueueElement; /** * diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/limitingresources/QueuesState.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/limitingresources/QueuesState.java index 401e6d670..09859645a 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/limitingresources/QueuesState.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/limitingresources/QueuesState.java @@ -43,9 +43,9 @@ import org.navalplanner.business.planner.entities.GenericResourceAllocation; import org.navalplanner.business.planner.entities.ResourceAllocation; import org.navalplanner.business.planner.entities.SpecificResourceAllocation; import org.navalplanner.business.planner.limiting.entities.DateAndHour; +import org.navalplanner.business.planner.limiting.entities.Gap; import org.navalplanner.business.planner.limiting.entities.Gap.GapOnQueue; import org.navalplanner.business.planner.limiting.entities.Gap.GapOnQueueWithQueueElement; -import org.navalplanner.business.planner.limiting.entities.Gap; import org.navalplanner.business.planner.limiting.entities.InsertionRequirements; import org.navalplanner.business.planner.limiting.entities.LimitingResourceQueueDependency; import org.navalplanner.business.planner.limiting.entities.LimitingResourceQueueDependency.QueueDependencyType; @@ -55,6 +55,7 @@ import org.navalplanner.business.resources.entities.CriterionCompounder; import org.navalplanner.business.resources.entities.ICriterion; import org.navalplanner.business.resources.entities.LimitingResourceQueue; import org.navalplanner.business.resources.entities.Resource; +import org.navalplanner.business.resources.entities.ResourceEnum; /** * @author Óscar González Fernández @@ -207,7 +208,7 @@ public class QueuesState { } else if (resourceAllocation instanceof GenericResourceAllocation) { final GenericResourceAllocation generic = (GenericResourceAllocation) element .getResourceAllocation(); - return findQueuesMatchingCriteria(generic.getCriterions()); + return findQueuesMatchingCriteria(generic); } throw new RuntimeException("unexpected type of: " + resourceAllocation); } @@ -288,13 +289,17 @@ public class QueuesState { return result; } - private List findQueuesMatchingCriteria( - Set criteria) { + private List findQueuesMatchingCriteria(GenericResourceAllocation generic) { List result = new ArrayList(); + ResourceEnum resourceType = generic.getResourceType(); + Set criteria = generic.getCriterions(); + final ICriterion compositedCriterion = CriterionCompounder.buildAnd( criteria).getResult(); for (LimitingResourceQueue each : queues) { - if (compositedCriterion.isSatisfiedBy(each.getResource())) { + Resource resource = each.getResource(); + if (resource.getType().equals(resourceType) + && compositedCriterion.isSatisfiedBy(resource)) { result.add(each); } }