diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioFolioRmd.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioFolioRmd.java index 673052d1b..80bb28c22 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioFolioRmd.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioFolioRmd.java @@ -79,32 +79,10 @@ public class RelatorioFolioRmd extends Relatorio { } private String getSqlRMDReporte() { + StringBuilder sql = new StringBuilder(); - sql.append("select foliormd as foliormd, "); - sql.append(" 'IMPRESSO' as status, "); - sql.append(" coalesce(r4.datamov, to_char(b.fechorventa, 'yyyymmdd')) as fechorfolio, "); - sql.append(" e.nombempresa as empresa, "); - sql.append(" eo.cveestado as uf, "); - sql.append(" eo.nombestado as estado, "); - sql.append(" ai.docfiscal as doc, "); - sql.append(" case when b.tipoventa_id <> 3 then 'ECF' else 'BPR' end as tipo "); - sql.append("from boleto b "); - sql.append(" left join fiscal_r4 r4 on r4.boleto_id = b.boleto_id "); - sql.append(" inner join aidf ai on b.rmd_id = ai.aidf_id and ai.aidfesp_id = 3 "); - sql.append(" inner join marca m on b.marca_id = m.marca_id and ai.empresa_id = m.empresa_id "); - sql.append(" inner join empresa e on e.empresa_id = m.empresa_id "); - sql.append(" inner join parada po on po.parada_id = b.origen_id "); - sql.append(" inner join ciudad co on co.ciudad_id = po.ciudad_id and co.estado_id = ai.estado_id "); - sql.append(" join estado eo on eo.estado_id = co.estado_id "); - sql.append("where ai.empresa_id = :empresaId and ai.aidf_id = :rmdId and ai.estado_id = :estadoId "); - sql.append("group by foliormd, "); - sql.append("coalesce( r4.datamov, to_char(b.fechorventa, 'yyyymmdd')), e.nombempresa, eo.cveestado,eo.nombestado, "); - sql.append("ai.docfiscal, case when b.tipoventa_id <> 3 then 'ECF' else 'BPR' end "); - sql.append(" "); - sql.append("union "); - sql.append(" "); sql.append("select f.folio as foliormd, "); - sql.append(" case when f.indcancelacion = 1 then 'CANCELADO' else 'INATIVO' end as status, "); + sql.append(" case when f.indcancelacion = 1 then 'CANCELADO' else 'IMPRESSO' end as status, "); sql.append(" to_char(f.fechorfolio, 'yyyymmdd') as fechorfolio, "); sql.append(" e.nombempresa as empresa, "); sql.append(" eo.cveestado as uf, "); @@ -116,7 +94,7 @@ public class RelatorioFolioRmd extends Relatorio { sql.append("inner join empresa e on e.empresa_id = f.empresa_id "); sql.append("join estado eo on eo.estado_id = f.estado_id "); sql.append("where f.empresa_id = :empresaId and f.rmd_id = :rmdId and f.estado_id = :estadoId "); - sql.append(" "); + sql.append(" and f.indinactivo <> 1 and f.activo = 1 "); sql.append("order by foliormd "); return sql.toString(); diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmd.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmd.jasper index 97c12ca69..0d89fda75 100644 Binary files a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmd.jasper and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmd.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmd.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmd.jrxml index ad0334b28..12f325723 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmd.jrxml +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmd.jrxml @@ -1,6 +1,6 @@ - + @@ -43,49 +43,49 @@ - + - + - + - + - + - + - + @@ -100,70 +100,70 @@ - + - + - + - + - + - + - + - + - + - + @@ -174,35 +174,35 @@ - + - + - + - + - + diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmdBpr.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmdBpr.jasper index 15bdd168c..fc9c47fcb 100644 Binary files a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmdBpr.jasper and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmdBpr.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmdBpr.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmdBpr.jrxml index f7e4a6312..4a932ff1f 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmdBpr.jrxml +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioImpressaoRmdBpr.jrxml @@ -43,49 +43,49 @@ - + - + - + - + - + - + - + @@ -100,7 +100,7 @@ - + @@ -110,7 +110,7 @@ - + @@ -118,7 +118,7 @@ - + @@ -126,49 +126,49 @@ - + - + - + - + - + - + - + @@ -179,35 +179,35 @@ - + - + - + - + - + diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/impressaofiscal/BusquedaImpressaoRMDController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/impressaofiscal/BusquedaImpressaoRMDController.java index 604569238..a67875953 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/impressaofiscal/BusquedaImpressaoRMDController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/impressaofiscal/BusquedaImpressaoRMDController.java @@ -1,6 +1,7 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.impressaofiscal; import java.sql.SQLException; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -70,6 +71,7 @@ public class BusquedaImpressaoRMDController extends MyGenericForwardComposer { private Datebox datInicial; private Datebox datFinal; private MyTextbox folioInicial; + private MyTextbox folioFim; private MyComboboxEstandar cmbEmpresa; private MyComboboxEstandar cmbEstado; @@ -153,35 +155,48 @@ public class BusquedaImpressaoRMDController extends MyGenericForwardComposer { return; } - String folio = folioInicial.getValue(); - if (StringUtils.isBlank(folio)) { + String inicioRmd = folioInicial.getValue(); + if (StringUtils.isBlank(inicioRmd)) { Messagebox.show( Labels.getLabel("busquedaImpressaoRMDController.select.RMD"), Labels.getLabel("busquedaImpressaoRMDController.mnImpressaoRMD.label"), Messagebox.OK, Messagebox.INFORMATION); return; + } else if (!(isCancelarRmd || isInativarRmd) && !aidfService.vaidaRMDUtilizado(aidf.getAidfId(), empresa.getEmpresaId(), estado.getEstadoId(), inicioRmd)) { + Messagebox.show( + "Folio já utilizado.", + Labels.getLabel("busquedaImpressaoRMDController.mnImpressaoRMD.label"), + Messagebox.OK, Messagebox.INFORMATION); + return; } List list = null; if (!isCancelarRmd && !isInativarRmd && radBPR.isChecked()) { list = fiscalService.getRegistroImpressaoRMDTipoBPR(datInicial.getValue(), datFinal.getValue(), - empresa, estado, rmd, folio); + empresa, estado, rmd, inicioRmd); } else if (!isCancelarRmd && !isInativarRmd && radECF.isChecked()) { list = fiscalService.getRegistroImpressaoRMDTipoECF(datInicial.getValue(), datFinal.getValue(), - empresa, estado, rmd, folio); + empresa, estado, rmd, inicioRmd); } if (isExecutarRmd) - fiscalService.gravarRMDBoleto(list, aidf, folio); + fiscalService.gravarRMDBoleto(list, aidf, inicioRmd, empresa, estado, radECF.isChecked(), radBPR.isChecked()); + String fimRmd = folioFim == null ? null : folioFim.getValue(); if (isCancelarRmd || isInativarRmd) { - fiscalService.cancelarRMDBoleto(datInicial.getValue(), datFinal.getValue(), empresa, estado, aidf, folio, + + if (StringUtils.isBlank(fimRmd)) + fimRmd = inicioRmd; + + fiscalService.cancelarRMDBoleto(datInicial.getValue(), datFinal.getValue(), empresa, estado, aidf, inicioRmd, fimRmd, isCancelarRmd, isInativarRmd, radECF.isChecked(), radBPR.isChecked()); Messagebox.show( Labels.getLabel("busquedaImpressaoRMDController.cancel.msg"), Labels.getLabel("busquedaImpressaoRMDController.mnImpressaoRMD.label"), Messagebox.OK, Messagebox.INFORMATION); + + limparFiltro(); return; } @@ -203,6 +218,9 @@ public class BusquedaImpressaoRMDController extends MyGenericForwardComposer { Labels.getLabel("indexController.mnImpressaoRMD.label"), args, MODAL); } + if (isExecutarRmd) + limparFiltro(); + } catch (InterruptedException e) { log.error("", e); } catch (WrongValueException e) { @@ -256,6 +274,17 @@ public class BusquedaImpressaoRMDController extends MyGenericForwardComposer { executarImpressao(false, false, false, true); } + private void limparFiltro() { + folioInicial.setValue(null); + folioFim.setValue(null); + + cmbEmpresa.setSelectedItem(null); + cmbEstado.setSelectedItem(null); + cmbAidf.setSelectedItem(null); + + lsAidf = new ArrayList(); + } + public List getLsEmpresa() { return lsEmpresa; } diff --git a/web/gui/impressaofiscal/busquedaImpressaoRMD.zul b/web/gui/impressaofiscal/busquedaImpressaoRMD.zul index c419b9864..9a15aab40 100644 --- a/web/gui/impressaofiscal/busquedaImpressaoRMD.zul +++ b/web/gui/impressaofiscal/busquedaImpressaoRMD.zul @@ -73,11 +73,13 @@ label="Layout Novo" /> - +