diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/CambioVigenciaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/CambioVigenciaController.java index d2f7ff685..996750acc 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/CambioVigenciaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/CambioVigenciaController.java @@ -4,18 +4,8 @@ */ package com.rjconsultores.ventaboletos.web.gui.controladores.tarifas; -import com.rjconsultores.ventaboletos.entidad.ClaseServicio; -import com.rjconsultores.ventaboletos.entidad.Marca; -import com.rjconsultores.ventaboletos.entidad.Moneda; -import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente; -import com.rjconsultores.ventaboletos.entidad.Ruta; -import com.rjconsultores.ventaboletos.entidad.Tarifa; -import com.rjconsultores.ventaboletos.entidad.Tramo; -import com.rjconsultores.ventaboletos.entidad.VigenciaTarifa; -import com.rjconsultores.ventaboletos.service.TarifaService; -import com.rjconsultores.ventaboletos.service.VigenciaTarifaService; -import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import java.util.List; + import org.apache.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Scope; @@ -26,6 +16,19 @@ import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.event.Event; import org.zkoss.zul.Combobox; +import com.rjconsultores.ventaboletos.entidad.ClaseServicio; +import com.rjconsultores.ventaboletos.entidad.Marca; +import com.rjconsultores.ventaboletos.entidad.Moneda; +import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente; +import com.rjconsultores.ventaboletos.entidad.Ruta; +import com.rjconsultores.ventaboletos.entidad.Tarifa; +import com.rjconsultores.ventaboletos.entidad.Tramo; +import com.rjconsultores.ventaboletos.entidad.VigenciaTarifa; +import com.rjconsultores.ventaboletos.exception.BusinessException; +import com.rjconsultores.ventaboletos.service.TarifaService; +import com.rjconsultores.ventaboletos.service.VigenciaTarifaService; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; + /** * * @author rodrigo @@ -34,6 +37,8 @@ import org.zkoss.zul.Combobox; @Scope("prototype") public class CambioVigenciaController extends MyGenericForwardComposer { + private static final long serialVersionUID = 1L; + @Autowired private TarifaService tarifaService; @Autowired @@ -114,4 +119,52 @@ public class CambioVigenciaController extends MyGenericForwardComposer { closeWindow(); } + + public void onClick$btnCopiarVigencia(Event ev) throws InterruptedException { + cmbVigencia.getSelectedItem(); + cmbNovaVigencia.getSelectedItem(); + + VigenciaTarifa vigenciaOrigem = (VigenciaTarifa) (cmbVigencia.getSelectedItem() != null ? cmbVigencia.getSelectedItem().getValue() : null); + VigenciaTarifa vigenciaDestino = (VigenciaTarifa) (cmbNovaVigencia.getSelectedItem() != null ? cmbNovaVigencia.getSelectedItem().getValue() : null); + + if(vigenciaOrigem == vigenciaDestino) { + Messagebox.show(Labels.getLabel("cambioVigenciaController.MSGMesmaVigencias"), + Labels.getLabel("cambioVigenciaController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + return; + } + + if(!tarifaService.existeTarifas(vigenciaOrigem)) { + Messagebox.show(Labels.getLabel("cambioVigenciaController.MSGNingunaVigencias"), + Labels.getLabel("cambioVigenciaController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + } else { + + boolean possuiTarifas = tarifaService.existeTarifas(vigenciaDestino); + Integer opcao = Messagebox.YES; + if(possuiTarifas) { + opcao = Messagebox.show(Labels.getLabel("cambioVigenciaController.MSGCopiarVigencias"), + Labels.getLabel("cambioVigenciaController.window.title"), + Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); + } + + if (opcao.equals(Messagebox.YES)) { + try { + tarifaService.copiarTarifas(vigenciaOrigem, vigenciaDestino, possuiTarifas); + Messagebox.show(Labels.getLabel("cambioVigenciaController.MSGCopiarSucesso"), + Labels.getLabel("cambioVigenciaController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + closeWindow(); + } catch (BusinessException e) { + Messagebox.show(Labels.getLabel("cambioVigenciaController.MSGCopiarSucesso"), + Labels.getLabel("cambioVigenciaController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + } + + } + + + } + } diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index d18ccbeb1..345d4d73f 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -140,7 +140,7 @@ indexController.mniParamAcumulacionMasivo.label = Configuración acumulación ma indexController.mniParamCompraPunto.label = Configuración compra de puntos indexController.mniParamCostoTarjeta.label = Configuración costo tarjeta indexController.mniModificacionMasiva.label = Modificación masiva de tarifas -indexController.mniCambioVigencia.label = Cambiar vigencia +indexController.mniCambioVigencia.label = Cambiar/Copia vigencia indexController.mnAjuda.label = Ayuda indexController.mniVersion.label = Versión indexController.mniPricing.label = Pricing @@ -1993,8 +1993,13 @@ cambioVigenciaController.btnFechar.tooltiptext = Cerrar cambioVigenciaController.Vigencia = Vigencia Original cambioVigenciaController.MSGCambiarSucesso = Actualización de vigencia realizada exitosamente cambioVigenciaController.MSGCambiarVigencias = Deseas cambiar vigencia? +cambioVigenciaController.MSGCopiarSucesso = Copia de vigencia realizada exitosamente +cambioVigenciaController.MSGCopiarVigencias = La vigencia destino posee tarifas dadas de alta, desea sustituir las tarifas? +cambioVigenciaController.MSGNingunaVigencias = Ninguna tarifa localizada para copia +cambioVigenciaController.MSGMesmaVigencias = Fue seleccionado la misma Vigencia para Original y Nueva cambioVigenciaController.NovaVigencia = Nueva vigencia cambioVigenciaController.btnCambiarVigencia.label = Mover tarifas de vigencia +cambioVigenciaController.btnCopiarVigencia.label = Copiar Tarifas de Vigência # Modificacion Massiva Tarifa modificacionMasivaTarifasController.window.title = Modificación masiva de precios diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index e6d6bf1e8..0b73e8ea3 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -142,7 +142,7 @@ indexController.mniParamAcumulacionMasivo.label = Configuração Acumulação Ma indexController.mniParamCompraPunto.label = Configuração Compra de Pontos indexController.mniParamCostoTarjeta.label = Configuração Custo Cartão indexController.mniModificacionMasiva.label = Modificação Massiva de Preços -indexController.mniCambioVigencia.label = Mudar Vigência +indexController.mniCambioVigencia.label = Mudar/Copiar Vigência indexController.mnAjuda.label = Ajuda indexController.mniVersion.label = Versão indexController.mniPricing.label = Pricing @@ -2023,10 +2023,15 @@ editarParamCompraPuntoController.MSG.busquedaPeriodo= Data de início posterior cambioVigenciaController.window.title = Copia de Tabela cambioVigenciaController.btnFechar.tooltiptext = Fechar cambioVigenciaController.Vigencia = Vigência Original -cambioVigenciaController.MSGCambiarSucesso = Atualização vigência efetuada com Sucesso. +cambioVigenciaController.MSGCambiarSucesso = Atualização vigência efetuada com sucesso cambioVigenciaController.MSGCambiarVigencias = Deseja alterar vigência? +cambioVigenciaController.MSGCopiarSucesso = Cópia da vigência efetuada com sucesso +cambioVigenciaController.MSGCopiarVigencias = A vigência destino possui tarifas cadastradas, deseja substituir as tarifas? +cambioVigenciaController.MSGNingunaVigencias = Nenhuma tarifa localizada para cópia +cambioVigenciaController.MSGMesmaVigencias = Foi selecionado a mesma Vigência para Original e Nova cambioVigenciaController.NovaVigencia = Vigência Nova cambioVigenciaController.btnCambiarVigencia.label = Mover Tarifas de Vigência +cambioVigenciaController.btnCopiarVigencia.label = Copiar Tarifas de Vigência # Modificacion Massiva Tarifa modificacionMasivaTarifasController.window.title = Modificação Massiva de Preços diff --git a/web/gui/tarifas/cambioVigencia.zul b/web/gui/tarifas/cambioVigencia.zul index f59749b59..d0ce9d045 100644 --- a/web/gui/tarifas/cambioVigencia.zul +++ b/web/gui/tarifas/cambioVigencia.zul @@ -43,6 +43,9 @@