diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConfiguracionCategoriaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConfiguracionCategoriaController.java index d3f5f3800..1d31e0503 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConfiguracionCategoriaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConfiguracionCategoriaController.java @@ -291,6 +291,27 @@ public class EditarConfiguracionCategoriaController extends MyGenericForwardComp private List lsValorDecimalBox; private List lsPorcentagemDecimalBox; + private Combobox cmbCategoriasInteragem; + private Row rowIdTipoCategoriaInteragem; + private Checkbox chkTipoCategoriaInteragem; + + + public Checkbox getChkTipoCategoriaIntegarem() { + return chkTipoCategoriaInteragem; + } + + public void setChkTipoCategoriaIntegarem(Checkbox chkTipoCategoriaInteragem) { + this.chkTipoCategoriaInteragem = chkTipoCategoriaInteragem; + } + + public Row getRowIdTipoCategoriaIntegarem() { + return rowIdTipoCategoriaInteragem; + } + + public void setRowIdTipoCategoriaIntegarem(Row rowIdTipoCategoriaIntegarem) { + this.rowIdTipoCategoriaInteragem = rowIdTipoCategoriaIntegarem; + } + public List getLsCategorias() { return lsCategorias; } @@ -613,6 +634,7 @@ public class EditarConfiguracionCategoriaController extends MyGenericForwardComp linhaAssentosReservados.setVisible(false); txtDescricao.setValue(categoriaCtrl.getDescricao()); radioCheckinNao.setChecked(Boolean.TRUE); + rowIdTipoCategoriaInteragem.setVisible(false); } @@ -1139,6 +1161,16 @@ public class EditarConfiguracionCategoriaController extends MyGenericForwardComp cDescuento.setIndPermiteDevolver(chkDevolve.isChecked()); cDescuento.setIndPermiteReativar(chkReativa.isChecked()); cDescuento.setIndPermiteTrocaTitularidade(chkTrocaTiturlidade.isChecked()); + + if(chkTipoCategoriaInteragem.isChecked()) { + if(cmbCategoriasInteragem.getSelectedItem().getValue()!=null) { + cDescuento.setCategoriaInterage((Categoria) cmbCategoriasInteragem.getSelectedItem().getValue()); + }else { + cDescuento.setCategoriaInterage(null); + } + }else { + cDescuento.setCategoriaInterage(null); + } lsCategoriaDescuento.add(cDescuento); categoriaDescuentoList.addItemNovo(cDescuento); @@ -2006,6 +2038,10 @@ public class EditarConfiguracionCategoriaController extends MyGenericForwardComp public void onClick$rdVendaAbertoNao(Event ev) { rowComportamentoVendaAberto.setVisible(rdVendeAbertoSim.isChecked()); } + + public void onClick$chkTipoCategoriaInteragem(Event event) { + rowIdTipoCategoriaInteragem.setVisible(chkTipoCategoriaInteragem.isChecked()); + } public String getCorLaranja() { return TipoPassagemCores.LARANJA.getUrl(); @@ -2183,4 +2219,12 @@ public class EditarConfiguracionCategoriaController extends MyGenericForwardComp public void setChkTrocaTiturlidadeEmAberto(Checkbox chkTrocaTiturlidadeEmAberto) { this.chkTrocaTiturlidadeEmAberto = chkTrocaTiturlidadeEmAberto; } + + public Combobox getCmbCategoriasInteragem() { + return cmbCategoriasInteragem; + } + + public void setCmbCategoriasInteragem(Combobox cmbCategoriasInteragem) { + this.cmbCategoriasInteragem = cmbCategoriasInteragem; + } } \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConfiguracionCategoriaDatosCategoriaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConfiguracionCategoriaDatosCategoriaController.java index 7ba14469d..8294c5095 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConfiguracionCategoriaDatosCategoriaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/configuracioneccomerciales/EditarConfiguracionCategoriaDatosCategoriaController.java @@ -8,6 +8,7 @@ import java.math.BigDecimal; import java.util.Arrays; import java.util.Calendar; import java.util.HashSet; +import java.util.List; import java.util.Set; import org.apache.commons.lang.StringUtils; @@ -34,11 +35,13 @@ import org.zkoss.zul.api.Timebox; import com.rjconsultores.ventaboletos.constantes.Constantes; import com.rjconsultores.ventaboletos.constantes.ConstantesFuncionSistema; +import com.rjconsultores.ventaboletos.entidad.Categoria; import com.rjconsultores.ventaboletos.entidad.CategoriaDescuento; import com.rjconsultores.ventaboletos.entidad.CategoriaDescuento.TipoDescontoComponentePreco; import com.rjconsultores.ventaboletos.entidad.Constante; import com.rjconsultores.ventaboletos.enums.HorarioLiberacaoVendaPassagem; import com.rjconsultores.ventaboletos.enums.TipoPassagemCores; +import com.rjconsultores.ventaboletos.service.CategoriaService; import com.rjconsultores.ventaboletos.service.ConstanteService; import com.rjconsultores.ventaboletos.utilerias.DateUtil; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; @@ -169,6 +172,16 @@ public class EditarConfiguracionCategoriaDatosCategoriaController extends MyGene private Checkbox chkCancelaEmergencial; private Checkbox chkTrocaTiturlidade; private Checkbox chkReativa; + //Categorias que se interagem entre si + private Combobox cmbCategoriasInteragem; + private Row rowIdTipoCategoriaInteragem; + private Checkbox chkTipoCategoriaInteragem; + private List lsCategoriasInteragem; + private Categoria categoriaInterage; + + @Autowired + private CategoriaService categoriaService; + @Override public void doAfterCompose(Component comp) throws Exception { @@ -347,6 +360,17 @@ public class EditarConfiguracionCategoriaDatosCategoriaController extends MyGene }else { radioCheckinNao.setChecked(Boolean.TRUE); } + + lsCategoriasInteragem = categoriaService.obtenerTodos(); + if(categoriaDescuento.getCategoriaInterage() !=null) { + chkTipoCategoriaInteragem.setChecked(Boolean.TRUE); + rowIdTipoCategoriaInteragem.setVisible(Boolean.TRUE); + categoriaInterage = categoriaDescuento.getCategoriaInterage(); + }else { + chkTipoCategoriaInteragem.setChecked(Boolean.FALSE); + rowIdTipoCategoriaInteragem.setVisible(Boolean.FALSE); + } + } /** * @@ -607,6 +631,15 @@ public class EditarConfiguracionCategoriaDatosCategoriaController extends MyGene categoriaDescuento.setQtdeViasCupomEmbarque(qtdeViasCupomEmbarque.getValue()); categoriaDescuento.setIndClientePcd(chkIndClientePcd.isChecked()); categoriaDescuento.setQtdeLimiteNaoEmbarque(qtdeLimiteNaoEmbarque.getValue()); + if(chkTipoCategoriaInteragem.isChecked()) { + if(cmbCategoriasInteragem.getSelectedItem().getValue()!=null) { + categoriaDescuento.setCategoriaInterage((Categoria) cmbCategoriasInteragem.getSelectedItem().getValue()); + }else { + categoriaDescuento.setCategoriaInterage(null); + } + }else { + categoriaDescuento.setCategoriaInterage(null); + } categoriaDescuentoList.updateItem(categoriaDescuento); this.closeWindow(); @@ -679,6 +712,10 @@ public class EditarConfiguracionCategoriaDatosCategoriaController extends MyGene public void onClick$rdCuotaSi(Event ev) { mudarCamposCuota(true); } + + public void onClick$chkTipoCategoriaInteragem(Event event) { + rowIdTipoCategoriaInteragem.setVisible(chkTipoCategoriaInteragem.isChecked()); + } private void mudarCamposCuota(boolean visible){ rowTrecho.setVisible(visible); @@ -920,4 +957,42 @@ public class EditarConfiguracionCategoriaDatosCategoriaController extends MyGene public void setChkTrocaTiturlidade(Checkbox chkTrocaTiturlidade) { this.chkTrocaTiturlidade = chkTrocaTiturlidade; } + + public Checkbox getChkTipoCategoriaIntegarem() { + return chkTipoCategoriaInteragem; + } + + public void setChkTipoCategoriaIntegarem(Checkbox chkTipoCategoriaInteragem) { + this.chkTipoCategoriaInteragem = chkTipoCategoriaInteragem; + } + + public Row getRowIdTipoCategoriaIntegarem() { + return rowIdTipoCategoriaInteragem; + } + + public void setRowIdTipoCategoriaIntegarem(Row rowIdTipoCategoriaIntegarem) { + this.rowIdTipoCategoriaInteragem = rowIdTipoCategoriaIntegarem; + } + + public Combobox getCmbCategoriasInteragem() { + return cmbCategoriasInteragem; + } + + public void setCmbCategoriasInteragem(Combobox cmbCategoriasInteragem) { + this.cmbCategoriasInteragem = cmbCategoriasInteragem; + } + + public List getLsCategoriasInteragem() { + return lsCategoriasInteragem; + } + public void setLsCategoriasInteragem(List lsCategoriasInteragem) { + this.lsCategoriasInteragem = lsCategoriasInteragem; + } + + public Categoria getCategoriaInterage() { + return categoriaInterage; + } + public void setCategoriaInterage(Categoria categoriaInterage) { + this.categoriaInterage = categoriaInterage; + } } \ No newline at end of file diff --git a/web/WEB-INF/i3-label_en.label b/web/WEB-INF/i3-label_en.label index f0658e242..30f122c8e 100644 --- a/web/WEB-INF/i3-label_en.label +++ b/web/WEB-INF/i3-label_en.label @@ -2597,6 +2597,9 @@ editarConfiguracionCategoriaController.lblQtdeViasCupomEmbarque.value=Quantidade editarConfiguracionCategoriaController.lblVendaAntecipadaKM.value=Venda Antecipada por KM editarConfiguracionCategoriaController.validarOpcaoTodasComboLinha = Favor Incluir a opção todas na aba de Linha editarConfiguracionCategoriaController.MSG.validarTodasComboLinhaSalvar = Existem exceções de linhas, mas não existe a opção todas na aba de linhas. Serão inativadas as exceções, Deseja Continuar ? +editarConfiguracionCategoriaController.lblTiposCategoriasInteragem.value=Tipo Categoria Interagem +editarConfiguracionCategoriaController.chktiposCategoriasInteragem.ajuda = Este Checkbox permite a opção de escolher uma outra categoria para interagir com a categoria selecionada no campo Tipo Passagem acima. Caso ativo, apenas quando a quantidade autorizada da categoria aqui selecionada se esgotar é que a categoria selecionada no campo Tipo de Passagem acima aparecerá para venda. +editarConfiguracionCategoriaController.cmbtiposCategoriasInteragem.ajuda = Caso esta opção esteja preenchida, apenas quando a quantidade autorizada da categoria aqui selecionada se esgotar é que a categoria selecionada no campo Tipo de Passagem acima aparecerá para venda. diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 7f6d1b5ed..fff2d721c 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -2537,6 +2537,10 @@ editarConfiguracionCategoriaController.lblIndClientePcd.value = Cliente PCD editarConfiguracionCategoriaController.permitetrocatransferencia.value = Permite Troca/Transferência editarConfiguracionCategoriaController.lblCompAbertoVendido.value= Comportamiento abierto vendido editarConfiguracionCategoriaController.lblCompAbertoConfirmado.value=Comportamiento abierto confirmado +editarConfiguracionCategoriaController.lblTiposCategoriasInteragem.value=Tipo Categoria Interagem +editarConfiguracionCategoriaController.chktiposCategoriasInteragem.ajuda = Este Checkbox permite a opção de escolher uma outra categoria para interagir com a categoria selecionada no campo Tipo Passagem acima. Caso ativo, apenas quando a quantidade autorizada da categoria aqui selecionada se esgotar é que a categoria selecionada no campo Tipo de Passagem acima aparecerá para venda. +editarConfiguracionCategoriaController.cmbtiposCategoriasInteragem.ajuda = Caso esta opção esteja preenchida, apenas quando a quantidade autorizada da categoria aqui selecionada se esgotar é que a categoria selecionada no campo Tipo de Passagem acima aparecerá para venda. + editarConfiguracionCategoriaController.permissoes.value=Permisos editarConfiguracionCategoriaController.chkPermiteTrocaTransferencia.value=Cambio / Transferencia diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index ed3269c52..05373fcaa 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -2790,6 +2790,9 @@ editarConfiguracionCategoriaController.validarOpcaoTodasComboLinha = Favor Inclu editarConfiguracionCategoriaController.MSG.validarTodasComboLinhaSalvar = Existem exceções de linhas, mas não existe a opção todas na aba de linhas. Serão inativadas as exceções, Deseja Continuar ? editarConfiguracionCategoriaController.lblCompAbertoVendido.value= Comportamento Aberto Vendido editarConfiguracionCategoriaController.lblCompAbertoConfirmado.value=Comportamento Aberto Confirmado +editarConfiguracionCategoriaController.lblTiposCategoriasInteragem.value=Tipo Categoria Interagem +editarConfiguracionCategoriaController.chktiposCategoriasInteragem.ajuda = Este Checkbox permite a opção de escolher uma outra categoria para interagir com a categoria selecionada no campo Tipo Passagem acima. Caso ativo, apenas quando a quantidade autorizada da categoria aqui selecionada se esgotar é que a categoria selecionada no campo Tipo de Passagem acima aparecerá para venda. +editarConfiguracionCategoriaController.cmbtiposCategoriasInteragem.ajuda = Caso esta opção esteja preenchida, apenas quando a quantidade autorizada da categoria aqui selecionada se esgotar é que a categoria selecionada no campo Tipo de Passagem acima aparecerá para venda. editarConfiguracionCategoriaController.permissoes.value=Permissões editarConfiguracionCategoriaController.chkPermiteTrocaTransferencia.value=Troca/Transferência diff --git a/web/gui/configuraciones_comerciales/editarConfiguracionCategorias.zul b/web/gui/configuraciones_comerciales/editarConfiguracionCategorias.zul index a09482226..152a2ca3d 100644 --- a/web/gui/configuraciones_comerciales/editarConfiguracionCategorias.zul +++ b/web/gui/configuraciones_comerciales/editarConfiguracionCategorias.zul @@ -102,6 +102,29 @@ + + + + + + + + + + + + + + + +