fixes bug#10830

dev: Gleimar
qua: Gleimar


git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@80537 d1611594-4594-4d17-8e1d-87c2c4800839
master
fabio 2018-04-05 14:02:42 +00:00
parent 48a00289e0
commit 19191acac7
2 changed files with 141 additions and 12 deletions

View File

@ -63,16 +63,10 @@ public class RelatorioFinanceiroAnalitico extends Relatorio {
FinanceiroAnalitico fs = new FinanceiroAnalitico();
fs.setFechorVenta(rset.getDate("fechorVenta"));
BigDecimal receitaBPR = getBigDecimal(rset, "receita_bpr");
fs.setGapVenda(getBigDecimal(rset, "receita_gap"));
fs.setGapImpressa(getBigDecimal(rset, "entrega_gap"));
BigDecimal receita_cancel_bpr =getBigDecimal(rset, "receita_cancel_bpr");
receitaBPR = receitaBPR.add(fs.getGapImpressa());
receitaBPR = receitaBPR.subtract(receita_cancel_bpr);
receitaBPR = receitaBPR.subtract(fs.getGapVenda());
fs.setReceitaBPR(receitaBPR);
fs.setReceitaBPR(getBigDecimal(rset, "receita_rdi_bpr"));
BigDecimal totalVendaPassagens = fs.getReceitaBPR().add(fs.getGapVenda());
totalVendaPassagens = totalVendaPassagens.subtract(fs.getGapImpressa());
@ -99,7 +93,7 @@ public class RelatorioFinanceiroAnalitico extends Relatorio {
BigDecimal receitaBruta = totalVendaPassagens.add(totalOutrasReceitas).add(totalTerceiros);
fs.setReceitaBruta(receitaBruta);
fs.setDevolBPR(getBigDecimal(rset, "receita_devol_bpr"));
fs.setDevolBPR(getBigDecimal(rset, "receita_cancel_rdi_bpr"));
fs.setDevolGAP(getBigDecimal(rset, "receita_devol_gap"));
BigDecimal totalDevolucao = fs.getDevolBPR().add(fs.getDevolGAP());
@ -339,6 +333,141 @@ public class RelatorioFinanceiroAnalitico extends Relatorio {
sql.append(" trunc(ee.fechoringreso) ");
sql.append(" ) eed ON agrc.empresaId = eed.empresaId ");
sql.append(" AND agrc.fechorVenta = eed.fechorVenta ");
sql.append(" LEFT JOIN ");
sql.append(" (select empresaId, fechorVenta, sum(tarifa) receita_rdi_bpr from ( ");
sql.append(" SELECT DISTINCT c.caja_id AS cajaId, ");
sql.append(" e.empresa_id AS empresaId, ");
sql.append(" TRUNC(c.feccreacion) AS fechorVenta, ");
sql.append(" COALESCE(c.preciopagado, 0)AS tarifa, ");
sql.append(" COALESCE(c.importetaxaembarque, 0) AS taxaEmbarque, ");
sql.append(" COALESCE(c.importepedagio, 0) AS pedagio, ");
sql.append(" COALESCE(c.importeseguro, 0) AS seguro, ");
sql.append(" COALESCE(c.importeoutros, 0) AS outros ");
sql.append(" FROM caja c ");
sql.append(" INNER JOIN marca m ");
sql.append(" ON m.marca_id = c.marca_id ");
sql.append(" AND m.activo = 1 ");
sql.append(" INNER JOIN empresa e ");
sql.append(" ON e.empresa_id = m.empresa_id ");
sql.append(" INNER JOIN punto_venta pv ");
sql.append(" ON pv.puntoventa_id = c.puntoventa_id ");
sql.append(" INNER JOIN parada p ");
sql.append(" ON pv.parada_id = p.parada_id ");
sql.append(" INNER JOIN ciudad co ");
sql.append(" ON co.ciudad_id = p.ciudad_id ");
sql.append(" INNER JOIN estado eo ");
sql.append(" ON eo.estado_id = co.estado_id ");
sql.append(" WHERE c.activo = 1 ");
sql.append(" AND p.activo = 1 ");
sql.append(" AND co.activo = 1 ");
sql.append(" AND eo.activo = 1 ");
sql.append(" AND c.serieimpfiscal IS NOT NULL ");
sql.append(" AND ((c.indreimpresion = 0 ");
sql.append(" AND c.motivocancelacion_id IS NULL ");
sql.append(" AND c.numfoliosistema IS NOT NULL) ");
sql.append(" OR (c.indstatusboleto = 'E' ");
sql.append(" AND c.indreimpresion = 1)) ");
sql.append(" AND (COALESCE(c.preciopagado,0) + COALESCE(c.importetaxaembarque,0) + COALESCE(c.importeseguro,0) + COALESCE(c.importepedagio,0) + COALESCE(c.importeoutros,0)) > 0 ");
sql.append(" AND c.feccreacion >= :DATE_INICIO ");
sql.append(" AND c.feccreacion <= :DATE_FIM ");
sql.append(" AND c.empresacorrida_id = 10 ");
sql.append(ufs == null ? "" : " and eo.estado_id in ( " + ufs + " ) ");
sql.append(pdvs == null ? "" : "and pv.puntoventa_id in ( " + pdvs + " ) ");
sql.append(tipoptovtaId == -1 ? "" : "and pv.tipoptovta_id = " + tipoptovtaId);
sql.append(" UNION ALL ");
sql.append(" SELECT DISTINCT c.caja_id AS cajaId, ");
sql.append(" e.empresa_id AS empresaId, ");
sql.append(" TRUNC(c.feccreacion) AS fechorVenta, ");
sql.append(" COALESCE(c.preciopagado, 0) AS tarifa, ");
sql.append(" COALESCE(c.importetaxaembarque, 0) AS taxaEmbarque, ");
sql.append(" COALESCE(c.importepedagio, 0) AS pedagio, ");
sql.append(" COALESCE(c.importeseguro, 0) AS seguro, ");
sql.append(" COALESCE(c.importeoutros, 0) AS outros ");
sql.append(" FROM caja c ");
sql.append(" JOIN marca m ");
sql.append(" ON c.marca_id = m.marca_id ");
sql.append(" JOIN empresa e ");
sql.append(" ON e.empresa_id = m.empresa_id ");
sql.append(" JOIN aidf a ");
sql.append(" ON a.aidf_id = c.aidf_id ");
sql.append(" JOIN punto_venta pv ");
sql.append(" ON pv.puntoventa_id = c.puntoventa_id ");
sql.append(" JOIN parada po ");
sql.append(" ON po.parada_id = pv.parada_id ");
sql.append(" JOIN ciudad co ");
sql.append(" ON co.ciudad_id = po.ciudad_id ");
sql.append(" JOIN estado eo ");
sql.append(" ON eo.estado_id = co.estado_id ");
sql.append(" WHERE ((c.tipoventa_id = 3 ");
sql.append(" AND c.indstatusboleto = 'V' ");
sql.append(" AND c.indreimpresion = 0) ");
sql.append(" OR (c.tipoventa_id IN (12,18) ");
sql.append(" AND c.indstatusboleto = 'E' ");
sql.append(" AND c.numfoliosistema = c.numfoliopreimpreso)) ");
sql.append(" AND (c.motivocancelacion_id IS NULL ");
sql.append(" OR c.motivocancelacion_id <> 35) ");
sql.append(" AND c.indcancelacion = 0 ");
sql.append(" AND c.empresacorrida_id = :EMPRESA_ID ");
sql.append(" AND c.feccreacion BETWEEN :DATE_INICIO AND :DATE_FIM ");
sql.append(ufs == null ? "" : " and eo.estado_id in ( " + ufs + " ) ");
sql.append(pdvs == null ? "" : "and pv.puntoventa_id in ( " + pdvs + " ) ");
sql.append(tipoptovtaId == -1 ? "" : "and pv.tipoptovta_id = " + tipoptovtaId);
sql.append(" ) rbl ");
sql.append(" GROUP BY rbl.fechorVenta, ");
sql.append(" rbl.empresaId ");
sql.append(" )rbpr ON agrc.empresaId = rbpr.empresaId ");
sql.append(" AND agrc.fechorVenta = rbpr.fechorVenta ");
sql.append(" LEFT JOIN ");
sql.append(" ( select empresaId, fechorVenta, sum(tarifa) receita_cancel_rdi_bpr from ( ");
sql.append(" SELECT DISTINCT b.boleto_id AS cajaId, ");
sql.append(" e.empresa_id AS empresaId, ");
sql.append(" TRUNC(b.feccreacion) AS fechorVenta, ");
sql.append(" COALESCE(b.preciopagado, 0) AS tarifa, ");
sql.append(" COALESCE(b.importetaxaembarque, 0) AS taxaEmbarque, ");
sql.append(" COALESCE(b.importepedagio, 0) AS pedagio, ");
sql.append(" COALESCE(b.importeseguro, 0) AS seguro, ");
sql.append(" COALESCE(b.importeoutros, 0) AS outros ");
sql.append(" FROM boleto b ");
sql.append(" INNER JOIN marca m ");
sql.append(" ON m.marca_id = b.marca_id ");
sql.append(" AND m.activo = 1 ");
sql.append(" INNER JOIN empresa e ");
sql.append(" ON e.empresa_id = m.empresa_id ");
sql.append(" INNER JOIN punto_venta pv ");
sql.append(" ON pv.puntoventa_id = b.puntoventa_id ");
sql.append(" INNER JOIN parada p ");
sql.append(" ON pv.parada_id = p.parada_id ");
sql.append(" INNER JOIN ciudad co ");
sql.append(" ON co.ciudad_id = p.ciudad_id ");
sql.append(" INNER JOIN estado eo ");
sql.append(" ON eo.estado_id = co.estado_id ");
sql.append(" WHERE b.motivocancelacion_id IN (31,32,10,37,99,36) ");
sql.append(" AND b.indstatusboleto = 'C' ");
sql.append(" AND b.indcancelacion = 1 ");
sql.append(" AND b.numfoliopreimpreso IS NOT NULL ");
sql.append(" AND e.empresa_id = :EMPRESA_ID ");
sql.append(" AND b.fechorventa >= :DATE_INICIO ");
sql.append(" AND b.fechorventa <= :DATE_FIM ");
sql.append(ufs == null ? "" : " and eo.estado_id in ( " + ufs + " ) ");
sql.append(pdvs == null ? "" : "and pv.puntoventa_id in ( " + pdvs + " ) ");
sql.append(tipoptovtaId == -1 ? "" : "and pv.tipoptovta_id = " + tipoptovtaId);
sql.append(" AND b.categoria_id NOT IN ");
sql.append(" (SELECT valorconstante ");
sql.append(" FROM constante ");
sql.append(" WHERE nombconstante = 'GRATUIDADE_CRIANCA' ");
sql.append(" ) ");
sql.append(" ) cbl ");
sql.append(" GROUP BY cbl.fechorVenta, ");
sql.append(" cbl.empresaId ");
sql.append(" ) cbpr ");
sql.append(" ON agrc.empresaId = cbpr.empresaId ");
sql.append(" AND agrc.fechorVenta = cbpr.fechorVenta ");
sql.append(" order by agrc.fechorVenta ");
return sql.toString();

View File

@ -397,7 +397,7 @@ public class RelatorioFinanceiroSintetico extends Relatorio {
sql.append(" AND c.empresacorrida_id = 10 ");
sql.append(ufs == null ? "" : " and eo.estado_id in ( " + ufs + " ) ");
sql.append(pdvs == null ? "" : "and ccp.puntoventa_id in ( " + pdvs + " ) ");
sql.append(pdvs == null ? "" : "and pv.puntoventa_id in ( " + pdvs + " ) ");
sql.append(tipoptovtaId == -1 ? "" : "and pv.tipoptovta_id = " + tipoptovtaId);
sql.append(" UNION ALL ");
@ -438,7 +438,7 @@ public class RelatorioFinanceiroSintetico extends Relatorio {
sql.append(" AND c.feccreacion BETWEEN :DATE_INICIO AND :DATE_FIM ");
sql.append(ufs == null ? "" : " and eo.estado_id in ( " + ufs + " ) ");
sql.append(pdvs == null ? "" : "and ccp.puntoventa_id in ( " + pdvs + " ) ");
sql.append(pdvs == null ? "" : "and pv.puntoventa_id in ( " + pdvs + " ) ");
sql.append(tipoptovtaId == -1 ? "" : "and pv.tipoptovta_id = " + tipoptovtaId);
sql.append(" ) rbl ");