From 772e5e9dd0cd963347665ff02c8c043e8814f941 Mon Sep 17 00:00:00 2001 From: Leonardo Oliveira Date: Wed, 24 Jul 2024 18:01:02 -0300 Subject: [PATCH] =?UTF-8?q?Bolivariano=20-=20Autoriza=C3=A7=C3=A3o=20de=20?= =?UTF-8?q?viagem=20fixes=20bug#AL-4453?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 6 +- .../catalogos/EditarCategoriaController.java | 99 +++++++- .../EditarFormAutorizacaoController.java | 120 ++++++++++ .../RenderCategoriaFormAutorizacao.java | 21 ++ src/java/spring-config.xml | 2 +- web/WEB-INF/i3-label_en.label | 9 + web/WEB-INF/i3-label_es_MX.label | 9 + web/WEB-INF/i3-label_fr_FR.label | 9 + web/WEB-INF/i3-label_pt_BR.label | 8 + web/gui/catalogos/editarCategoria.zul | 225 ++++++++++-------- web/gui/catalogos/editarFormAutorizacao.zul | 48 ++++ 11 files changed, 457 insertions(+), 99 deletions(-) create mode 100644 src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarFormAutorizacaoController.java create mode 100644 src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderCategoriaFormAutorizacao.java create mode 100644 web/gui/catalogos/editarFormAutorizacao.zul diff --git a/pom.xml b/pom.xml index 98585cb0c..034718910 100644 --- a/pom.xml +++ b/pom.xml @@ -4,12 +4,12 @@ 4.0.0 br.com.rjconsultores ventaboletosadm - 1.103.0 + 1.104.0 war - 1.78.0 - 1.63.0 + 1.88.0 + 1.76.0 UTF-8 diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarCategoriaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarCategoriaController.java index 7e5bfff63..202882c86 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarCategoriaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarCategoriaController.java @@ -6,7 +6,9 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.catalogos; import java.util.Arrays; import java.util.Calendar; +import java.util.HashMap; import java.util.List; +import java.util.Map; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -17,22 +19,29 @@ 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 org.zkoss.zk.ui.event.EventListener; import org.zkoss.zul.Button; import org.zkoss.zul.Checkbox; import org.zkoss.zul.Combobox; import org.zkoss.zul.Messagebox; +import org.zkoss.zul.Tab; import org.zkoss.zul.api.Comboitem; import com.rjconsultores.ventaboletos.entidad.Categoria; +import com.rjconsultores.ventaboletos.entidad.CategoriaFormAutorizacao; +import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.GrupoCategoria; import com.rjconsultores.ventaboletos.enums.TipoDescontoBPe; import com.rjconsultores.ventaboletos.enums.TipoDescontoMonitrip; +import com.rjconsultores.ventaboletos.service.CategoriaFormAutorizacaoService; import com.rjconsultores.ventaboletos.service.CategoriaService; +import com.rjconsultores.ventaboletos.service.EmpresaService; import com.rjconsultores.ventaboletos.service.GrupoCategoriaService; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; import com.rjconsultores.ventaboletos.web.utilerias.MyTextbox; +import com.rjconsultores.ventaboletos.web.utilerias.render.RenderCategoriaFormAutorizacao; /** * @@ -47,7 +56,11 @@ public class EditarCategoriaController extends MyGenericForwardComposer { private CategoriaService categoriaService; @Autowired private GrupoCategoriaService grupoCategoriaService; - + @Autowired + private EmpresaService empresaService; + @Autowired + private CategoriaFormAutorizacaoService categoriaFormAutorizacaoService; + private Categoria categoria; private MyListbox categoriaList; private Button btnApagar; @@ -64,16 +77,25 @@ public class EditarCategoriaController extends MyGenericForwardComposer { private Checkbox chkIndnaousaassento; private Checkbox chkIndvendenaapi; private Checkbox chkIndExigeIdentidade; + private Checkbox chkEmiteFormularioAutorizacao; private Checkbox chkIndntegracaoAGR; + private MyListbox tipoPassagemAutorizacaoList; + private List lsGrupoCategoria; private List lsTipoDescontoMonitrips; private List lsTipoDescontoBPe; + + private List lsEmpresa; + + private List lsTipoPassagemAutorizacao; private static String CVESISTEMA_FIDELIDADE = "FIDELIDADE"; + private Tab tabAutorizacao; + @Override public void doAfterCompose(Component comp) throws Exception { super.doAfterCompose(comp); @@ -88,6 +110,9 @@ public class EditarCategoriaController extends MyGenericForwardComposer { categoria = (Categoria) Executions.getCurrent().getArg().get("categoria"); categoriaList = (MyListbox) Executions.getCurrent( ).getArg().get("categoriaList"); + + lsTipoPassagemAutorizacao = categoriaFormAutorizacaoService.obtenerTodosPorCategoria(categoria.getCategoriaId()); + if (categoria.getCategoriaId() == null) { btnApagar.setVisible(Boolean.FALSE); } else if(CVESISTEMA_FIDELIDADE.equals(categoria.getCvesistema())){ @@ -117,12 +142,67 @@ public class EditarCategoriaController extends MyGenericForwardComposer { chkIndExigeIdentidade.setChecked((categoria.getIndExigeIdentidade() == null) ? false : categoria.getIndExigeIdentidade()); chkIndntegracaoAGR.setChecked(categoria.getIndIntegracaoAGR()); + chkEmiteFormularioAutorizacao.setChecked(categoria.getIndEmiteFormularioAutorizacao()); + chkEmiteFormularioAutorizacao.addEventListener("onClick", new EventListener() { + @Override + public void onEvent(Event event) throws Exception { + tabAutorizacao.setVisible(chkEmiteFormularioAutorizacao.isChecked()); + } + }); if (categoria.getGrupoCategoria() != null) { cmbGrupoCategoria.setValue(categoria.getGrupoCategoria().getDescGrupo()); } txtNome.focus(); + + lsTipoPassagemAutorizacao = categoriaFormAutorizacaoService.obtenerTodosPorCategoria(categoria.getCategoriaId()); + tipoPassagemAutorizacaoList.setItemRenderer(new RenderCategoriaFormAutorizacao()); + tipoPassagemAutorizacaoList.addEventListener("onDoubleClick", new EventListener() { + + @Override + public void onEvent(Event event) throws Exception { + CategoriaFormAutorizacao form = (CategoriaFormAutorizacao) tipoPassagemAutorizacaoList.getSelected(); + verFormAutorizacao(form); + } + }); + tipoPassagemAutorizacaoList.setData(lsTipoPassagemAutorizacao); + } + + private void verFormAutorizacao(CategoriaFormAutorizacao form) { + Map args = new HashMap(); + args.put("form", form); + args.put("formList", tipoPassagemAutorizacaoList); + args.put("categoria", categoria); + + openWindow("/gui/catalogos/editarFormAutorizacao.zul", + Labels.getLabel("editarCategoriaController.window.title"), args, MODAL); + } + + public void onClick$btnAdicionarForm(Event ev) throws InterruptedException { + verFormAutorizacao(new CategoriaFormAutorizacao()); + } + + public void onClick$btnRemoverForm(Event ev) throws InterruptedException { + int resp = Messagebox.show( + Labels.getLabel("editarFormAutorizacaoController.MSG.borrarPergunta"), + Labels.getLabel("editarFormAutorizacaoController.window.title"), + Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); + + if (resp == Messagebox.YES) { + CategoriaFormAutorizacao form = (CategoriaFormAutorizacao)tipoPassagemAutorizacaoList.getSelected(); + + categoriaFormAutorizacaoService.borrar(form); + + Messagebox.show( + Labels.getLabel("editarFormAutorizacaoController.MSG.borrarOK"), + Labels.getLabel("editarFormAutorizacaoController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + tipoPassagemAutorizacaoList.removeItem(form); + + } + } public void onClick$btnSalvar(Event ev) throws InterruptedException { txtNome.getValue(); @@ -136,6 +216,7 @@ public class EditarCategoriaController extends MyGenericForwardComposer { categoria.setIndvendeapi(chkIndvendenaapi.isChecked()); categoria.setIndExigeIdentidade(chkIndExigeIdentidade.isChecked()); categoria.setIndIntegracaoAGR(chkIndntegracaoAGR.isChecked()); + categoria.setIndEmiteFormularioAutorizacao(chkEmiteFormularioAutorizacao.isChecked()); Comboitem grupo = cmbGrupoCategoria.getSelectedItem(); @@ -280,5 +361,21 @@ public class EditarCategoriaController extends MyGenericForwardComposer { public void setLsTipoDescontoBPe(List lsTipoDescontoBPe) { this.lsTipoDescontoBPe = lsTipoDescontoBPe; } + + public List getLsEmpresa() { + return lsEmpresa; + } + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + public MyListbox getTipoPassagemAutorizacaoList() { + return tipoPassagemAutorizacaoList; + } + + public void setTipoPassagemAutorizacaoList(MyListbox tipoPassagemAutorizacaoList) { + this.tipoPassagemAutorizacaoList = tipoPassagemAutorizacaoList; + } } diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarFormAutorizacaoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarFormAutorizacaoController.java new file mode 100644 index 000000000..d3559d0ff --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarFormAutorizacaoController.java @@ -0,0 +1,120 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.catalogos; + +import java.util.List; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkforge.ckez.CKeditor; +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 org.zkoss.zul.Combobox; +import org.zkoss.zul.Messagebox; + +import com.rjconsultores.ventaboletos.entidad.Categoria; +import com.rjconsultores.ventaboletos.entidad.CategoriaFormAutorizacao; +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.service.CategoriaFormAutorizacaoService; +import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; + +@Controller("editarFormAutorizacaoController") +@Scope("prototype") +public class EditarFormAutorizacaoController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + + @Autowired + private EmpresaService empresaService; + @Autowired + private CategoriaFormAutorizacaoService categoriaFormAutorizacaoService; + private CategoriaFormAutorizacao form; + private MyListbox tipoPassagemAutorizacaoList; + private Combobox cmbEmpresa; + private List lsEmpresa; + private CKeditor textoAutorizacao; + private Categoria categoria; + + @Override + public void doAfterCompose(Component comp) throws Exception { + form = (CategoriaFormAutorizacao) Executions.getCurrent().getArg().get("form"); + tipoPassagemAutorizacaoList = (MyListbox) Executions.getCurrent().getArg().get("formList"); + categoria = (Categoria) Executions.getCurrent().getArg().get("categoria"); + lsEmpresa = empresaService.obtenerTodos(); + super.doAfterCompose(comp); + } + + public void onClick$btnSalvar(Event ev) throws InterruptedException { + form.setCategoria(categoria); + form.setTexto(textoAutorizacao.getValue()); + categoriaFormAutorizacaoService.salvar(form); + //categoria.getFormsAutorizacao().add(form); + tipoPassagemAutorizacaoList.addItem(form); + closeWindow(); + } + + public void onClick$btnApagar(Event ev) throws InterruptedException { + int resp = Messagebox.show( + Labels.getLabel("editarFormAutorizacaoController.MSG.borrarPergunta"), + Labels.getLabel("editarFormAutorizacaoController.window.title"), + Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); + + if (resp == Messagebox.YES) { + + categoriaFormAutorizacaoService.borrar(form); + + Messagebox.show( + Labels.getLabel("editarFormAutorizacaoController.MSG.borrarOK"), + Labels.getLabel("editarFormAutorizacaoController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + tipoPassagemAutorizacaoList.removeItem(form); + + closeWindow(); + } + } + + + public CategoriaFormAutorizacao getForm() { + return form; + } + + + public void setForm(CategoriaFormAutorizacao form) { + this.form = form; + } + + + public MyListbox getTipoPassagemAutorizacaoList() { + return tipoPassagemAutorizacaoList; + } + + + public void setTipoPassagemAutorizacaoList(MyListbox tipoPassagemAutorizacaoList) { + this.tipoPassagemAutorizacaoList = tipoPassagemAutorizacaoList; + } + + + public Combobox getCmbEmpresa() { + return cmbEmpresa; + } + + + public void setCmbEmpresa(Combobox cmbEmpresa) { + this.cmbEmpresa = cmbEmpresa; + } + + + public List getLsEmpresa() { + return lsEmpresa; + } + + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderCategoriaFormAutorizacao.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderCategoriaFormAutorizacao.java new file mode 100644 index 000000000..4e9aeaa97 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderCategoriaFormAutorizacao.java @@ -0,0 +1,21 @@ +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.CategoriaFormAutorizacao; + +public class RenderCategoriaFormAutorizacao implements ListitemRenderer { + + public void render(Listitem lstm, Object o) throws Exception { + CategoriaFormAutorizacao form = (CategoriaFormAutorizacao) o; + + Listcell lc = new Listcell(); + + lc = new Listcell(form.getEmpresa().getNombempresa()); + lc.setParent(lstm); + + lstm.setAttribute("data", form); + } +} diff --git a/src/java/spring-config.xml b/src/java/spring-config.xml index eb939b197..575cd5c02 100644 --- a/src/java/spring-config.xml +++ b/src/java/spring-config.xml @@ -477,7 +477,7 @@ com.rjconsultores.ventaboletos.entidad.CaixaContrato com.rjconsultores.ventaboletos.entidad.TipoLancamentoCaixa com.rjconsultores.ventaboletos.entidad.TarifaConvenioTransport - + com.rjconsultores.ventaboletos.entidad.CategoriaFormAutorizacao diff --git a/web/WEB-INF/i3-label_en.label b/web/WEB-INF/i3-label_en.label index 0e430dcb1..8ad058334 100644 --- a/web/WEB-INF/i3-label_en.label +++ b/web/WEB-INF/i3-label_en.label @@ -2900,6 +2900,11 @@ editarCategoriaController.lbIndemitetermorecusa.value = Emite Termo de Recusa editarCategoriaController.lbIndnaousaassento.value = Não usar assento na venda de pacote editarCategoriaController.lbIndvendenaapi.value = Vende na API editarCategoriaController.lbNome.value = Descrição +editarCategoriaController.indEmiteFormularioAutorizacao.value = Issuance of Authorization Form +editarCategoriaController.btnAdcionarForm.tooltiptext = Add Authorization Form +editarCategoriaController.btnRemoverForm.tooltiptex = Remove Authorization Form +editarCategoriaController.lbEmpresa.value = Company + # Pantalla Editar Categoría editarCategoriaController.window.title = Tipo de Passagem editarCiudadController.MSG.borrarOK = Cidade Excluida com Sucesso. @@ -10034,3 +10039,7 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origem winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Natureza +# Form Autorizacao Tipo de Passagem +editarFormAutorizacaoController.MSG.borrarPergunta = Deseja apagar esse registro ? +editarFormAutorizacaoController.window.title = Formulário de Autorização +editarFormAutorizacaoController.MSG.borrarOK = Registro apagado com sucesso. diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index c8eacb9d8..cf3b332c0 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -2907,6 +2907,11 @@ editarCategoriaController.lbIndemitetermorecusa.value = Emite término de rechaz editarCategoriaController.lbIndnaousaassento.value = No usar asiento en la venta de paquetes editarCategoriaController.lbIndvendenaapi.value = Vende na API editarCategoriaController.lbNome.value = Descripción +editarCategoriaController.indEmiteFormularioAutorizacao.value = Emisión de Formulario de Autorización +editarCategoriaController.btnAdcionarForm.tooltiptext = Agregar formulario de autorización +editarCategoriaController.btnRemoverForm.tooltiptex = Eliminar formulario de autorización +editarCategoriaController.lbEmpresa.value = Empresa + # Pantalla Editar Categoría editarCategoriaController.window.title = Tipo de pasaje editarCiudadController.MSG.borrarOK = Ciudad se eliminó exitosamente @@ -10160,3 +10165,7 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origen winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Naturaleza +# Form Autorizacao Tipo de Passagem +editarFormAutorizacaoController.MSG.borrarPergunta = ¿Quieres cancelar este registro? +editarFormAutorizacaoController.window.title = Formulario de autorización +editarFormAutorizacaoController.MSG.borrarOK = Registro eliminado exitosamente. diff --git a/web/WEB-INF/i3-label_fr_FR.label b/web/WEB-INF/i3-label_fr_FR.label index d79350aa7..d07ad525b 100644 --- a/web/WEB-INF/i3-label_fr_FR.label +++ b/web/WEB-INF/i3-label_fr_FR.label @@ -2906,6 +2906,10 @@ editarCategoriaController.lbIndemitetermorecusa.value = Délai de refus des émi editarCategoriaController.lbIndnaousaassento.value = Ne pas utiliser de siège lors de la vente d'un forfait editarCategoriaController.lbIndvendenaapi.value = Vendre sur API editarCategoriaController.lbNome.value = Description +editarCategoriaController.indEmiteFormularioAutorizacao.value = Émission du Formulaire d'autorisation +editarCategoriaController.btnAdcionarForm.tooltiptext = Ajouter un formulaire d'autorisation +editarCategoriaController.btnRemoverForm.tooltiptex = Supprimer le formulaire d'autorisation +editarCategoriaController.lbEmpresa.value = Entreprise # Pantalla Editar Categoría editarCategoriaController.window.title = Type de passage editarCiudadController.MSG.borrarOK = Ville supprimée avec succès. @@ -10141,3 +10145,8 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origine winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Nature +# Form Autorizacao Tipo de Passagem +editarFormAutorizacaoController.MSG.borrarPergunta = Voulez-vous annuler cette inscription? +editarFormAutorizacaoController.window.title = Formulaire d'autorisation +editarFormAutorizacaoController.MSG.borrarOK = Registre supprimé avec succès. + diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 35d894bb1..e7df45861 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -2909,6 +2909,10 @@ editarCategoriaController.lbIndemitetermorecusa.value = Emite Termo de Recusa editarCategoriaController.lbIndnaousaassento.value = Não usar assento na venda de pacote editarCategoriaController.lbIndvendenaapi.value = Vende na API editarCategoriaController.lbNome.value = Descrição +editarCategoriaController.indEmiteFormularioAutorizacao.value = Emite Formulário de Autorização +editarCategoriaController.btnAdcionarForm.tooltiptext = Adicionar Formulário de Autorização +editarCategoriaController.btnRemoverForm.tooltiptex = Remover Formulário de Autorização +editarCategoriaController.lbEmpresa.value = Empresa # Pantalla Editar Categoría editarCategoriaController.window.title = Tipo de Passagem editarCiudadController.MSG.borrarOK = Cidade Excluida com Sucesso. @@ -10144,3 +10148,7 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origem winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Natureza +# Form Autorizacao Tipo de Passagem +editarFormAutorizacaoController.MSG.borrarPergunta = Deseja apagar esse registro ? +editarFormAutorizacaoController.window.title = Formulário de Autorização +editarFormAutorizacaoController.MSG.borrarOK = Registro apagado com sucesso. \ No newline at end of file diff --git a/web/gui/catalogos/editarCategoria.zul b/web/gui/catalogos/editarCategoria.zul index bb2215597..c33f330a0 100644 --- a/web/gui/catalogos/editarCategoria.zul +++ b/web/gui/catalogos/editarCategoria.zul @@ -23,100 +23,137 @@ tooltiptext="${c:l('editarCategoriaController.btnFechar.tooltiptext')}"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +