From 9dee1d7f748f1918be9490fe33d6486fe92a6e69 Mon Sep 17 00:00:00 2001 From: "bruno.neves" Date: Mon, 28 Aug 2017 22:52:44 +0000 Subject: [PATCH] =?UTF-8?q?fix=20Bug=20#=209072=20-=20foi=20alterada=20a?= =?UTF-8?q?=20logica=20de=20inser=C3=A7=C3=A3o=20e=20remo=C3=A7=C3=A3o=20d?= =?UTF-8?q?o=20canal=20de=20venda?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@73221 d1611594-4594-4d17-8e1d-87c2c4800839 --- ...ricingEspecificoCanalVendasController.java | 46 +++++++++++-------- .../EditarPricingEspecificoController.java | 24 ++++++---- web/WEB-INF/i3-label_pt_BR.label | 1 + web/gui/pricing/editarPricingEspecifico.zul | 2 +- 4 files changed, 46 insertions(+), 27 deletions(-) diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/pricing/EditarPricingEspecificoCanalVendasController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/pricing/EditarPricingEspecificoCanalVendasController.java index dd322cb68..c01401c57 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/pricing/EditarPricingEspecificoCanalVendasController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/pricing/EditarPricingEspecificoCanalVendasController.java @@ -36,7 +36,7 @@ public class EditarPricingEspecificoCanalVendasController extends MyGenericForwa private MyListbox pricingListEspCanalVenda; private List lspricingCanal; private List lsPtovata; - + private List pricingEspecificoADesativarCanal; public List getLsPtovata() { return lsPtovata; } @@ -60,6 +60,7 @@ public class EditarPricingEspecificoCanalVendasController extends MyGenericForwa public void doAfterCompose(Component comp) throws Exception { lsPtovata = puntoVentaService.obtenerTodos(); pricingEspecifico = (PricingEspecifico) Executions.getCurrent().getArg().get("pricingEspecifico"); + if(pricingEspecifico.getPricingespecificoId() != null){ pricingEspecifico = pricingEspecificoService.obtenerID(pricingEspecifico.getPricingespecificoId()); lspricingCanal = pricingEspecifico.getPricingEspecificoCanalVendasList(); @@ -67,6 +68,7 @@ public class EditarPricingEspecificoCanalVendasController extends MyGenericForwa } pricingEspecificoCanal = (PricingEspecificoCanalVendas) Executions.getCurrent().getArg().get("pricingEspecificoCanal"); + pricingEspecificoADesativarCanal = (List) Executions.getCurrent().getArg().get("pricingEspecificoADesativarCanal"); pricingListEspCanalVenda = (MyListbox) Executions.getCurrent().getArg().get("pricingListEspCanal"); isEdicao = (Boolean) Executions.getCurrent().getArg().get("isEdicao"); @@ -76,7 +78,6 @@ public class EditarPricingEspecificoCanalVendasController extends MyGenericForwa } - public void onClick$btnAdicionarPricingEspCanal(Event ev) throws Exception { PricingEspecificoCanalVendas pricingCanal = new PricingEspecificoCanalVendas((TipoPuntoVenta)cmbPtovta.getSelectedItem().getValue(), pricingEspecifico, UsuarioLogado.getUsuarioLogado().getUsuarioId()); @@ -89,30 +90,39 @@ public class EditarPricingEspecificoCanalVendasController extends MyGenericForwa Hibernate.initialize(pricingEspecifico); Hibernate.initialize(pricingEspecificoCanal); - if (pricingEspecificoCanal.getPricingEspecificoCanalId() != null && peoList.contains(pricingCanal)) { + if (peoList.contains(pricingCanal)) { int index = peoList.indexOf(pricingCanal); if(index >= 0) { peoList.set(index, pricingCanal); } } else { peoList.add(pricingCanal); - } - if (pricingEspecifico != null && pricingEspecifico.getPricingespecificoId() != null) { - pricingEspecifico = pricingEspecificoService.obtenerID(pricingEspecifico.getPricingespecificoId().longValue()); - } - pricingEspecificoCanal.setActivo(Boolean.TRUE); - pricingEspecifico.setPricingEspecificoCanalVendasList(peoList); - pricingListEspCanalVenda.addItemNovo(pricingCanal); - if(pricingListEspCanalVenda.getSize()>1){ - TipoPuntoVenta tpv = puntoVentaService.obtenerID(new Short("-1")); - PricingEspecificoCanalVendas pecv = new PricingEspecificoCanalVendas(); - pecv.setTipoPtovta(tpv); - pecv.setActivo(Boolean.TRUE); - pecv.setPricingEspecifico(pricingEspecifico); - pricingListEspCanalVenda.removeItem(pecv); + if (pricingEspecifico != null && pricingEspecifico.getPricingespecificoId() != null) { + pricingEspecifico = pricingEspecificoService.obtenerID(pricingEspecifico.getPricingespecificoId().longValue()); + } + + pricingEspecificoCanal.setActivo(Boolean.TRUE); + pricingEspecifico.setPricingEspecificoCanalVendasList(peoList); + pricingListEspCanalVenda.addItemNovo(pricingCanal); + if(pricingListEspCanalVenda.getSize()>1 && pricingCanal.getTipoPtovta().getTipoptovtaId() != -1){ + TipoPuntoVenta tpv = puntoVentaService.obtenerID(new Short("-1")); + PricingEspecificoCanalVendas pecv = new PricingEspecificoCanalVendas(); + pecv.setTipoPtovta(tpv); + pecv.setActivo(Boolean.TRUE); + pecv.setPricingEspecifico(pricingEspecifico); + pricingListEspCanalVenda.removeItem(pecv); + pricingEspecificoADesativarCanal.add(pecv); + pricingEspecifico.getPricingEspecificoCanalVendasList().get(pricingEspecifico.getPricingEspecificoCanalVendasList().indexOf(pecv)).setActivo(Boolean.FALSE); + } else if(pricingListEspCanalVenda.getSize()>1 && pricingCanal.getTipoPtovta().getTipoptovtaId() == -1 ){ + for (PricingEspecificoCanalVendas pricingEspecificoCanalVendas : peoList) { + if(pricingEspecificoCanalVendas.getTipoPtovta().getTipoptovtaId() != -1){ + pricingListEspCanalVenda.removeItem(pricingEspecificoCanalVendas); + } + } + + } } - closeWindow(); } public void onClick$btnApagarPricingEspCanal(Event ev) throws Exception { diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/pricing/EditarPricingEspecificoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/pricing/EditarPricingEspecificoController.java index b7cb02121..bb773456e 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/pricing/EditarPricingEspecificoController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/pricing/EditarPricingEspecificoController.java @@ -182,14 +182,7 @@ public class EditarPricingEspecificoController extends MyGenericForwardComposer pricingListEspCanal.setData(pricingEspecifico.getPricingEspecificoCanalListActivos()); - pricingListEspCanal.addEventListener("onDoubleClick", new EventListener() { - @Override - public void onEvent(Event event) throws Exception { - PricingEspecificoCanalVendas especificoCanalVendas = (PricingEspecificoCanalVendas) pricingListEspCanal.getSelected(); - verPricingEspecificoCanal(especificoCanalVendas, true); - } - }); } fechaInicio.focus(); @@ -227,6 +220,7 @@ public class EditarPricingEspecificoController extends MyGenericForwardComposer args.put("pricingEspecificoCanal", especificoCanalVendas); args.put("isEdicao", isEdicao); args.put("pricingListEspCanal", pricingListEspCanal); + args.put("pricingEspecificoADesativarCanal",pricingEspecificoADesativarCanal); openWindow("/gui/pricing/editarPricingEspecificoCanalVendas.zul", Labels.getLabel("editarPricingController.window.title"), args, MODAL); @@ -295,7 +289,7 @@ public class EditarPricingEspecificoController extends MyGenericForwardComposer Labels.getLabel("editarPricingController.window.title"), Messagebox.OK, Messagebox.EXCLAMATION); } else { - int resp = Messagebox.show(Labels.getLabel("editarPricingEspecificoAgenciaController.MSG.borrarPergunta"), + int resp = Messagebox.show(Labels.getLabel("editarPricingEspecificoCanalVendaController.MSG.borrarPergunta"), Labels.getLabel("busquedaPricingEspecificoController.window.title"), Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); if (resp == Messagebox.YES) { @@ -407,8 +401,22 @@ public class EditarPricingEspecificoController extends MyGenericForwardComposer } List pecv = (List) pricingListEspCanal.getModel(); List pea = (List) pricingListEspAgencia.getModel(); + + pricingEspecifico.setPricingEspecificoAgenciasList(pea); pricingEspecifico.setPricingEspecificoCanalVendasList(pecv); + + if(pecv.size()>1){ + TipoPuntoVenta tpv = puntoVentaService.obtenerID(new Short("-1")); + PricingEspecificoCanalVendas canalTODOS = new PricingEspecificoCanalVendas(); + canalTODOS.setTipoPtovta(tpv); + canalTODOS.setActivo(Boolean.TRUE); + canalTODOS.setPricingEspecifico(pricingEspecifico); + if(pricingEspecifico.getPricingEspecificoCanalVendasList().contains(canalTODOS)){ + pricingEspecifico.getPricingEspecificoCanalVendasList().get(pricingEspecifico.getPricingEspecificoCanalVendasList().indexOf(canalTODOS)).setActivo(Boolean.FALSE); + } + } + if (pricingEspecifico.getCategoria() == null) { diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 8e632b19f..eb7c626ec 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -3275,6 +3275,7 @@ editarPricingEspecificoOcupacionController.ocupacionInicial.label=Ocupação Ini editarPricingEspecificoOcupacionController.ocupacionFinal.label=Ocupação Final editarPricingEspecificoOcupacionController.MSG.borrarPergunta = Deseja Eliminar Ocupação? editarPricingEspecificoAgenciaController.MSG.borrarPergunta = Deseja Eliminar Agência? +editarPricingEspecificoCanalVendaController.MSG.borrarPergunta = Deseja Eliminar Canal Venda? editarPricingEspecificoOcupacionController.ocupacao.label = Ocupação editarPricingEspecificoOcupacionController.agencia.label = Agência editarPricingEspecificoOcupacionController.MSG.noPricingEspecificoOcupacion = Ocupação não informado. diff --git a/web/gui/pricing/editarPricingEspecifico.zul b/web/gui/pricing/editarPricingEspecifico.zul index e8f37036e..04277ff71 100644 --- a/web/gui/pricing/editarPricingEspecifico.zul +++ b/web/gui/pricing/editarPricingEspecifico.zul @@ -267,7 +267,7 @@ tooltiptext="${c:l('editarPricingController.btnApagarAgencia.tooltiptext')}" /> -