correcao (fixes bug 6116)
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@43528 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
d344caad1e
commit
109c2b1ec4
|
@ -38,21 +38,17 @@ public class RelatorioAgenciaFechamento extends Relatorio {
|
|||
String empresaNome = parametros.get("empresaNome") != null ? parametros.get("empresaNome").toString() : "";
|
||||
String puntoVenta = parametros.get("NUMPUNTOVENTA") != null ? parametros.get("NUMPUNTOVENTA").toString() : null;
|
||||
|
||||
RelatorioAgenciaFechamentoBean agenciaFechamento = new RelatorioAgenciaFechamentoBean();
|
||||
lsDadosRelatorio = new ArrayList<RelatorioAgenciaFechamentoBean>();
|
||||
Boolean existeRegistro = Boolean.FALSE;
|
||||
|
||||
String sql = carregarDadosTotaisdeVenda(puntoVenta);
|
||||
|
||||
System.out.println(sql);
|
||||
|
||||
BigDecimal total = BigDecimal.ZERO;
|
||||
BigDecimal vendido = BigDecimal.ZERO;
|
||||
NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql);
|
||||
ResultSet rset = null;
|
||||
ResultSet rset1 = null;
|
||||
ResultSet rset2 = null;
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
|
||||
|
||||
stmt = new NamedParameterStatement(conexao, sql);
|
||||
stmt.setTimestamp("de", new java.sql.Timestamp(sdf.parse(fecInicio).getTime()));
|
||||
stmt.setTimestamp("ate", new java.sql.Timestamp(sdf.parse(fecFinal).getTime()));
|
||||
|
||||
|
@ -64,27 +60,31 @@ public class RelatorioAgenciaFechamento extends Relatorio {
|
|||
stmt.setString("puntoVentaId", puntoVenta);
|
||||
}
|
||||
|
||||
rset = stmt.executeQuery();
|
||||
rset1 = stmt.executeQuery();
|
||||
|
||||
while (rset.next()) {
|
||||
while (rset1.next()) {
|
||||
|
||||
existeRegistro = Boolean.TRUE;
|
||||
RelatorioAgenciaFechamentoBean agenciaFechamento = new RelatorioAgenciaFechamentoBean();
|
||||
BigDecimal total = BigDecimal.ZERO;
|
||||
BigDecimal vendido = BigDecimal.ZERO;
|
||||
|
||||
Integer qtdevendido = rset.getInt("qtdevendido");
|
||||
Integer qtdedigitado = rset.getInt("qtdedigitado");
|
||||
Integer qtdeAnulado = rset.getInt("qtdeAnulado");
|
||||
Integer qtdeDevolvido = rset.getInt("qtdeDevolvido");
|
||||
String puntoVentaId = rset1.getString("codigo");
|
||||
|
||||
Integer qtdevendido = rset1.getInt("qtdevendido");
|
||||
Integer qtdedigitado = rset1.getInt("qtdedigitado");
|
||||
Integer qtdeAnulado = rset1.getInt("qtdeAnulado");
|
||||
Integer qtdeDevolvido = rset1.getInt("qtdeDevolvido");
|
||||
Integer qtdeTotal = null;
|
||||
|
||||
vendido = rset.getBigDecimal("vendido");
|
||||
BigDecimal digitado = rset.getBigDecimal("digitado");
|
||||
BigDecimal anulado = rset.getBigDecimal("anulado");
|
||||
BigDecimal devolvido = rset.getBigDecimal("devolvido");
|
||||
vendido = rset1.getBigDecimal("vendido");
|
||||
BigDecimal digitado = rset1.getBigDecimal("digitado");
|
||||
BigDecimal anulado = rset1.getBigDecimal("anulado");
|
||||
BigDecimal devolvido = rset1.getBigDecimal("devolvido");
|
||||
|
||||
agenciaFechamento.setEmpresa(empresaNome);
|
||||
|
||||
agenciaFechamento.setCodigo(rset.getString("codigo"));
|
||||
agenciaFechamento.setDescricao(rset.getString("descricao"));
|
||||
agenciaFechamento.setCodigo(rset1.getString("codigo"));
|
||||
agenciaFechamento.setDescricao(rset1.getString("descricao"));
|
||||
|
||||
agenciaFechamento.setQtdeVendido(qtdevendido != null ? qtdevendido : NumberUtils.INTEGER_ZERO);
|
||||
agenciaFechamento.setQtdeDigitado(qtdedigitado != null ? qtdedigitado : NumberUtils.INTEGER_ZERO);
|
||||
|
@ -94,6 +94,10 @@ public class RelatorioAgenciaFechamento extends Relatorio {
|
|||
qtdeTotal = ((qtdevendido != null ? qtdevendido : NumberUtils.INTEGER_ZERO) + (qtdedigitado != null ? qtdedigitado : NumberUtils.INTEGER_ZERO))
|
||||
- ((qtdeAnulado != null ? qtdeAnulado : NumberUtils.INTEGER_ZERO) + (qtdeDevolvido != null ? qtdeDevolvido : NumberUtils.INTEGER_ZERO));
|
||||
|
||||
if (qtdeTotal < 0) {
|
||||
qtdeTotal = NumberUtils.INTEGER_ZERO;
|
||||
}
|
||||
|
||||
agenciaFechamento.setQtdeTotal(qtdeTotal);
|
||||
|
||||
agenciaFechamento.setDigitado(digitado != null ? digitado : BigDecimal.ZERO);
|
||||
|
@ -105,11 +109,10 @@ public class RelatorioAgenciaFechamento extends Relatorio {
|
|||
total = total.subtract(anulado != null ? anulado : BigDecimal.ZERO);
|
||||
total = total.subtract(devolvido != null ? devolvido : BigDecimal.ZERO);
|
||||
|
||||
}
|
||||
stmt = new NamedParameterStatement(conexao, carregarDadosReceitaDespesa(puntoVentaId));
|
||||
|
||||
if (existeRegistro) {
|
||||
System.out.println(carregarDadosReceitaDespesa(puntoVentaId));
|
||||
|
||||
stmt = new NamedParameterStatement(conexao, carregarDadosReceitaDespesa(puntoVenta));
|
||||
stmt.setTimestamp("de", new java.sql.Timestamp(sdf.parse(fecInicio).getTime()));
|
||||
stmt.setTimestamp("ate", new java.sql.Timestamp(sdf.parse(fecFinal).getTime()));
|
||||
|
||||
|
@ -117,17 +120,17 @@ public class RelatorioAgenciaFechamento extends Relatorio {
|
|||
stmt.setInt("empresaId", Integer.parseInt(empresa));
|
||||
}
|
||||
|
||||
if (puntoVenta != null && !puntoVenta.equals("-1")) {
|
||||
stmt.setString("puntoVentaId", puntoVenta);
|
||||
if (puntoVentaId != null ) {
|
||||
stmt.setString("puntoVentaId", puntoVentaId);
|
||||
}
|
||||
|
||||
rset = stmt.executeQuery();
|
||||
rset2 = stmt.executeQuery();
|
||||
|
||||
while (rset.next()) {
|
||||
if (rset2.next()) {
|
||||
|
||||
Integer qtdedespesa = rset.getInt("qtdedespesa");
|
||||
BigDecimal receita = rset.getBigDecimal("receita");
|
||||
BigDecimal despesa = rset.getBigDecimal("despesa");
|
||||
Integer qtdedespesa = rset2.getInt("qtdedespesa");
|
||||
BigDecimal receita = rset2.getBigDecimal("receita");
|
||||
BigDecimal despesa = rset2.getBigDecimal("despesa");
|
||||
|
||||
agenciaFechamento.setQtdeDespesa(qtdedespesa != null ? qtdedespesa : NumberUtils.INTEGER_ZERO);
|
||||
agenciaFechamento.setReceita(receita != null ? receita : BigDecimal.ZERO);
|
||||
|
@ -140,8 +143,14 @@ public class RelatorioAgenciaFechamento extends Relatorio {
|
|||
total = total.subtract(despesa != null ? despesa : BigDecimal.ZERO);
|
||||
|
||||
agenciaFechamento.setVendido(vendido != null ? vendido : BigDecimal.ZERO);
|
||||
agenciaFechamento.setTotal(total);
|
||||
agenciaFechamento.setTotal(total.abs());
|
||||
|
||||
} else {
|
||||
agenciaFechamento.setQtdeDespesa(NumberUtils.INTEGER_ZERO);
|
||||
agenciaFechamento.setReceita(BigDecimal.ZERO);
|
||||
agenciaFechamento.setDespesa(BigDecimal.ZERO);
|
||||
agenciaFechamento.setVendido(vendido != null ? vendido : BigDecimal.ZERO);
|
||||
agenciaFechamento.setTotal(total.abs());
|
||||
}
|
||||
|
||||
lsDadosRelatorio.add(agenciaFechamento);
|
||||
|
@ -171,14 +180,14 @@ public class RelatorioAgenciaFechamento extends Relatorio {
|
|||
sql.append(" SELECT ");
|
||||
sql.append(" pv.PUNTOVENTA_ID AS codigo, ");
|
||||
sql.append(" pv.nombpuntoventa AS descricao, ");
|
||||
sql.append(" COUNT(CASE WHEN c.MOTIVOCANCELACION_ID IS NULL THEN cfp.IMPORTE ELSE NULL END) AS qtdevendido, ");
|
||||
sql.append(" COALESCE(COUNT(CASE WHEN c.MOTIVOCANCELACION_ID IS NULL THEN cfp.IMPORTE ELSE NULL END),0) AS qtdevendido, ");
|
||||
sql.append(" 0 AS qtdedigitado, ");
|
||||
sql.append(" COUNT(CASE WHEN c.MOTIVOCANCELACION_ID = 31 THEN 1 ELSE NULL END) AS qtdeAnulado, ");
|
||||
sql.append(" COUNT(CASE WHEN c.MOTIVOCANCELACION_ID = 32 THEN 1 ELSE NULL END) AS qtdeDevolvido, ");
|
||||
sql.append(" SUM(CASE WHEN c.MOTIVOCANCELACION_ID IS NULL THEN cfp.IMPORTE ELSE 0 END) AS vendido, ");
|
||||
sql.append(" COALESCE(COUNT(CASE WHEN c.MOTIVOCANCELACION_ID = 31 THEN 1 ELSE NULL END),0) AS qtdeAnulado, ");
|
||||
sql.append(" COALESCE(COUNT(CASE WHEN c.MOTIVOCANCELACION_ID = 32 THEN 1 ELSE NULL END),0) AS qtdeDevolvido, ");
|
||||
sql.append(" COALESCE(SUM(CASE WHEN c.MOTIVOCANCELACION_ID IS NULL THEN cfp.IMPORTE ELSE NULL END),0) AS vendido, ");
|
||||
sql.append(" 0 AS digitado, ");
|
||||
sql.append(" SUM(CASE WHEN c.MOTIVOCANCELACION_ID = 31 THEN cfp.IMPORTE ELSE 0 END) AS anulado, ");
|
||||
sql.append(" SUM(CASE WHEN c.MOTIVOCANCELACION_ID = 32 THEN cfp.IMPORTE ELSE 0 END) AS devolvido ");
|
||||
sql.append(" COALESCE(SUM(CASE WHEN c.MOTIVOCANCELACION_ID = 31 THEN cfp.IMPORTE ELSE NULL END),0) AS anulado, ");
|
||||
sql.append(" COALESCE(SUM(CASE WHEN c.MOTIVOCANCELACION_ID = 32 THEN cfp.IMPORTE ELSE NULL END),0) AS devolvido ");
|
||||
sql.append(" FROM CAJA c ");
|
||||
sql.append(" INNER JOIN CAJA_FORMAPAGO cfp ON c.CAJA_ID = cfp.CAJA_ID AND cfp.activo = 1 ");
|
||||
sql.append(" INNER JOIN PUNTO_VENTA pv ON c.PUNTOVENTA_ID = pv.PUNTOVENTA_ID ");
|
||||
|
@ -212,9 +221,9 @@ public class RelatorioAgenciaFechamento extends Relatorio {
|
|||
|
||||
StringBuilder sql = new StringBuilder();
|
||||
sql.append(" SELECT ");
|
||||
sql.append(" COUNT(CASE WHEN cdp.IMPORTE < 0 THEN 1 ELSE NULL END) as qtdedespesa, ");
|
||||
sql.append(" SUM(CASE WHEN cdp.IMPORTE > 0 THEN cdp.IMPORTE ELSE 0 END) AS receita, ");
|
||||
sql.append(" ABS(SUM(CASE WHEN cdp.IMPORTE < 0 THEN cdp.IMPORTE ELSE 0 END)) AS despesa ");
|
||||
sql.append(" COALESCE(COUNT(CASE WHEN cdp.IMPORTE < 0 THEN 1 ELSE NULL END),0) as qtdedespesa, ");
|
||||
sql.append(" COALESCE(SUM(CASE WHEN cdp.IMPORTE > 0 THEN cdp.IMPORTE ELSE NULL END),0) AS receita, ");
|
||||
sql.append(" COALESCE(ABS(SUM(CASE WHEN cdp.IMPORTE < 0 THEN cdp.IMPORTE ELSE NULL END)),0) AS despesa ");
|
||||
sql.append(" FROM CAJA_DIVERSOS cd, ");
|
||||
sql.append(" CAJA_DIVERSOS_PAGO cdp, ");
|
||||
sql.append(" EVENTO_EXTRA ee ");
|
||||
|
|
Loading…
Reference in New Issue