From a4cf5ec392075d6cbd7d2b4439afdca1c68ad10e Mon Sep 17 00:00:00 2001 From: Lorenzo Tilve Date: Sun, 6 Dec 2009 20:45:01 +0100 Subject: [PATCH] ItEr37S06ValidacionEProbasFuncionaisItEr36S07: Fix with configuration unit criterion requirement combobox --- .../AssignedMachineCriterionsModel.java | 26 +++++++++++++++++++ .../IAssignedMachineCriterionsModel.java | 3 +++ .../MachineConfigurationController.java | 8 ++++++ .../worker/AssignedCriterionsModel.java | 6 +++++ .../worker/CriterionsController.java | 4 +++ .../worker/CriterionsMachineController.java | 5 ++++ .../worker/IAssignedCriterionsModel.java | 3 +++ .../main/webapp/common/css/navalpro_zk.css | 8 ++++++ .../machine/_machineConfigurationUnits.zul | 4 +-- 9 files changed, 65 insertions(+), 2 deletions(-) diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/AssignedMachineCriterionsModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/AssignedMachineCriterionsModel.java index 2eb7b6cae..9ef1cb1ff 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/AssignedMachineCriterionsModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/AssignedMachineCriterionsModel.java @@ -56,6 +56,13 @@ public class AssignedMachineCriterionsModel implements IAssignedMachineCriterion applicableResources.add(ResourceEnum.MACHINE); } + private static List applicableWorkerResources = new ArrayList(); + + static { + applicableWorkerResources.add(ResourceEnum.RESOURCE); + applicableWorkerResources.add(ResourceEnum.WORKER); + } + @Override @Transactional(readOnly = true) public void prepareForEdit(Resource resource) { @@ -180,12 +187,31 @@ public class AssignedMachineCriterionsModel implements IAssignedMachineCriterion return criterionsWithItsTypes; } + @Override + @Transactional(readOnly = true) + public List getCriterionWorkersWithItsType() { + criterionsWithItsTypes = new ArrayList(); + List listTypes = getCriterionWorkersTypes(); + for (CriterionType criterionType : listTypes) { + Set listCriterion = getDirectCriterions(criterionType); + getCriterionWithItsType(criterionType, listCriterion); + } + return criterionsWithItsTypes; + } + + @Transactional(readOnly = true) private List getCriterionTypes() { return criterionTypeDAO .getCriterionTypesByResources(applicableResources); } + @Transactional(readOnly = true) + private List getCriterionWorkersTypes() { + return criterionTypeDAO + .getCriterionTypesByResources(applicableWorkerResources); + } + private void getCriterionWithItsType(CriterionType type, Set children) { for (Criterion criterion : children) { diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/IAssignedMachineCriterionsModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/IAssignedMachineCriterionsModel.java index fdeb15f7b..7b550f6a6 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/IAssignedMachineCriterionsModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/IAssignedMachineCriterionsModel.java @@ -48,6 +48,8 @@ public interface IAssignedMachineCriterionsModel { List getCriterionWithItsType(); + List getCriterionWorkersWithItsType(); + Set getFilterCriterionSatisfactions(); void prepareForEdit(Resource resource); @@ -67,4 +69,5 @@ public interface IAssignedMachineCriterionsModel { void validate() throws ValidationException, IllegalStateException; void confirm() throws ValidationException, IllegalStateException; + } diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/MachineConfigurationController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/MachineConfigurationController.java index 4efad4c30..471732cf2 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/MachineConfigurationController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/machine/MachineConfigurationController.java @@ -22,22 +22,30 @@ package org.navalplanner.web.resources.machine; import static org.navalplanner.web.I18nHelper._; import java.math.BigDecimal; +import java.util.ArrayList; import java.util.Date; +import java.util.HashSet; import java.util.List; +import java.util.Set; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.navalplanner.business.common.exceptions.InstanceNotFoundException; +import org.navalplanner.business.resources.daos.ICriterionTypeDAO; import org.navalplanner.business.resources.entities.Criterion; +import org.navalplanner.business.resources.entities.CriterionType; import org.navalplanner.business.resources.entities.CriterionWithItsType; import org.navalplanner.business.resources.entities.MachineWorkerAssignment; import org.navalplanner.business.resources.entities.MachineWorkersConfigurationUnit; +import org.navalplanner.business.resources.entities.ResourceEnum; import org.navalplanner.business.resources.entities.Worker; import org.navalplanner.web.common.IMessagesForUser; import org.navalplanner.web.common.Level; import org.navalplanner.web.common.MessagesForUser; import org.navalplanner.web.common.Util; import org.navalplanner.web.common.components.Autocomplete; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.WrongValueException; import org.zkoss.zk.ui.util.GenericForwardComposer; diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/AssignedCriterionsModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/AssignedCriterionsModel.java index 12ffe64f4..a590acb26 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/AssignedCriterionsModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/AssignedCriterionsModel.java @@ -164,6 +164,12 @@ public class AssignedCriterionsModel implements IAssignedCriterionsModel { return criterionsWithItsTypes; } + @Override + @Transactional(readOnly = true) + public List getCriterionWorkersWithItsType() { + return getCriterionWithItsType(); + } + private List getCriterionTypes() { return criterionTypeDAO .getCriterionTypesByResources(applicableResources); diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/CriterionsController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/CriterionsController.java index d215956f8..89ca1d5aa 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/CriterionsController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/CriterionsController.java @@ -97,6 +97,10 @@ public class CriterionsController extends GenericForwardComposer { return assignedCriterionsModel.getCriterionWithItsType(); } + public List getCriterionWorkersWithItsTypes() { + return assignedCriterionsModel.getCriterionWorkersWithItsType(); + } + public void reload() { Util.reloadBindings(listingCriterions); forceSortGridSatisfaction(); diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/CriterionsMachineController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/CriterionsMachineController.java index 2398d54e3..57e2d7ca2 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/CriterionsMachineController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/CriterionsMachineController.java @@ -91,6 +91,11 @@ public class CriterionsMachineController extends GenericForwardComposer { return assignedMachineCriterionsModel.getCriterionWithItsType(); } + public List getCriterionWorkersWithItsTypes() { + // othermodel + return assignedMachineCriterionsModel.getCriterionWorkersWithItsType(); + } + public void reload() { Util.reloadBindings(listingCriterions); } diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/IAssignedCriterionsModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/IAssignedCriterionsModel.java index e55397897..e6d65dde7 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/IAssignedCriterionsModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/worker/IAssignedCriterionsModel.java @@ -7,6 +7,7 @@ package org.navalplanner.web.resources.worker; import java.util.List; import java.util.Set; + import org.navalplanner.business.common.exceptions.ValidationException; import org.navalplanner.business.resources.entities.CriterionWithItsType; import org.navalplanner.business.resources.entities.Worker; @@ -45,4 +46,6 @@ public interface IAssignedCriterionsModel { public boolean checkNotAllowSimultaneousCriterionsPerResource( CriterionSatisfactionDTO satisfaction); + + List getCriterionWorkersWithItsType(); } diff --git a/navalplanner-webapp/src/main/webapp/common/css/navalpro_zk.css b/navalplanner-webapp/src/main/webapp/common/css/navalpro_zk.css index 48546befb..edf4680e0 100644 --- a/navalplanner-webapp/src/main/webapp/common/css/navalpro_zk.css +++ b/navalplanner-webapp/src/main/webapp/common/css/navalpro_zk.css @@ -945,3 +945,11 @@ tr.z-tree-row-seld, tr.z-list-item-seld, .earned-parameter-column { width: 70px; } + +.z-panel-header { +/* color: #0F3B82; */ +} +.z-panel-body { +padding: 10px; +/* border-color: #0F3B82; */ +} \ No newline at end of file diff --git a/navalplanner-webapp/src/main/webapp/resources/machine/_machineConfigurationUnits.zul b/navalplanner-webapp/src/main/webapp/resources/machine/_machineConfigurationUnits.zul index 2da7f6f71..6c02a2f4f 100644 --- a/navalplanner-webapp/src/main/webapp/resources/machine/_machineConfigurationUnits.zul +++ b/navalplanner-webapp/src/main/webapp/resources/machine/_machineConfigurationUnits.zul @@ -83,7 +83,7 @@ @@ -134,4 +134,4 @@ - \ No newline at end of file +