diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDocumentosFiscais.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDocumentosFiscais.java index b93572c4c..86264450b 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDocumentosFiscais.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDocumentosFiscais.java @@ -209,10 +209,10 @@ public class RelatorioDocumentosFiscais extends Relatorio { private String getSqlExcessoBagagem(Integer empresaId, String agencia, Boolean somenteCancelado, String tipoLinha, Aidf aidf, Integer estadoId) { StringBuilder sql = new StringBuilder(); - sql.append("SELECT coalesce(tabela.numAidf, '') AS numAidf, "); + sql.append("SELECT tabela.docfiscal AS numAidf, "); // sql.append(" tabela.datamov, "); - sql.append(" min(tabela.folio) AS formInicial, "); - sql.append(" max(tabela.folio) AS formFinal, "); + sql.append(" tabela.forminicial AS formInicial, "); + sql.append(" tabela.formfinal AS formFinal, "); sql.append(" tabela.serie AS serie, "); sql.append(" tabela.nomeEstado AS nomeEstado, "); sql.append(" coalesce(sum(tabela.valorContabil),0) AS valorContabil, "); @@ -223,6 +223,9 @@ public class RelatorioDocumentosFiscais extends Relatorio { sql.append(" sum(tabela.outras) AS outras "); sql.append("FROM "); sql.append(" (SELECT DISTINCT "); + sql.append(" aidf.DOCFISCAL, "); + sql.append(" aidf.forminicial, "); + sql.append(" aidf.formfinal, "); sql.append(" coalesce(cdv.NUMSERIEPREIMPRESA, 'X') AS numAidf, "); sql.append(" coalesce(cdv.NUMFOLIOPREIMPRESO, '0') AS folio, "); sql.append(" coalesce(cdv.NUMSERIEPREIMPRESA, 'X') AS serie, "); @@ -230,12 +233,12 @@ public class RelatorioDocumentosFiscais extends Relatorio { sql.append(" case when cdv.precio < 0 then 31 else null end AS motivoCancelacion, "); sql.append(" cdv.precio AS tarifa, "); sql.append(" cdv.precio as valor, "); - sql.append(" ed.ICMS AS valorAliquiotaICMS, "); + sql.append(" ed.tributacaoimportacao AS valorAliquiotaICMS, "); sql.append(" CASE WHEN cdv.precio >= 0 THEN cdv.precio ELSE 0 END AS valorContabil, "); sql.append(" CASE WHEN cdv.precio < 0 THEN cdv.precio ELSE 0 END AS valorCancelado, "); sql.append(" COALESCE(ed.PORCREDBASEICMS / 100,0) AS redBaseCalcIcms, "); sql.append(" CASE WHEN cdv.precio >= 0 THEN cdv.precio - (cdv.precio * COALESCE(ed.PORCREDBASEICMS / 100,0)) ELSE 0 END AS valorBaseCalculo, "); - sql.append(" CASE WHEN cdv.precio >= 0 THEN (cdv.precio - (cdv.precio * COALESCE(ed.PORCREDBASEICMS / 100,0)) * ed.ICMS) / 100ELSE 0 END AS valorICMS, "); + sql.append(" CASE WHEN cdv.precio >= 0 THEN ((cdv.precio * ((ed.TRIBUTACAOIMPORTACAO - (COALESCE(ed.PORCREDBASEICMS * ed.TRIBUTACAOIMPORTACAO /100,0))))) / 100) ELSE 0 END AS valorICMS, "); sql.append(" CASE WHEN cdv.precio >= 0 THEN cdv.precio - (cdv.precio - (cdv.precio * COALESCE(ed.PORCREDBASEICMS / 100,0))) ELSE 0 END AS outras, "); sql.append(" es.estado_id AS estadoId, "); sql.append(" es.NOMBESTADO AS nomeEstado, "); @@ -244,6 +247,7 @@ public class RelatorioDocumentosFiscais extends Relatorio { sql.append(" 0 AS isInterEstadual "); sql.append("from evento_extra ee "); sql.append(" join caja_diversos cdv on cdv.eventoextra_id = ee.eventoextra_id "); + sql.append(" join aidf aidf on aidf.serie = cdv.numseriepreimpresa and cdv.numfoliopreimpreso between aidf.forminicial and aidf.formfinal "); sql.append(" join punto_venta pv on pv.puntoventa_id = cdv.puntoventa_id "); sql.append(" join parada pp on pp.parada_id = pv.parada_id "); sql.append(" join ciudad cc on cc.ciudad_id = pp.ciudad_id "); @@ -253,17 +257,17 @@ public class RelatorioDocumentosFiscais extends Relatorio { sql.append(" and ee.fechoringreso between :DATA_INICIAL and :DATA_FINAL "); sql.append(" and ee.empresa_id = " + empresaId + " "); sql.append(" and es.estado_id IN (" + estadoId + ") "); + sql.append(aidf != null ? " and aidf.aidf_id = " + aidf.getAidfId() + " " : " "); // sql.append(somenteCancelado == true ? " AND c.INDCANCELACION = 1" : " "); - // sql.append(aidf != null ? " AND a.AIDF_ID = " + aidf.getAidfId() + " " : " "); - - sql.append(" "); sql.append(" )tabela "); -// sql.append(tipoLinha.equals("INTERMUNICIPAL") ? " where tabela.isInterEstadual = 1" : tipoLinha.equals("INTERESTADUAL") ? " where tabela.isInterEstadual = 0" : " "); - sql.append("GROUP BY tabela.numAidf, "); + // sql.append(tipoLinha.equals("INTERMUNICIPAL") ? " where tabela.isInterEstadual = 1" : tipoLinha.equals("INTERESTADUAL") ? " where tabela.isInterEstadual = 0" : " "); + sql.append("GROUP BY tabela.serie, "); // sql.append(" tabela.datamov, "); - sql.append(" tabela.serie, "); sql.append(" tabela.nomeEstado, "); - sql.append(" tabela.valorAliquiotaICMS "); + sql.append(" tabela.valorAliquiotaICMS, "); + sql.append(" tabela.docfiscal, "); + sql.append(" tabela.forminicial, "); + sql.append(" tabela.formfinal "); sql.append("ORDER BY tabela.nomeEstado, tabela.numAidf "); return sql.toString();