From 647f043ac3b223b06f265b09f36189de0b6f70f1 Mon Sep 17 00:00:00 2001 From: Lorenzo Tilve Date: Wed, 25 Nov 2009 17:14:49 +0100 Subject: [PATCH] ItEr35S09CUConfiguracionMaquinasItEr34S09: Configuration Unit Criterion requirements are added with explicit button press --- .../MachineConfigurationController.java | 30 +++++++++++-------- .../machine/_machineConfigurationUnits.zul | 8 ++--- 2 files changed, 21 insertions(+), 17 deletions(-) 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 e6307103b..5c33c3740 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 @@ -28,8 +28,6 @@ import java.util.List; 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.ICriterionDAO; -import org.navalplanner.business.resources.daos.IWorkerDAO; import org.navalplanner.business.resources.entities.Criterion; import org.navalplanner.business.resources.entities.CriterionWithItsType; import org.navalplanner.business.resources.entities.MachineWorkerAssignment; @@ -40,13 +38,14 @@ 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.zkoss.zk.ui.Component; import org.zkoss.zk.ui.WrongValueException; import org.zkoss.zk.ui.util.GenericForwardComposer; +import org.zkoss.zul.Button; import org.zkoss.zul.Constraint; import org.zkoss.zul.Datebox; import org.zkoss.zul.Grid; +import org.zkoss.zul.Listbox; import org.zkoss.zul.Listitem; import org.zkoss.zul.Row; import org.zkoss.zul.Rows; @@ -60,12 +59,6 @@ import org.zkoss.zul.api.Bandbox; */ public class MachineConfigurationController extends GenericForwardComposer { - @Autowired - private IWorkerDAO workerDAO; - - @Autowired - private ICriterionDAO criterionDAO; - private IMachineModel machineModel; private IMessagesForUser messages; @@ -118,14 +111,12 @@ public class MachineConfigurationController extends GenericForwardComposer { } public List getWorkerAssignments() { - // Need to specify concrete unit MachineWorkersConfigurationUnit unit = (MachineWorkersConfigurationUnit) this.machineModel .getConfigurationUnitsOfMachine().iterator().next(); return (List) unit.getWorkerAssignments(); } public List getRequiredCriterions() { - // Need to specify concrete unit MachineWorkersConfigurationUnit unit = (MachineWorkersConfigurationUnit) this.machineModel .getConfigurationUnitsOfMachine().iterator().next(); return (List) unit.getRequiredCriterions(); @@ -154,7 +145,10 @@ public class MachineConfigurationController extends GenericForwardComposer { return repeated; } - public void addCriterionRequirement(Listitem item, Bandbox bandbox) { + public void addCriterionRequirement(Button button) { + Bandbox bandbox = (Bandbox) button.getPreviousSibling(); + Listitem item = ((Listbox) bandbox.getFirstChild().getFirstChild()) + .getSelectedItem(); MachineWorkersConfigurationUnit unit = null; String unitString = ((Textbox) bandbox.getPreviousSibling()).getValue(); try { @@ -167,14 +161,23 @@ public class MachineConfigurationController extends GenericForwardComposer { CriterionWithItsType criterionAndType = (CriterionWithItsType) item .getValue(); bandbox.setValue(criterionAndType.getNameAndType()); - if (checkExistingCriterion(unit, criterionAndType.getCriterion())) { messages.showMessage(Level.ERROR, _("Criterion previously selected")); } else { machineModel.addCriterionRequirementToConfigurationUnit(unit, criterionAndType.getCriterion()); + bandbox.setValue(""); } + } + Util.reloadBindings(bandbox.getNextSibling().getNextSibling()); + } + + public void selectCriterionRequirement(Listitem item, Bandbox bandbox) { + if (item != null) { + CriterionWithItsType criterionAndType = (CriterionWithItsType) item + .getValue(); + bandbox.setValue(criterionAndType.getNameAndType()); } else { bandbox.setValue(""); } @@ -182,6 +185,7 @@ public class MachineConfigurationController extends GenericForwardComposer { Util.reloadBindings(bandbox.getNextSibling().getNextSibling()); } + public void deleteConfigurationUnit(MachineWorkersConfigurationUnit unit) { machineModel.removeConfigurationUnit(unit); Util.reloadBindings(configurationUnitsGrid); diff --git a/navalplanner-webapp/src/main/webapp/resources/machine/_machineConfigurationUnits.zul b/navalplanner-webapp/src/main/webapp/resources/machine/_machineConfigurationUnits.zul index 1236c9e41..d3c2a9ae6 100644 --- a/navalplanner-webapp/src/main/webapp/resources/machine/_machineConfigurationUnits.zul +++ b/navalplanner-webapp/src/main/webapp/resources/machine/_machineConfigurationUnits.zul @@ -49,7 +49,7 @@ - + @@ -82,7 +82,7 @@ + onSelect="configurationController.selectCriterionRequirement(self.selectedItem,self.parent.parent)"> @@ -96,7 +96,7 @@