fixes bug#21902

qua: Debora
dev: William

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@106438 d1611594-4594-4d17-8e1d-87c2c4800839
master
celio 2021-04-29 15:03:09 +00:00
parent cc36a13740
commit e088d39fc9
1 changed files with 61 additions and 55 deletions

View File

@ -63,7 +63,7 @@ public class RelatorioVendasParcelamento extends Relatorio {
stmt.setInt("empresaId", Integer.parseInt(empresa));
}
rset1= stmt.executeQuery();
rset1 = stmt.executeQuery();
while (rset1.next()) {
@ -74,7 +74,8 @@ public class RelatorioVendasParcelamento extends Relatorio {
vendasParcelamento.setEmpresa(rset1.getString("empresa"));
vendasParcelamento.setAgencia(rset1.getString("agencia"));
vendasParcelamento.setBilheteiro(rset1.getString("bilheteiro"));
vendasParcelamento.setDataVenda((Date)rset1.getObject("dataVenda"));
vendasParcelamento.setNumOperacion(rset1.getBigDecimal("NUMOPERACION"));
vendasParcelamento.setDataVenda((Date) rset1.getObject("dataVenda"));
vendasParcelamento.setDataServico((Date) rset1.getObject("dataServico"));
vendasParcelamento.setLinha(rset1.getString("linha"));
vendasParcelamento.setServico(rset1.getString("servico"));
@ -94,11 +95,11 @@ public class RelatorioVendasParcelamento extends Relatorio {
vendasParcelamento.setNsu(rset1.getString("nsu"));
vendasParcelamento.setParcelas(rset1.getString("parcelas"));
BigDecimal valor = rset1.getBigDecimal("valor");
vendasParcelamento.setValor(valor != null?valor:BigDecimal.ZERO);
vendasParcelamento.setValor(valor != null ? valor : BigDecimal.ZERO);
if(vendasParcelamento.getValor()!= null && vendasParcelamento.getTotal()!=null
&& vendasParcelamento.getValor().doubleValue()!=0 && vendasParcelamento.getTotal().doubleValue()!=0 ){
percentual = (vendasParcelamento.getValor().multiply( new BigDecimal("100") ));
if (vendasParcelamento.getValor() != null && vendasParcelamento.getTotal() != null
&& vendasParcelamento.getValor().doubleValue() != 0 && vendasParcelamento.getTotal().doubleValue() != 0) {
percentual = (vendasParcelamento.getValor().multiply(new BigDecimal("100")));
percentual = (percentual.divide(vendasParcelamento.getTotal(), BigDecimal.ROUND_HALF_UP));
}
vendasParcelamento.setPercentual(percentual.setScale(2));
@ -109,6 +110,7 @@ public class RelatorioVendasParcelamento extends Relatorio {
rset1.close();
if (lsDadosRelatorio.size() > 0) {
setLsDadosRelatorio(lsDadosRelatorio);
}
@ -128,54 +130,58 @@ public class RelatorioVendasParcelamento extends Relatorio {
private String carregarVendasComParcelamento(String puntoVenta, String empresa) {
StringBuilder sql = new StringBuilder();
sql.append(" SELECT m.DESCMARCA AS empresa, ");
sql.append(" pv.PUNTOVENTA_ID AS agencia, ");
sql.append(" u.CVEUSUARIO AS bilheteiro, ");
sql.append(" c.FECHORVENTA AS dataVenda, ");
sql.append(" co.FECCORRIDA AS dataServico, ");
sql.append(" r.NUMRUTA AS linha, ");
sql.append(" co.corrida_id AS servico, ");
sql.append(" orig.DESCPARADA AS origem, ");
sql.append(" dest.DESCPARADA AS destino, ");
sql.append(" c.NUMFOLIOSISTEMA AS bilhete, ");
sql.append(" c.NUMFOLIOPREIMPRESO AS preImpresso, ");
sql.append(" c.NUMASIENTO AS poltrona, ");
sql.append(" COALESCE(c.PRECIOPAGADO,0) AS tarifa, ");
sql.append(" COALESCE(c.IMPORTESEGURO,0) AS seguro, ");
sql.append(" COALESCE(c.IMPORTEPEDAGIO,0) AS pedagio, ");
sql.append(" COALESCE(c.IMPORTETAXAEMBARQUE,0) AS taxa, ");
sql.append(" COALESCE(c.IMPORTEOUTROS,0) AS outros, ");
sql.append(" ( COALESCE(c.IMPORTESEGURO,0)+ COALESCE(c.IMPORTEOUTROS,0) + COALESCE(c.IMPORTEPEDAGIO,0) +COALESCE(IMPORTETAXAEMBARQUE ,0)+COALESCE(c.PRECIOPAGADO,0)) AS total, ");
sql.append(" ct.tipotarjeta AS formaPagamento, ");
sql.append(" ct.numautorizacion AS autorizacao, ");
sql.append(" ct.NSU AS nsu, ");
sql.append(" ct.cantparcelas AS parcelas, ");
sql.append(" ct.importe AS valor ");
sql.append(" FROM caja c ");
sql.append(" INNER JOIN PUNTO_VENTA pv ON c.PUNTOVENTA_ID = pv.PUNTOVENTA_ID ");
sql.append(" INNER JOIN marca m ON m.marca_id = c.marca_id ");
sql.append(" INNER JOIN usuario u ON c.USUARIO_ID = u.USUARIO_ID ");
sql.append(" INNER JOIN ruta r ON c.RUTA_ID = r.RUTA_ID ");
sql.append(" INNER JOIN corrida co ON co.corrida_id = c.corrida_id AND co.feccorrida = c.feccorrida ");
sql.append(" INNER JOIN parada orig ON orig.PARADA_ID = co.ORIGEN_ID ");
sql.append(" INNER JOIN parada dest ON dest.PARADA_ID = co.DESTINO_ID ");
sql.append(" INNER JOIN caja_formapago cfp ON cfp.caja_id = c.caja_id ");
sql.append(" INNER JOIN caja_det_pago cdp ON cdp.cajaformapago_id = cfp.cajaformapago_id ");
sql.append(" INNER JOIN caja_tarjeta ct ON ct.cajadetpago_id = cdp.cajadetpago_id ");
sql.append(" WHERE ");
sql.append(" fechorventa BETWEEN :de AND :ate ");
sql.append(" AND ct.CANTPARCELAS BETWEEN :parcIni AND :parcFim ");
if (puntoVenta != null && !puntoVenta.equals("-1")) {
sql.append(" AND c.PUNTOVENTA_ID in (" + puntoVenta + ") ");
}
sql.append(" SELECT m.DESCMARCA AS empresa, ");
sql.append(" pv.PUNTOVENTA_ID AS agencia, ");
sql.append(" c.NUMOPERACION, ");
sql.append(" u.CVEUSUARIO AS bilheteiro, ");
sql.append(" c.FECHORVENTA AS dataVenda, ");
sql.append(" co.FECCORRIDA AS dataServico, ");
sql.append(" r.NUMRUTA AS linha, ");
sql.append(" co.corrida_id AS servico, ");
sql.append(" orig.DESCPARADA AS origem, ");
sql.append(" dest.DESCPARADA AS destino, ");
sql.append(" c.NUMFOLIOSISTEMA AS bilhete, ");
sql.append(" c.NUMFOLIOPREIMPRESO AS preImpresso, ");
sql.append(" c.NUMASIENTO AS poltrona, ");
sql.append(" COALESCE(c.PRECIOPAGADO,0) AS tarifa, ");
sql.append(" COALESCE(c.IMPORTESEGURO,0) AS seguro, ");
sql.append(" COALESCE(c.IMPORTEPEDAGIO,0) AS pedagio, ");
sql.append(" COALESCE(c.IMPORTETAXAEMBARQUE,0) AS taxa, ");
sql.append(" COALESCE(c.IMPORTEOUTROS,0) AS outros, ");
sql.append(" ( COALESCE(c.IMPORTESEGURO,0)+ COALESCE(c.IMPORTEOUTROS,0) + COALESCE(c.IMPORTEPEDAGIO,0) +COALESCE(IMPORTETAXAEMBARQUE ,0)+COALESCE(c.PRECIOPAGADO,0)) AS total, ");
sql.append(" ct.tipotarjeta AS formaPagamento, ");
sql.append(" ct.numautorizacion AS autorizacao, ");
sql.append(" ct.NSU AS nsu, ");
sql.append(" ct.cantparcelas AS parcelas, ");
sql.append(" ct.importe AS valor ");
sql.append(" FROM caja c ");
sql.append(" INNER JOIN PUNTO_VENTA pv ON c.PUNTOVENTA_ID = pv.PUNTOVENTA_ID ");
sql.append(" INNER JOIN marca m ON m.marca_id = c.marca_id ");
sql.append(" INNER JOIN usuario u ON c.USUARIO_ID = u.USUARIO_ID ");
sql.append(" INNER JOIN ruta r ON c.RUTA_ID = r.RUTA_ID ");
sql.append(" INNER JOIN corrida co ON co.corrida_id = c.corrida_id AND co.feccorrida = c.feccorrida ");
sql.append(" INNER JOIN parada orig ON orig.PARADA_ID = co.ORIGEN_ID ");
sql.append(" INNER JOIN parada dest ON dest.PARADA_ID = co.DESTINO_ID ");
sql.append(" INNER JOIN caja_formapago cfp ON cfp.caja_id = c.caja_id ");
sql.append(" INNER JOIN caja_det_pago cdp ON cdp.cajaformapago_id = cfp.cajaformapago_id ");
sql.append(" INNER JOIN caja_tarjeta ct ON ct.cajadetpago_id = cdp.cajadetpago_id ");
sql.append(" WHERE ");
sql.append(" fechorventa BETWEEN :de AND :ate ");
sql.append(" AND ct.CANTPARCELAS BETWEEN :parcIni AND :parcFim ");
if (puntoVenta != null && !puntoVenta.equals("-1")) {
sql.append(" AND c.PUNTOVENTA_ID in (" + puntoVenta + ") ");
}
if (empresa != null && !empresa.equals("-1")) {
sql.append(" AND m.empresa_id = :empresaId ");
}
sql.append(" AND c.motivocancelacion_id IS NULL ");
sql.append(" ORDER BY c.NUMOPERACION, ");
sql.append(" c.fechorventa ASC, ");
sql.append(" m.DESCMARCA, ");
sql.append(" pv.PUNTOVENTA_ID, ");
sql.append(" u.cveusuario ");
if (empresa != null && !empresa.equals("-1")) {
sql.append(" AND m.empresa_id = :empresaId ");
}
sql.append(" AND c.motivocancelacion_id IS NULL ");
sql.append(" ORDER BY m.DESCMARCA, ");
sql.append(" pv.PUNTOVENTA_ID, ");
sql.append(" c.fechorventa ASC ");
return sql.toString();