From d1342cc4b8a542347bdee1a1967465db55c7b378 Mon Sep 17 00:00:00 2001 From: Manuel Rego Casasnovas Date: Tue, 10 May 2011 16:33:05 +0200 Subject: [PATCH] [Bug #1064] Fixed more problems related with this issue. FEA: ItEr74S04BugFixing --- .../business/orders/entities/OrderElement.java | 2 +- .../templates/entities/OrderElementTemplate.java | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/OrderElement.java b/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/OrderElement.java index 83550baef..09befc1b7 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/OrderElement.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/OrderElement.java @@ -1096,7 +1096,7 @@ public abstract class OrderElement extends IntegrationEntity implements return false; } - protected boolean checkAncestorsNoOtherLabelRepeated(Label newLabel) { + public boolean checkAncestorsNoOtherLabelRepeated(Label newLabel) { for (Label label : labels) { if (label.isEqualTo(newLabel)) { return false; diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/templates/entities/OrderElementTemplate.java b/navalplanner-business/src/main/java/org/navalplanner/business/templates/entities/OrderElementTemplate.java index 976792c73..dde331df7 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/templates/entities/OrderElementTemplate.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/templates/entities/OrderElementTemplate.java @@ -241,8 +241,10 @@ public abstract class OrderElementTemplate extends BaseEntity implements private void setupCriterionRequirements(OrderElement orderElement) { for (DirectCriterionRequirement each : getDirectCriterionRequirements()) { - orderElement.addCriterionRequirement(DirectCriterionRequirement - .copyFrom(each, orderElement)); + if (orderElement.canAddCriterionRequirement(each)) { + orderElement.addCriterionRequirement(DirectCriterionRequirement + .copyFrom(each, orderElement)); + } } } @@ -255,7 +257,9 @@ public abstract class OrderElementTemplate extends BaseEntity implements private void setupLabels(OrderElement orderElement) { for (Label each : getLabels()) { - orderElement.addLabel(each); + if (orderElement.checkAncestorsNoOtherLabelRepeated(each)) { + orderElement.addLabel(each); + } } }