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 22d1c40a3..211a64191 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 @@ -15,6 +15,8 @@ import org.zkoss.zhtml.Messagebox; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.event.Event; import org.zkoss.zul.Combobox; +import org.zkoss.zul.Radiogroup; +import org.zkoss.zul.api.Checkbox; import com.rjconsultores.ventaboletos.entidad.ClaseServicio; import com.rjconsultores.ventaboletos.entidad.Empresa; @@ -39,6 +41,9 @@ import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; @Scope("prototype") public class CambioVigenciaController extends MyGenericForwardComposer { + private static final Short CAMBIAR_TARIFAS = 0; + private static final Short COPIAR_TARIFAS = 1; + private static final long serialVersionUID = 1L; @Autowired private EmpresaService empresaService; @@ -54,6 +59,10 @@ public class CambioVigenciaController extends MyGenericForwardComposer { private Combobox cmbNovaVigencia; private Combobox cmbEmpresa; + private Boolean excluirTarifas; + private Radiogroup groupMoverCopiarTarifa; + private Checkbox chkApagarTarifas; + private static Logger log = Logger.getLogger(CambioVigenciaController.class); public Combobox getCmbNovaVigencia() { @@ -92,7 +101,24 @@ public class CambioVigenciaController extends MyGenericForwardComposer { super.doAfterCompose(comp); } - public void onClick$btnCambiarVigencia(Event ev) throws InterruptedException { + public void onCheck$groupMoverCopiarTarifa(Event ev) throws Exception { + if (groupMoverCopiarTarifa.getSelectedIndex() == COPIAR_TARIFAS) { + chkApagarTarifas.setVisible(true); + } else { + chkApagarTarifas.setChecked(false); + chkApagarTarifas.setVisible(false); + } + } + + public void onClick$btnExecutar(Event ev) throws Exception { + if (groupMoverCopiarTarifa.getSelectedIndex() == CAMBIAR_TARIFAS) { + cambiarVigencia(); + } else { + copiarVigencia(); + } + } + + private void cambiarVigencia() throws InterruptedException { cmbVigencia.getSelectedItem(); cmbNovaVigencia.getSelectedItem(); @@ -135,7 +161,7 @@ public class CambioVigenciaController extends MyGenericForwardComposer { } - public void onClick$btnCopiarVigencia(Event ev) throws InterruptedException { + private void copiarVigencia() throws InterruptedException { cmbVigencia.getSelectedItem(); cmbNovaVigencia.getSelectedItem(); @@ -156,28 +182,19 @@ public class CambioVigenciaController extends MyGenericForwardComposer { Messagebox.OK, Messagebox.INFORMATION); } else { - boolean possuiTarifas = tarifaService.existeTarifas(vigenciaDestino); - Integer opcao = Messagebox.YES; - if (possuiTarifas) { - opcao = Messagebox.show(Labels.getLabel("cambioVigenciaController.MSGCopiarVigencias"), + try { + excluirTarifas = chkApagarTarifas.isChecked(); + tarifaService.copiarTarifas(vigenciaOrigem, vigenciaDestino, empresa, excluirTarifas); + Messagebox.show(Labels.getLabel("cambioVigenciaController.MSGCopiarSucesso"), Labels.getLabel("cambioVigenciaController.window.title"), - Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); - } + Messagebox.OK, Messagebox.INFORMATION); + closeWindow(); - if (opcao.equals(Messagebox.YES)) { - try { - tarifaService.copiarTarifas(vigenciaOrigem, vigenciaDestino, empresa, 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); - } + } catch (BusinessException e) { + Messagebox.show(Labels.getLabel("cambioVigenciaController.MSGCopiarSucesso"), + Labels.getLabel("cambioVigenciaController.window.title"), + Messagebox.OK, Messagebox.ERROR); } } } - } diff --git a/web/gui/tarifas/cambioVigencia.zul b/web/gui/tarifas/cambioVigencia.zul index 8d19bcf3e..a09a53049 100644 --- a/web/gui/tarifas/cambioVigencia.zul +++ b/web/gui/tarifas/cambioVigencia.zul @@ -9,6 +9,7 @@ apply="${cambioVigenciaController}" width="700px" height="457x" contentStyle="overflow:auto" title="${c:l('cambioVigenciaController.window.title')}"> + -