From 30f691ea15cfa15acc734fcc4968b1494aaed47f Mon Sep 17 00:00:00 2001 From: "valdir.cordeiro" Date: Tue, 6 Dec 2022 10:42:06 -0300 Subject: [PATCH] =?UTF-8?q?58010=20-=20Falha=20sele=C3=A7=C3=A3o=20Bloquei?= =?UTF-8?q?o=20-=20ADM=20bug#al-1845=20dev:=20qua:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit O multiselect causa um bug com um duplo clique, foi necessário implementar o evento dentro do Renderer, pois com varios selecionados a tela chamava o objeto errado e era preciso selecionar antes de dar os dois cliques. --- pom.xml | 2 +- ...uedaConfRestricaoCanalVentaController.java | 15 +- .../render/RenderConfRestricaoCanalVenta.java | 50 +++ .../busquedaConfRestricaoCanalVenta.zul | 344 +++++++++--------- 4 files changed, 226 insertions(+), 185 deletions(-) diff --git a/pom.xml b/pom.xml index 2b1912e14..f34d4a88d 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 br.com.rjconsultores ventaboletosadm - 1.0.8 + 1.0.9 war diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/BusquedaConfRestricaoCanalVentaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/BusquedaConfRestricaoCanalVentaController.java index f5984ba17..8b596e7fb 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/BusquedaConfRestricaoCanalVentaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/esquemaoperacional/BusquedaConfRestricaoCanalVentaController.java @@ -15,8 +15,6 @@ import org.zkoss.util.resource.Labels; import org.zkoss.zhtml.Messagebox; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.event.Event; -import org.zkoss.zk.ui.event.EventListener; -import org.zkoss.zul.Button; import org.zkoss.zul.Combobox; import org.zkoss.zul.Comboitem; import org.zkoss.zul.Datebox; @@ -103,16 +101,9 @@ public class BusquedaConfRestricaoCanalVentaController extends MyGenericForwardC lsTipoPtoVta = tipoPtoVtaService.obtenerTodos(); super.doAfterCompose(comp); cmbRuta.setItemRenderer(new MyComboRutaRenderer()); - confRestricaoCanalVentaList.setItemRenderer(new RenderConfRestricaoCanalVenta()); - confRestricaoCanalVentaList.addEventListener("onDoubleClick", new EventListener() { - - @Override - public void onEvent(Event event) throws Exception { - ConfRestricaoCanalVenta conf = (ConfRestricaoCanalVenta) confRestricaoCanalVentaList.getSelected(); - verConfRestricaoCanalVenta(conf); - } - }); - + + confRestricaoCanalVentaList.setItemRenderer(new RenderConfRestricaoCanalVenta(confRestricaoCanalVentaList, this)); + refreshLista(); } diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderConfRestricaoCanalVenta.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderConfRestricaoCanalVenta.java index fc2766548..bd0ffef81 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderConfRestricaoCanalVenta.java +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderConfRestricaoCanalVenta.java @@ -1,38 +1,74 @@ package com.rjconsultores.ventaboletos.web.utilerias.render; import java.text.SimpleDateFormat; +import java.util.HashMap; +import java.util.Map; +import org.zkoss.util.resource.Labels; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zul.Listcell; import org.zkoss.zul.Listitem; import org.zkoss.zul.ListitemRenderer; import com.rjconsultores.ventaboletos.entidad.ConfRestricaoCanalVenta; +import com.rjconsultores.ventaboletos.web.gui.controladores.esquemaoperacional.BusquedaConfRestricaoCanalVentaController; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; public class RenderConfRestricaoCanalVenta implements ListitemRenderer { private SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); + private MyListbox confRestricaoCanalVentaList; + + private BusquedaConfRestricaoCanalVentaController telaPrincipal; + + public RenderConfRestricaoCanalVenta() { + super(); + } + + public RenderConfRestricaoCanalVenta(MyListbox confList, BusquedaConfRestricaoCanalVentaController telaMae) { + super(); + confRestricaoCanalVentaList = confList; + telaPrincipal = telaMae; + } + public void render(Listitem lstm, Object o) throws Exception { ConfRestricaoCanalVenta confRestricaoCanalVenta = (ConfRestricaoCanalVenta) o; + + EventListener doubleClick = new EventListener() { + @Override + public void onEvent(Event event) throws Exception { + verConfRestricaoCanalVenta(confRestricaoCanalVenta); + } + }; Listcell lc = new Listcell(); lc = new Listcell(confRestricaoCanalVenta.getConfRestricaoCanalVentaId().toString() == null ? "-" : confRestricaoCanalVenta.getConfRestricaoCanalVentaId().toString()); + lc.addEventListener("onDoubleClick", doubleClick); lc.setParent(lstm); lc = new Listcell(confRestricaoCanalVenta.getRuta() == null ? "-" : MyComboRutaRenderer.buscarDescricaoComboRuta(confRestricaoCanalVenta.getRuta())); lc.setParent(lstm); lc = new Listcell(confRestricaoCanalVenta.getDescConfRestricaoCanalVenta() == null ? "-" : confRestricaoCanalVenta.getDescConfRestricaoCanalVenta()); + lc.addEventListener("onDoubleClick", doubleClick); lc.setParent(lstm); lc = new Listcell(confRestricaoCanalVenta.getCorridaId() == null ? "-" : confRestricaoCanalVenta.getCorridaId().toString()); + lc.addEventListener("onDoubleClick", doubleClick); lc.setParent(lstm); lc = new Listcell(confRestricaoCanalVenta.getFecCorrida() == null ? "-" : sdf.format(confRestricaoCanalVenta.getFecCorrida())); + lc.addEventListener("onDoubleClick", doubleClick); lc.setParent(lstm); lc = new Listcell(buscarDescricaoVigencia(confRestricaoCanalVenta)); + lc.addEventListener("onDoubleClick", doubleClick); + lc.setParent(lstm); + lc.setParent(lstm); lstm.setAttribute("data", confRestricaoCanalVenta); @@ -44,5 +80,19 @@ public class RenderConfRestricaoCanalVenta implements ListitemRenderer { } return " - "; } + + @SuppressWarnings({ "rawtypes", "unchecked" }) + private void verConfRestricaoCanalVenta(ConfRestricaoCanalVenta conf) { + if (conf == null) { + return; + } + Map args = new HashMap(); + args.put("confRestricaoCanalVenta", conf); + args.put("confRestricaoCanalVentaList", confRestricaoCanalVentaList); + + telaPrincipal.openWindow("/gui/esquema_operacional/editarConfRestricaoCanalVenta.zul", + Labels.getLabel("editarConfRestricaoCanalVentaController.window.title"), + args, PantallaUtileria.MODAL); + } } diff --git a/web/gui/esquema_operacional/busquedaConfRestricaoCanalVenta.zul b/web/gui/esquema_operacional/busquedaConfRestricaoCanalVenta.zul index 6b874c931..243668681 100644 --- a/web/gui/esquema_operacional/busquedaConfRestricaoCanalVenta.zul +++ b/web/gui/esquema_operacional/busquedaConfRestricaoCanalVenta.zul @@ -1,173 +1,173 @@ - - - - - - - - - -