diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarDetDiagramaAutobusController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarDetDiagramaAutobusController.java index 8cc451d17..e15115633 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarDetDiagramaAutobusController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarDetDiagramaAutobusController.java @@ -90,7 +90,7 @@ public class EditarDetDiagramaAutobusController extends MyGenericForwardComposer chkVendible.setChecked(detDiagramaAutobus.getVendible() == null ? true : detDiagramaAutobus.getVendible()); - if ((numefila == 2) || (numefila == 6)) { + if ((diagramaAutobus.getIndbarco() == null || !diagramaAutobus.getIndbarco()) && ((numefila == 2) || (numefila == 6))) { itemCombo = DetDiagramaAutobus.TV; List children = cmbTipo.getChildren(); @@ -126,7 +126,7 @@ public class EditarDetDiagramaAutobusController extends MyGenericForwardComposer rowVendible.setVisible(!noEsAsiento); rowDireccion.setVisible(!noEsAsiento); - itemCombo = noEsAsiento ? detDiagramaAutobus.getAsiento() : ASIENTO; + itemCombo = noEsAsiento ? detDiagramaAutobus.getAsiento().contains(DetDiagramaAutobus.BR) ? DetDiagramaAutobus.BR : detDiagramaAutobus.getAsiento() : ASIENTO; } } @@ -160,7 +160,8 @@ public class EditarDetDiagramaAutobusController extends MyGenericForwardComposer || str.equals(DetDiagramaAutobus.ME) || str.equals(DetDiagramaAutobus.WC) || str.equals(DetDiagramaAutobus.GE) - || str.equals(DetDiagramaAutobus.ES); + || str.equals(DetDiagramaAutobus.ES) + || str.contains(DetDiagramaAutobus.BR); } public void onClick$btnSalvar(Event ev) throws InterruptedException { @@ -288,7 +289,8 @@ public class EditarDetDiagramaAutobusController extends MyGenericForwardComposer || strSelected.equals(DetDiagramaAutobus.ME) || strSelected.equals(DetDiagramaAutobus.WC) || strSelected.equals(DetDiagramaAutobus.GE) - || strSelected.equals(DetDiagramaAutobus.ES)) { + || strSelected.equals(DetDiagramaAutobus.ES) + || strSelected.contains(DetDiagramaAutobus.BR)) { rowAsiento.setVisible(false); rowVendible.setVisible(false); diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/BusquedaDiagramaAutobusController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/BusquedaDiagramaAutobusController.java index 0f203a536..dbdf72047 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/BusquedaDiagramaAutobusController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/BusquedaDiagramaAutobusController.java @@ -4,14 +4,9 @@ */ package com.rjconsultores.ventaboletos.web.gui.controladores.esquemaoperacional; -import com.rjconsultores.ventaboletos.entidad.DiagramaAutobus; -import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; -import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; -import com.rjconsultores.ventaboletos.web.utilerias.paginacion.HibernateSearchObject; -import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; -import com.rjconsultores.ventaboletos.web.utilerias.render.RenderDiagramaAutobus; import java.util.HashMap; import java.util.Map; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Controller; @@ -24,6 +19,13 @@ import org.zkoss.zul.Intbox; import org.zkoss.zul.Paging; import org.zkoss.zul.Textbox; +import com.rjconsultores.ventaboletos.entidad.DiagramaAutobus; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; +import com.rjconsultores.ventaboletos.web.utilerias.paginacion.HibernateSearchObject; +import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; +import com.rjconsultores.ventaboletos.web.utilerias.render.RenderDiagramaAutobus; + /** * * @author Administrador @@ -101,10 +103,16 @@ public class BusquedaDiagramaAutobusController extends MyGenericForwardComposer Map args = new HashMap(); args.put("diagramaAutobus", d); args.put("diagramaAutobusList", diagramaAutobusList); - - openWindow("/gui/esquema_operacional/editarDiagramaAutobus.zul", - Labels.getLabel("editarDiagramaAutobusController.window.title"), - args, MODAL); + + if(d.getDiagramaautobusId() == null) { + openWindow("/gui/esquema_operacional/tipoDiagramaAutobus.zul", + Labels.getLabel("editarDiagramaAutobusController.window.title"), + args, MODAL); + } else { + openWindow("/gui/esquema_operacional/editarDiagramaAutobus.zul", + Labels.getLabel("editarDiagramaAutobusController.window.title"), + args, MODAL); + } } private void refreshLista() { @@ -142,6 +150,6 @@ public class BusquedaDiagramaAutobusController extends MyGenericForwardComposer } public void onClick$btnNovo(Event ev) { - verDiagramaAutobus(new DiagramaAutobus()); + verDiagramaAutobus(new DiagramaAutobus(false)); } } diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaAsientoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaAsientoController.java index d09a97934..b0fc3cb48 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaAsientoController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaAsientoController.java @@ -17,6 +17,7 @@ import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.WrongValueException; import org.zkoss.zk.ui.event.Event; +import org.zkoss.zk.ui.event.ForwardEvent; import org.zkoss.zk.ui.event.InputEvent; import org.zkoss.zkplus.databind.BindingListModel; import org.zkoss.zkplus.databind.BindingListModelList; @@ -45,6 +46,7 @@ import com.rjconsultores.ventaboletos.service.RutaSecuenciaService; import com.rjconsultores.ventaboletos.service.RutaService; import com.rjconsultores.ventaboletos.service.UsuarioService; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; +import com.rjconsultores.ventaboletos.vo.layout.DiagramaPoltronas; import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; @@ -189,9 +191,14 @@ public class EditarCorridaAsientoController extends MyGenericForwardComposer { private Textbox txtMotivo; private static Logger log = Logger.getLogger(EditarCorridaAsientoController.class); + private List layout; + @Override public void doAfterCompose(Component comp) throws Exception { esquemaCorrida = (EsquemaCorrida) Executions.getCurrent().getArg().get("esquemaCorrida"); + diagramaAutobus = diagramaAutoBusService.obtenerID(esquemaCorrida.getRolOperativo().getDiagramaAutobus().getDiagramaautobusId()); + + super.doAfterCompose(comp); lsOrigen = new ArrayList(); lsDestino = new ArrayList(); @@ -221,10 +228,7 @@ public class EditarCorridaAsientoController extends MyGenericForwardComposer { } - super.doAfterCompose(comp); - btnDefault = new Button(); - diagramaAutobus = diagramaAutoBusService.obtenerID(esquemaCorrida.getRolOperativo().getDiagramaAutobus().getDiagramaautobusId()); colorirAsientos(); txtAsiento.setValue(""); @@ -3255,4 +3259,59 @@ public class EditarCorridaAsientoController extends MyGenericForwardComposer { public Boolean isAsientoMaior54() { return diagramaAutobus.getCantasientos() > 54; } + + public Boolean isNotBarco() { + return !isBarco(); + } + + public Boolean isBarco() { + return diagramaAutobus.getIndbarco() != null && diagramaAutobus.getIndbarco(); + } + + public List getLayout() { + if(layout == null) { + construirLayout(); + } + return layout; + } + + private void construirLayout() { + layout = DiagramaPoltronas.getLayoutVazio(); + aplicarLayoutExistente(); + } + + private void aplicarLayoutExistente() { + if(diagramaAutobus == null) { + esquemaCorrida = (EsquemaCorrida) Executions.getCurrent().getArg().get("esquemaCorrida"); + diagramaAutobus = diagramaAutoBusService.obtenerID(esquemaCorrida.getRolOperativo().getDiagramaAutobus().getDiagramaautobusId()); + } + + if(diagramaAutobus.getDiagramaautobusId() != null) { + layout = DiagramaPoltronas.carregarLayoutExistente(diagramaAutobus.getDetDiagramaAutobusList()); + } + } + + public void onClickPoltrona(Event event){ + try { + if (event instanceof ForwardEvent) { + ForwardEvent ev = (ForwardEvent) event; + + Button button = (Button) ev.getOrigin().getTarget(); + + String asiento = button.getTooltiptext(); + + if (!txtAsiento.getValue().contains(asiento)) { + txtAsiento.setValue(txtAsiento.getValue().concat(asiento.concat(","))); + button.setSclass("myRed"); + } else { + txtAsiento.setValue(txtAsiento.getValue().replace(asiento.concat(","), "")); + button.setSclass("myGreen"); + } + } + } catch (Exception e) { + log.info("Asiento Inexistente"); + } + + } + } diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaController.java index 4533b6b65..c098f7252 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarCorridaController.java @@ -1260,11 +1260,11 @@ public class EditarCorridaController extends MyGenericForwardComposer { return; } - - openWindow( - "/gui/esquema_operacional/editarCorridaAsiento.zul", + + openWindow("/gui/esquema_operacional/editarCorridaAsiento.zul", Labels.getLabel("editarConfiguracionCorridaAsientoController.window.title"), args, MODAL); + } public void onClick$chkDoblePiso(Event ev) { diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarDiagramaAutobusController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarDiagramaAutobusController.java index aff175a18..189882908 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarDiagramaAutobusController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/EditarDiagramaAutobusController.java @@ -19,6 +19,7 @@ import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.WrongValueException; import org.zkoss.zk.ui.event.Event; +import org.zkoss.zk.ui.event.ForwardEvent; import org.zkoss.zk.ui.util.Clients; import org.zkoss.zul.Button; import org.zkoss.zul.Intbox; @@ -32,6 +33,7 @@ import com.rjconsultores.ventaboletos.service.CorridaService; import com.rjconsultores.ventaboletos.service.DiagramaAutobusService; import com.rjconsultores.ventaboletos.utilerias.ApplicationProperties; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; +import com.rjconsultores.ventaboletos.vo.layout.DiagramaPoltronas; import com.rjconsultores.ventaboletos.web.utilerias.LayoutDiagramaAutobus; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; @@ -237,6 +239,8 @@ public class EditarDiagramaAutobusController extends MyGenericForwardComposer { private Button btn_7_25; private Button btn_7_26; private static Logger log = Logger.getLogger(EditarDiagramaAutobusController.class); + + private List layout; public Intbox getTxtCantasSientos() { return txtCantasSientos; @@ -2367,20 +2371,23 @@ public class EditarDiagramaAutobusController extends MyGenericForwardComposer { @Override public void doAfterCompose(Component comp) throws Exception { + diagramaAutobus = (DiagramaAutobus) Executions.getCurrent().getArg().get("diagramaAutobus"); + super.doAfterCompose(comp); - diagramaAutobus = (DiagramaAutobus) Executions.getCurrent().getArg().get("diagramaAutobus"); if (diagramaAutobus.getDiagramaautobusId() != null) { diagramaAutobus = diagramaAutoBusService.obtenerID(diagramaAutobus.getDiagramaautobusId()); } - if (diagramaAutobus.getDetDiagramaAutobusList() == null) { - diagramaAutobus.setDetDiagramaAutobusList(new ArrayList()); - } else { - - for (DetDiagramaAutobus dd : diagramaAutobus.getDetDiagramaAutobusList()) { - Button button = getButtonAssento(dd.getNumefila(), dd.getNumecolumna()); - button.setLabel(dd.getAsiento()); + if(diagramaAutobus.getIndbarco() == null || !diagramaAutobus.getIndbarco()) { + if (diagramaAutobus.getDetDiagramaAutobusList() == null) { + diagramaAutobus.setDetDiagramaAutobusList(new ArrayList()); + } else { + + for (DetDiagramaAutobus dd : diagramaAutobus.getDetDiagramaAutobusList()) { + Button button = getButtonAssento(dd.getNumefila(), dd.getNumecolumna()); + button.setLabel(dd.getAsiento()); + } } } @@ -3257,6 +3264,10 @@ public class EditarDiagramaAutobusController extends MyGenericForwardComposer { return ApplicationProperties.getInstance().diagramaAutobusDosPestana(); } + public Boolean isNotBarco() { + return !isBarco(); + } + public String getDiagramaAutobus1() { return LayoutDiagramaAutobus.getDiagramaAutobus1(); } @@ -3265,4 +3276,42 @@ public class EditarDiagramaAutobusController extends MyGenericForwardComposer { return LayoutDiagramaAutobus.getDiagramaAutobus2(); } + public Boolean isBarco() { + return diagramaAutobus.getIndbarco() != null && diagramaAutobus.getIndbarco(); + } + + public List getLayout() { + if(layout == null) { + construirLayout(); + } + return layout; + } + + public void onClickPoltrona(Event event){ + if (event instanceof ForwardEvent) { + try { + ForwardEvent ev = (ForwardEvent) event; + String[] vetNome = ev.getOrigin().getTarget().getId().split("_"); + abrirDetalheDiagramaAutobus(Integer.valueOf(vetNome[1]), Integer.valueOf(vetNome[2]), (Button) ev.getOrigin().getTarget()); + } catch(Exception e) { + log.error(e.getMessage(), e); + } + } + } + + private void construirLayout() { + layout = DiagramaPoltronas.getLayoutVazio(); + aplicarLayoutExistente(); + } + + private void aplicarLayoutExistente() { + if(diagramaAutobus == null) { + diagramaAutobus = (DiagramaAutobus) Executions.getCurrent().getArg().get("diagramaAutobus"); + } + + if(diagramaAutobus.getDiagramaautobusId() != null) { + layout = DiagramaPoltronas.carregarLayoutExistente(diagramaAutobus.getDetDiagramaAutobusList()); + } + } + } diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/TipoDiagramaAutobusController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/TipoDiagramaAutobusController.java new file mode 100644 index 000000000..9b937fcb7 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/TipoDiagramaAutobusController.java @@ -0,0 +1,60 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package com.rjconsultores.ventaboletos.web.gui.controladores.esquemaoperacional; + +import java.util.HashMap; +import java.util.Map; + +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.util.resource.Labels; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.Executions; +import org.zkoss.zk.ui.event.Event; + +import com.rjconsultores.ventaboletos.entidad.DiagramaAutobus; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; + +@Controller("tipoDiagramaAutobusController") +@Scope("prototype") +public class TipoDiagramaAutobusController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + + private DiagramaAutobus diagramaAutobus; + private MyListbox diagramaAutobusList; + + @Override + public void doAfterCompose(Component comp) throws Exception { + super.doAfterCompose(comp); + diagramaAutobusList = (MyListbox) Executions.getCurrent().getArg().get("diagramaAutobusList"); + diagramaAutobus = (DiagramaAutobus) Executions.getCurrent().getArg().get("diagramaAutobus"); + } + + public void onClick$btnDiagramaBus(Event ev) { + verDiagramaAutobus(false); + } + + public void onClick$btnDiagramaBarco(Event ev) { + verDiagramaAutobus(true); + } + + @SuppressWarnings({ "rawtypes", "unchecked" }) + private void verDiagramaAutobus(Boolean indbarco) { + diagramaAutobus.setIndbarco(indbarco); + + Map args = new HashMap(); + args.put("diagramaAutobus", diagramaAutobus); + args.put("diagramaAutobusList", diagramaAutobusList); + + openWindow("/gui/esquema_operacional/editarDiagramaAutobus.zul", + Labels.getLabel("editarDiagramaAutobusController.window.title"), + args, MODAL); + + closeWindow(); + } + +} diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 12f2bb275..3b73cdeb7 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -1444,6 +1444,9 @@ busquedaDiagramaAutobusController.btnNovo.tooltiptext = Incluir busquedaDiagramaAutobusController.btnCerrar.tooltiptext = Cerrar busquedaDiagramaAutobusController.btnPesquisa.label = Búsqueda busquedaDiagramaAutobusController.lhDesc.label = Diagrama de autobús +busquedaDiagramaAutobusController.lblTipoDiagrama.label = Escoja el tipo del diagrama: +busquedaDiagramaAutobusController.btnDiagramaBus.label = Autobús +busquedaDiagramaAutobusController.btnDiagramaBarco.label = Barco # Pantalla coche Edición de Diagrama editarDiagramaAutobusController.window.title = Diagrama de autobús diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index be6662804..decd608e5 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -1494,6 +1494,9 @@ busquedaDiagramaAutobusController.btnNovo.tooltiptext = Incluir busquedaDiagramaAutobusController.btnCerrar.tooltiptext = Fechar busquedaDiagramaAutobusController.btnPesquisa.label = Pesquisa busquedaDiagramaAutobusController.lhDesc.label = Diagrama de autobús +busquedaDiagramaAutobusController.lblTipoDiagrama.label = Escolha o tipo do diagrama: +busquedaDiagramaAutobusController.btnDiagramaBus.label = Ônibus +busquedaDiagramaAutobusController.btnDiagramaBarco.label = Barco # Pantalla Veículo Edición de Diagrama editarDiagramaAutobusController.window.title = Diagrama de autobús diff --git a/web/gui/esquema_operacional/editarCorridaAsiento.zul b/web/gui/esquema_operacional/editarCorridaAsiento.zul index 2eac8a5ff..5a51ba0b6 100644 --- a/web/gui/esquema_operacional/editarCorridaAsiento.zul +++ b/web/gui/esquema_operacional/editarCorridaAsiento.zul @@ -8,7 +8,7 @@ @@ -51,7 +51,7 @@ - + @@ -59,7 +59,7 @@ label="${c:l('editarConfiguracionCorridaAsientoController.lbVagao2.value')}" /> - + @@ -354,7 +354,46 @@ - + + + + + + + + + + + + + + + + + +