0014053: Comporte - Chamado 76675 - Erro no relatório Fechamento de Conta Corrente /Depósito

fixes bug#14053
dev:Lucas Silverio
qua:Renato

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@92316 d1611594-4594-4d17-8e1d-87c2c4800839
master
fabricio.oliveira 2019-04-25 19:17:00 +00:00
parent 22f264899e
commit aa0c7cb616
5 changed files with 54 additions and 13 deletions

View File

@ -7,6 +7,7 @@ import java.sql.ResultSet;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -79,10 +80,51 @@ public class RelatorioDepositos extends Relatorio {
Collections.sort(lsDadosRelatorio);
if (lsDadosRelatorio.size() > 0) {
if(filtrarPendentes) {
lsDadosRelatorio = removeFechamentosZerados(lsDadosRelatorio);
}
setLsDadosRelatorio(lsDadosRelatorio);
}
setNomeSubReporte(nomeSubReporte);
}
private List<RelatorioDepositoBean> removeFechamentosZerados(List<RelatorioDepositoBean> lsDadosRelatorio) {
List<RelatorioDepositoBean> lsDadosRelatorioAux = new ArrayList<RelatorioDepositoBean>();
List<RelatorioDepositoBean> lsDadosRelatorioAux2 = new ArrayList<RelatorioDepositoBean>();
Date dt = lsDadosRelatorio.get(0).getDtmotivo();
String nombPuntoVenta = lsDadosRelatorio.get(0).getNombpuntoventa();
BigDecimal valorFechamento = lsDadosRelatorio.get(0).getVrfechamento();
BigDecimal totalDepositos = BigDecimal.ZERO;
for(RelatorioDepositoBean rb : lsDadosRelatorio) {
if(!dt.equals(rb.getDtmotivo()) || !nombPuntoVenta.equals(rb.getNombpuntoventa())) {
if(totalDepositos.compareTo(valorFechamento) == 0) {
totalDepositos = BigDecimal.ZERO;
valorFechamento = BigDecimal.ZERO;
lsDadosRelatorioAux2 = new ArrayList<RelatorioDepositoBean>();
valorFechamento = rb.getVrfechamento();
dt = rb.getDtmotivo();
nombPuntoVenta = rb.getNombpuntoventa();
}else {
lsDadosRelatorioAux.addAll(lsDadosRelatorioAux2);
lsDadosRelatorioAux2 = new ArrayList<RelatorioDepositoBean>();
totalDepositos = BigDecimal.ZERO;
valorFechamento = rb.getVrfechamento();
dt = rb.getDtmotivo();
nombPuntoVenta = rb.getNombpuntoventa();
}
}
lsDadosRelatorioAux2.add(rb);
totalDepositos = totalDepositos.add(rb.getVrdeposito());
}
if(totalDepositos.compareTo(valorFechamento) == 0) {
lsDadosRelatorioAux2 = new ArrayList<RelatorioDepositoBean>();
}else {
lsDadosRelatorioAux.addAll(lsDadosRelatorioAux2);
}
return lsDadosRelatorioAux;
}
});
} catch (Exception e) {
log.error("", e);
@ -134,29 +176,28 @@ public class RelatorioDepositos extends Relatorio {
// Join com fechamento_cct_deposito
sql.append(" LEFT JOIN fechamento_cct_deposito fd ");
sql.append(" ON fd.fechamentocntcorrente_id = f.fechamentocntcorrente_id ");
sql.append(" AND fd.activo = 1 ");
// Join com FECHAMENTO_DEPOSITO
sql.append(" LEFT JOIN FECHAMENTO_DEPOSITO fdp ");
sql.append(" ON fdp.FECHAMENTODEPOSITO_ID = fd.FECHAMENTODEPOSITO_ID ");
sql.append(" AND fdp.activo = 1 ");
// Join com empresa_contabancaria
sql.append(" LEFT JOIN empresa_contabancaria ecb ");
sql.append(" ON ecb.EMPRESACONTABANCARIA_ID = fdp.EMPRESACONTABANCARIA_ID ");
sql.append(" AND ecb.activo = 1 ");
// Join com INSTI_FINANCEIRA
sql.append(" LEFT JOIN INSTI_FINANCEIRA ifin ");
sql.append(" ON ifin.INSTIFINANCEIRA_ID = ecb.INSTIFINANCEIRA_ID ");
sql.append(" AND ifin.activo = 1 ");
sql.append(" WHERE f.fecfechamento BETWEEN ? AND ? ");
sql.append(" AND f.activo = 1 ");
sql.append(" AND f.activo = 1 ");
sql.append(" AND e.activo = 1 ");
sql.append(" AND p.activo = 1 ");
sql.append(" AND fd.activo = 1 ");
sql.append(" AND fdp.activo = 1 ");
sql.append(" AND ecb.activo = 1 ");
sql.append(" AND ifin.activo = 1 ");
if (puntoVentaId != null){
if (puntoVentaId != null && puntoVentaId != -1){
sql.append(" and f.puntoventa_id = " + puntoVentaId);
}
if (empresaId != null){
if (empresaId != null && empresaId != -1){
sql.append(" and e.empresa_id = " + empresaId);
}
sql.append(" GROUP BY e.nombempresa, ");

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="RelatorioDepositos" pageWidth="595" pageHeight="842" whenNoDataType="NoDataSection" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" whenResourceMissingType="Empty" uuid="65274c35-4f3f-4196-bd84-f042e9ac12ea">
<property name="ireport.zoom" value="1.3636363636363644"/>
<property name="ireport.x" value="0"/>
<property name="ireport.x" value="136"/>
<property name="ireport.y" value="0"/>
<parameter name="fecInicio" class="java.lang.String">
<defaultValueExpression><![CDATA[]]></defaultValueExpression>
@ -316,7 +316,7 @@
<bottomPen lineWidth="0.5"/>
<rightPen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<textElement textAlignment="Center">
<font size="8" isBold="true"/>
<paragraph lineSpacing="Single"/>
</textElement>
@ -330,7 +330,7 @@
<bottomPen lineWidth="0.5"/>
<rightPen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<textElement textAlignment="Center">
<font size="8" isBold="true"/>
<paragraph lineSpacing="Single"/>
</textElement>
@ -344,7 +344,7 @@
<bottomPen lineWidth="0.5"/>
<rightPen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<textElement textAlignment="Center">
<font size="8" isBold="true"/>
<paragraph lineSpacing="Single"/>
</textElement>

View File

@ -7329,7 +7329,7 @@ relatorioDepositosController.lbDatInicial.value=Fecha Inicial
relatorioDepositosController.lbDatFinal.value=Fecha Final
relatorioDepositosController.lbPuntoventa.value=Punto de Venta
relatorioDepositosController.lbEmpresa.value=Empresa
relatorioDepositosController.lbPendentes.value=Filtrar Pendientes
relatorioDepositosController.lbPendentes.value=Filtrar Apenas Pendientes
# Relatorio Movimientos em Atraso
relatorioMovimentosAtrasoController.window.title = Reporte Movimientos Retrasados

View File

@ -7818,7 +7818,7 @@ relatorioDepositosController.lbDatInicial.value=Data Inicial
relatorioDepositosController.lbDatFinal.value=Data Final
relatorioDepositosController.lbPuntoventa.value=Ponto de Venda
relatorioDepositosController.lbEmpresa.value=Empresa
relatorioDepositosController.lbPendentes.value=Filtrar Pendentes
relatorioDepositosController.lbPendentes.value=Filtrar Apenas Pendentes
relatorioDepositosController.lbClassificarBanco.value=Classificar por banco
# Relatorio Movimentos em Atraso