From 57133ca9ee2ca263653fd3e1ef55ef8c6830cdea Mon Sep 17 00:00:00 2001 From: edgar Date: Fri, 5 Aug 2016 14:13:02 +0000 Subject: [PATCH] fixes bug #7379 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@58791 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../EditarCorridaController.java | 42 ++++++++++++++----- 1 file changed, 32 insertions(+), 10 deletions(-) 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 f91324538..38bf6ff93 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 @@ -44,6 +44,7 @@ import org.zkoss.zul.Timebox; import com.rjconsultores.ventaboletos.entidad.ClaseServicio; import com.rjconsultores.ventaboletos.entidad.Division; import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.EsquemaAsiento; import com.rjconsultores.ventaboletos.entidad.EsquemaCorrida; import com.rjconsultores.ventaboletos.entidad.EsquemaOperacional; import com.rjconsultores.ventaboletos.entidad.EsquemaTramo; @@ -371,16 +372,37 @@ public class EditarCorridaController extends MyGenericForwardComposer { } public void onClick$btnCopiar(Event ev) { - txtNumCorrida.setConstraint(""); - txtNumCorrida.setDisabled(false); - txtNumCorrida.setText(""); - isClone = true; - txtNumCorrida.setConstraint("no empty"); - esquemaCorrida = esquemaCorridaService.obtenerID(esquemaCorrida.getEsquemacorridaId()); // para carregar as propriedades lazy - EsquemaCorrida novo = new EsquemaCorrida(); - novo.clone(esquemaCorrida); - esquemaCorrida = novo; - lsEsquemaTramo = esquemaCorrida.getEsquemaTramoList(); + if (esquemaCorrida.getEsquemacorridaId() != null) { + // Carregar campos lazy + esquemaCorrida = esquemaCorridaService.obtenerID(esquemaCorrida.getEsquemacorridaId()); + + txtNumCorrida.setConstraint(""); + txtNumCorrida.setDisabled(false); + txtNumCorrida.setText(""); + txtNumCorrida.setConstraint("no empty"); + isClone = true; + + esquemaCorrida.setEsquemacorridaId(null); + esquemaCorrida.setNumCorrida(null); + for (EsquemaTramo esquemaTramo : esquemaCorrida.getEsquemaTramoList()) { + esquemaTramo.setEsquematramoId(null); + esquemaTramo.setEsquemaCorrida(esquemaCorrida); + } + + for (EsquemaAsiento esquemaAsiento : esquemaCorrida.getEsquemaAsientoList()) { + esquemaAsiento.setEsquemaasientoId(null); + esquemaAsiento.setEsquemaCorrida(esquemaCorrida); + } + + tratarEsquemaTramoList(); + } + } + + private void tratarEsquemaTramoList() { + lsEsquemaTramo.clear(); + lsEsquemaTramo.addAll(esquemaCorrida.getEsquemaTramoList()); + Collections.sort(lsEsquemaTramo); + esquemaCorrida.setEsquemaTramoList(lsEsquemaTramo); } public void clearCombobox(Combobox combobox) {