From ba504b54aac613950450a25e6976ae67eaef516d Mon Sep 17 00:00:00 2001 From: frederico Date: Fri, 3 Jan 2020 20:01:01 +0000 Subject: [PATCH] bug#17121 qua:Wallysson dev:Thiago git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@99566 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../tarifas/BusquedaCotacaoController.java | 174 ++++++++++++++++++ .../tarifas/EditarCotacaoController.java | 153 +++++++++++++++ .../menu/item/tarifas/ItemMenuCotacao.java | 26 +++ .../utilerias/menu/menu_original.properties | 3 +- .../web/utilerias/render/RenderCotacao.java | 33 ++++ src/java/spring-config.xml | 3 +- web/WEB-INF/i3-label_es_MX.label | 11 ++ web/WEB-INF/i3-label_pt_BR.label | 11 ++ web/gui/tarifas/busquedaCotacao.zul | 77 ++++++++ web/gui/tarifas/editarCotacao.zul | 69 +++++++ 10 files changed, 558 insertions(+), 2 deletions(-) create mode 100644 src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/BusquedaCotacaoController.java create mode 100644 src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/EditarCotacaoController.java create mode 100644 src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/tarifas/ItemMenuCotacao.java create mode 100644 src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderCotacao.java create mode 100644 web/gui/tarifas/busquedaCotacao.zul create mode 100644 web/gui/tarifas/editarCotacao.zul diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/BusquedaCotacaoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/BusquedaCotacaoController.java new file mode 100644 index 000000000..c739302e3 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/BusquedaCotacaoController.java @@ -0,0 +1,174 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.tarifas; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +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.Combobox; +import org.zkoss.zul.Paging; + +import com.rjconsultores.ventaboletos.entidad.Cotacao; +import com.rjconsultores.ventaboletos.entidad.Moneda; +import com.rjconsultores.ventaboletos.service.MonedaService; +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.RenderCotacao; + +@Controller("busquedaCotacaoController") +@Scope("prototype") +public class BusquedaCotacaoController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + + @Autowired + private transient PagedListWrapper plwCotacao; + + private MyListbox cotacaolList; + private Paging pagingCtrlCotacao; + + @Autowired + private MonedaService monedaService; + + private Combobox cmbMoneda; + private List lsMoneda; + private org.zkoss.zul.Checkbox chcExibirInativos; + + @Override + public void doAfterCompose(Component comp) throws Exception { + + lsMoneda = monedaService.obterTodosExcetoReais(); + + super.doAfterCompose(comp); + + cotacaolList.setItemRenderer(new RenderCotacao()); + cotacaolList.addEventListener("onDoubleClick", new EventListener() { + + @Override + public void onEvent(Event event) throws Exception { + Cotacao rc = (Cotacao) cotacaolList.getSelected(); + verCotacao(rc); + } + }); + + refreshListaPesquisa(Boolean.FALSE); + } + + @SuppressWarnings({ "rawtypes", "unchecked" }) + private void verCotacao(Cotacao c) { + if (c == null) { + return; + } + + Map args = new HashMap(); + args.put("cotacao", c); + args.put("cotacaoList", cotacaolList); + args.put("busquedaCotacaoController", this); + + openWindow("/gui/tarifas/editarCotacao.zul", + Labels.getLabel("editarCotacaoController.window.title"), args, MODAL); + } + + public void refreshListaPesquisa(Boolean exibirMensagemPesquisaVazia) { + HibernateSearchObject excepcionRedondoBusqueda = new HibernateSearchObject(Cotacao.class, pagingCtrlCotacao.getPageSize()); + + if (!chcExibirInativos.isChecked()) { + excepcionRedondoBusqueda.addFilterEqual("activo", Boolean.TRUE); + } + + excepcionRedondoBusqueda.addSort("fecmodif", true); + + Moneda moneda = (Moneda) (cmbMoneda.getSelectedItem() != null ? cmbMoneda.getSelectedItem().getValue() : null); + if (moneda != null) { + excepcionRedondoBusqueda.addFilterEqual("moneda", moneda); + } + + plwCotacao.init(excepcionRedondoBusqueda, cotacaolList, pagingCtrlCotacao); + + if (cotacaolList.getData().length == 0 && exibirMensagemPesquisaVazia) { + try { + Messagebox.show(Labels.getLabel("MSG.ningunRegistro"), + Labels.getLabel("editarCotacaoController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + } catch (InterruptedException ex) { + } + } + } + + public void onClick$btnPesquisa(Event ev) throws InterruptedException { + refreshListaPesquisa(Boolean.TRUE); + } + + public void onClick$btnRefresh(Event ev) { + refreshListaPesquisa(Boolean.TRUE); + } + + public void onClick$btnNovo(Event ev) { + verCotacao(new Cotacao()); + } + + public PagedListWrapper getPlwCotacao() { + return plwCotacao; + } + + public void setPlwCotacao(PagedListWrapper plwCotacao) { + this.plwCotacao = plwCotacao; + } + + public MyListbox getCotacaolList() { + return cotacaolList; + } + + public void setCotacaolList(MyListbox cotacaolList) { + this.cotacaolList = cotacaolList; + } + + public Paging getPagingCtrlCotacao() { + return pagingCtrlCotacao; + } + + public void setPagingCtrlCotacao(Paging pagingCtrlCotacao) { + this.pagingCtrlCotacao = pagingCtrlCotacao; + } + + public MonedaService getMonedaService() { + return monedaService; + } + + public void setMonedaService(MonedaService monedaService) { + this.monedaService = monedaService; + } + + public Combobox getCmbMoneda() { + return cmbMoneda; + } + + public void setCmbMoneda(Combobox cmbMoneda) { + this.cmbMoneda = cmbMoneda; + } + + public List getLsMoneda() { + return lsMoneda; + } + + public void setLsMoneda(List lsMoneda) { + this.lsMoneda = lsMoneda; + } + + public org.zkoss.zul.Checkbox getChcExibirInativos() { + return chcExibirInativos; + } + + public void setChcExibirInativos(org.zkoss.zul.Checkbox chcExibirInativos) { + this.chcExibirInativos = chcExibirInativos; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/EditarCotacaoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/EditarCotacaoController.java new file mode 100644 index 000000000..deaec8bab --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/EditarCotacaoController.java @@ -0,0 +1,153 @@ + +package com.rjconsultores.ventaboletos.web.gui.controladores.tarifas; + +import java.util.Date; +import java.util.List; + +import org.apache.log4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.Executions; +import org.zkoss.zk.ui.event.Event; + +import com.rjconsultores.ventaboletos.entidad.Cotacao; +import com.rjconsultores.ventaboletos.entidad.Moneda; +import com.rjconsultores.ventaboletos.service.CotacaoService; +import com.rjconsultores.ventaboletos.service.MonedaService; +import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; +import com.rjconsultores.ventaboletos.web.utilerias.MyDatebox; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; +import com.rjconsultores.ventaboletos.web.utilerias.MyTextboxDecimal; + +@Controller("editarCotacaoController") +@Scope("prototype") +public class EditarCotacaoController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + + private static Logger log = Logger.getLogger(EditarCotacaoController.class); + + @Autowired + private MonedaService monedaService; + + @Autowired + private CotacaoService cotacaoService; + + private List lsMoneda; + private MyComboboxEstandar cmbMoneda; + private MyTextboxDecimal txtValor; + private Cotacao cotacao; + private MyListbox cotacaoList; + private MyDatebox txtFecmodif; + private BusquedaCotacaoController busquedaCotacaoController; + + @Override + public void doAfterCompose(Component comp) throws Exception { + lsMoneda = monedaService.obterTodosExcetoReais(); + + super.doAfterCompose(comp); + + cotacao = (Cotacao) Executions.getCurrent().getArg().get("cotacao"); + cotacaoList = (MyListbox) Executions.getCurrent().getArg().get("cotacaoList"); + busquedaCotacaoController = (BusquedaCotacaoController) Executions.getCurrent().getArg().get("busquedaCotacaoController"); + + txtFecmodif.setDisabled(Boolean.TRUE); + + if (cotacao.getCotacaoId() == null) { + txtFecmodif.setValue(new Date()); + } else { + txtFecmodif.setValue(cotacao.getFecmodif()); + txtValor.setDisabled(Boolean.TRUE); + cmbMoneda.setDisabled(Boolean.TRUE); + } + } + + public void onClick$btnSalvar(Event ev) { + if (cotacao.getCotacaoId() == null) { + + if (txtValor.getValueDecimal() == null && cmbMoneda.getSelectedItem() == null) { + return; + } + + cotacao.setActivo(Boolean.TRUE); + cotacao.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + cotacao.setFecmodif(new Date()); + cotacao.setValor(txtValor.getValueDecimal()); + + cotacaoService.inativarCotacoesAntigas(cotacao.getMoneda()); + cotacaoService.suscribir(cotacao); + cotacaoList.addItemNovo(cotacao); + busquedaCotacaoController.refreshListaPesquisa(Boolean.FALSE); + } + closeWindow(); + } + + public MyComboboxEstandar getCmbMoneda() { + return cmbMoneda; + } + + public void setCmbMoneda(MyComboboxEstandar cmbMoneda) { + this.cmbMoneda = cmbMoneda; + } + + public MonedaService getMonedaService() { + return monedaService; + } + + public void setMonedaService(MonedaService monedaService) { + this.monedaService = monedaService; + } + + public CotacaoService getCotacaoService() { + return cotacaoService; + } + + public void setCotacaoService(CotacaoService cotacaoService) { + this.cotacaoService = cotacaoService; + } + + public List getLsMoneda() { + return lsMoneda; + } + + public void setLsMoneda(List lsMoneda) { + this.lsMoneda = lsMoneda; + } + + public MyTextboxDecimal getTxtValor() { + return txtValor; + } + + public void setTxtValor(MyTextboxDecimal txtValor) { + this.txtValor = txtValor; + } + + public Cotacao getCotacao() { + return cotacao; + } + + public void setCotacao(Cotacao cotacao) { + this.cotacao = cotacao; + } + + public MyListbox getCotacaoList() { + return cotacaoList; + } + + public void setCotacaoList(MyListbox cotacaoList) { + this.cotacaoList = cotacaoList; + } + + public MyDatebox getTxtFecmodif() { + return txtFecmodif; + } + + public void setTxtFecmodif(MyDatebox txtFecmodif) { + this.txtFecmodif = txtFecmodif; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/tarifas/ItemMenuCotacao.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/tarifas/ItemMenuCotacao.java new file mode 100644 index 000000000..e926a1b94 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/tarifas/ItemMenuCotacao.java @@ -0,0 +1,26 @@ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.tarifas; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; + +public class ItemMenuCotacao extends DefaultItemMenuSistema { + + public ItemMenuCotacao() { + super("indexController.mniCotacao.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.TARIFAS.MENU.COTACAO"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/tarifas/busquedaCotacao.zul", + Labels.getLabel("busquedaCotacaoController.window.title"), getArgs(), desktop); + + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties index 2020ed134..cdd4c648a 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties @@ -43,7 +43,7 @@ confComerciales=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomer confComerciales.precioVentaja=com.rjconsultores.ventaboletos.web.utilerias.menu.item.tarifas.ItemMenuPrecioVentaja confComerciales.secretaria=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales.ItemMenuSecretaria confComerciales.convenio=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales.ItemMenuConvenio -#confComerciales.tipoCambioCiudad=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales.ItemMenuTipoCambioCiudad +confComerciales.tipoCambioCiudad=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales.ItemMenuTipoCambioCiudad confComerciales.motivoCancelacion=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales.ItemMenuMotivoCancelacion confComerciales.motivoDevolucaoBilhete=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales.ItemMenuMotivoDevolucaoBilhete confComerciales.configuracionCancelacion=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales.ItemMenuConfiguracionCancelacion @@ -124,6 +124,7 @@ tarifas.segopcional.seguradoraEmpresa=com.rjconsultores.ventaboletos.web.utileri tarifas.segopcional.segVKM=com.rjconsultores.ventaboletos.web.utilerias.menu.item.tarifas.ItemMenuSegVKM tarifas.excepcionPeaje=com.rjconsultores.ventaboletos.web.utilerias.menu.item.confcomerciales.ItemMenuExcepcionPeaje tarifas.redondeo=com.rjconsultores.ventaboletos.web.utilerias.menu.item.tarifas.ItemMenuRedondeo +tarifas.cotacao=com.rjconsultores.ventaboletos.web.utilerias.menu.item.tarifas.ItemMenuCotacao pricing=com.rjconsultores.ventaboletos.web.utilerias.menu.item.pricing.MenuPricing pricing.general=com.rjconsultores.ventaboletos.web.utilerias.menu.item.pricing.ItemMenuPricing pricing.especifico=com.rjconsultores.ventaboletos.web.utilerias.menu.item.pricing.ItemMenuPricingEspecifico diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderCotacao.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderCotacao.java new file mode 100644 index 000000000..06c259044 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderCotacao.java @@ -0,0 +1,33 @@ +package com.rjconsultores.ventaboletos.web.utilerias.render; + +import org.zkoss.zul.Listcell; +import org.zkoss.zul.Listitem; +import org.zkoss.zul.ListitemRenderer; + +import com.rjconsultores.ventaboletos.entidad.Cotacao; + +public class RenderCotacao implements ListitemRenderer { + + public void render(Listitem lstm, Object o) throws Exception { + Cotacao cotacao = (Cotacao) o; + + Listcell lc = new Listcell(); + + lc = new Listcell(cotacao.getCotacaoId().toString()); + lc.setParent(lstm); + + + lc = new Listcell(cotacao.getMoneda().getDescmoneda()); + lc.setParent(lstm); + + + lc = new Listcell(cotacao.getValor().toString()); + lc.setParent(lstm); + + + lc = new Listcell(cotacao.getActivo() == true ? "Sim" : "Nćo"); + lc.setParent(lstm); + + lstm.setAttribute("data", cotacao); + } +} diff --git a/src/java/spring-config.xml b/src/java/spring-config.xml index fba78735f..3c41b09da 100644 --- a/src/java/spring-config.xml +++ b/src/java/spring-config.xml @@ -492,7 +492,8 @@ com.rjconsultores.ventaboletos.entidad.CobrancaAdicionalHistorico com.rjconsultores.ventaboletos.entidad.ConfTotem com.rjconsultores.ventaboletos.entidad.TarifaEmbarcada - com.rjconsultores.ventaboletos.entidad.TarifaEmbarcadaHist + com.rjconsultores.ventaboletos.entidad.TarifaEmbarcadaHist + com.rjconsultores.ventaboletos.entidad.Cotacao diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 629722373..6ae6798d2 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -198,6 +198,7 @@ indexController.mniAutorizacionPerfil.label = Autorización perfil indexController.mniEstacion.label = Estación indexController.mniExcepcionRedondo.label = Excepción viaje ida y regreso indexController.mniRedondeo.label = Reglas de redondeo +indexController.mniCotacao.label=Cotação indexController.mniRedondeoMarca.label = Redondeo marca indexController.mniComisionistaExterno.label = Comisionista externo indexController.mniConvenio.label = Descuento @@ -4439,6 +4440,16 @@ busquedaRedondeoController.lhindaplicaartesp.label = Redondeo ARTESP busquedaRedondeoController.colhdindaplicaartesp.label = ARTESP busquedaRedondeoController.btnPesquisa.label = BĆŗsqueda +# Cotacao +busquedaCotacaoController.window.title=Cotação +editarCotacaoController.window.title=Cotação + +busquedaCotacaoController.moneda.label=Moeda +busquedaCotacaoController.exibirInativos.label=Exibir Inativos +busquedaCotacaoController.ativo.label=Ativo +busquedaCotacaoController.valor.label=Valor +busquedaCotacaoController.fecmodif.label=Data Criação + # Editar Redondeo editarRedondeoController.window.title = Reglas de redondeo editarRedondeoController.tabRedondeo.title = Redondeo diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index bc603b31f..56a502465 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -201,6 +201,7 @@ indexController.mniAutorizacionPerfil.label = Autorização Perfil indexController.mniEstacion.label = Estação indexController.mniExcepcionRedondo.label = Exceção Viagem Ida e Volta indexController.mniRedondeo.label = Regras de Arredondamento +indexController.mniCotacao.label=Cotação indexController.mniRedondeoMarca.label = Arredondamento Marca indexController.mniComisionistaExterno.label = Comissionista Externo indexController.mniConvenio.label = Desconto @@ -4666,6 +4667,16 @@ busquedaRedondeoController.lhindaplicaartesp.label = Arredondamento ARTESP busquedaRedondeoController.colhdindaplicaartesp.label = ARTESP busquedaRedondeoController.btnPesquisa.label = Pesquisa +# Cotacao +busquedaCotacaoController.window.title=Cotação +editarCotacaoController.window.title=Cotação + +busquedaCotacaoController.moneda.label=Moeda +busquedaCotacaoController.exibirInativos.label=Exibir Inativos +busquedaCotacaoController.ativo.label=Ativo +busquedaCotacaoController.valor.label=Valor +busquedaCotacaoController.fecmodif.label=Data Criação + # Editar Arredondamento editarRedondeoController.window.title = Regras de Arredondamento editarRedondeoController.tabRedondeo.title = Arredondamento diff --git a/web/gui/tarifas/busquedaCotacao.zul b/web/gui/tarifas/busquedaCotacao.zul new file mode 100644 index 000000000..d69e131fc --- /dev/null +++ b/web/gui/tarifas/busquedaCotacao.zul @@ -0,0 +1,77 @@ + + + + + + + + + +