From 05fccb0b237d3faac3a8fb7a4785be317e71412f Mon Sep 17 00:00:00 2001 From: "wallace.henrique" Date: Wed, 28 Aug 2024 14:02:29 -0300 Subject: [PATCH] fixes bug#AL-4718 --- pom.xml | 2 +- .../relatorios/impl/RelatorioEstoque.java | 83 ++++++++++--------- 2 files changed, 46 insertions(+), 39 deletions(-) diff --git a/pom.xml b/pom.xml index 38fea0722..060d545f9 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 br.com.rjconsultores ventaboletosadm - 1.131.3 + 1.131.4 war diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstoque.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstoque.java index ff90965ed..19517aefb 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstoque.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstoque.java @@ -49,19 +49,13 @@ public class RelatorioEstoque extends Relatorio { String sql = retornarItensConsultaPorPuloFolio(puntoVentaId,empresaId, dtInicio, dtFim, aidfTipoId, aidfId); NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql); - if(dtInicio != null && dtFim != null) { - stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); - stmt.setString("dataFinal", DateUtil.getStringDate(dtFim, "dd/MM/yyyy") + " 23:59:59"); - }else if(dtInicio != null) { - stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); - } +// if(dtInicio != null && dtFim != null) { +// stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); +// stmt.setString("dataFinal", DateUtil.getStringDate(dtFim, "dd/MM/yyyy") + " 23:59:59"); +// }else if(dtInicio != null) { +// stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); +// } - Calendar c = Calendar.getInstance(); - c.setTime(dtInicio); - c.add(Calendar.YEAR, -3); - - stmt.setString("dataInicioVenda", DateUtil.getStringDate(c.getTime(), "dd/MM/yyyy") + " 23:59:59"); - stmt.setString("dataFimVenda", DateUtil.getStringDate(new Date(), "dd/MM/yyyy") + " 23:59:59"); if(aidfTipoId != null) { stmt.setInt("aidfTipo",aidfTipoId); @@ -109,8 +103,8 @@ public class RelatorioEstoque extends Relatorio { stmt2.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); } - stmt2.setString("dataInicioVenda", DateUtil.getStringDate(c.getTime(), "dd/MM/yyyy") + " 23:59:59"); - stmt2.setString("dataFimVenda", DateUtil.getStringDate(new Date(), "dd/MM/yyyy") + " 23:59:59"); +// stmt2.setString("dataInicioVenda", DateUtil.getStringDate(c.getTime(), "dd/MM/yyyy") + " 23:59:59"); +// stmt2.setString("dataFimVenda", DateUtil.getStringDate(new Date(), "dd/MM/yyyy") + " 23:59:59"); if(aidfTipoId != null) { stmt2.setInt("aidfTipo",aidfTipoId); @@ -153,6 +147,7 @@ public class RelatorioEstoque extends Relatorio { List lsTempRetorno = new ArrayList<>(); List lsTempRetornoAux = new ArrayList<>(); lsEstoquePorSalto = validarFolioPreImpressoPuntoventa(lsEstoquePorSalto, puntoVentaId); + lsEstoquePorSalto = validarFolioPreImpressoFechorAquicision(lsEstoquePorSalto, dtInicio,dtFim); for (ItemReporteControleEstoqueBoletos i : lsEstoquePorSalto) { if(map.get(i.getID()) == null) { for (ItemReporteControleEstoqueBoletos item : lsEstoquePorSalto) { @@ -277,13 +272,13 @@ public class RelatorioEstoque extends Relatorio { sb.append(" AND Em.empresa_ID = ") .append(empresaId); } - if(dataInicio!= null && dataFim != null) { - sb.append(" AND AI.fecadquisicion BETWEEN TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFinal,'dd/mm/yyyy hh24:mi:ss') "); - }else if(dataInicio!= null) { - sb.append(" AND AI.fecadquisicion >= TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') "); - } - sb.append(" AND cj.fechorventa BETWEEN TO_DATE(:dataInicioVenda,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFimVenda,'dd/mm/yyyy hh24:mi:ss') "); - sb.append(" AND DAB.NUMFOLIOFINAL < 2147483647 "); +// if(dataInicio!= null && dataFim != null) { +// sb.append(" AND AI.fecadquisicion BETWEEN TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFinal,'dd/mm/yyyy hh24:mi:ss') "); +// }else if(dataInicio!= null) { +// sb.append(" AND AI.fecadquisicion >= TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') "); +// } + sb.append(" AND CJ.fechorventa BETWEEN (SELECT MIN(C.fechorventa) FROM CAJA c ) AND (select MAX(c.fechorventa) FROM CAJA c) "); + sb.append(" AND DAB.NUMFOLIOFINAL < 2147483647 "); sb.append(" AND DAB.STATUSOPERACION IN(0, "); sb.append(" 1, "); sb.append(" 4) "); @@ -361,12 +356,12 @@ public class RelatorioEstoque extends Relatorio { sb.append(" AND Em.empresa_ID = ") .append(empresaId); } - if(dataInicio!= null && dataFim != null) { - sb.append(" AND AI.fecadquisicion BETWEEN TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFinal,'dd/mm/yyyy hh24:mi:ss') "); - }else if(dataInicio!= null) { - sb.append(" AND AI.fecadquisicion >= TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') "); - } - sb.append(" AND FECHORVTA BETWEEN TO_DATE(:dataInicioVenda,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFimVenda,'dd/mm/yyyy hh24:mi:ss') "); +// if(dataInicio!= null && dataFim != null) { +// sb.append(" AND AI.fecadquisicion BETWEEN TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFinal,'dd/mm/yyyy hh24:mi:ss') "); +// }else if(dataInicio!= null) { +// sb.append(" AND AI.fecadquisicion >= TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') "); +// } + sb.append(" AND CJ.FECHORVTA BETWEEN (SELECT MIN(CD.FECHORVTA) FROM CAJA_DIVERSOS CD) AND (select MAX(CD.FECHORVTA) FROM CAJA_DIVERSOS CD) "); sb.append(" AND DAB.NUMFOLIOFINAL < 2147483647 "); sb.append(" AND DAB.STATUSOPERACION IN(0, "); sb.append(" 1, "); @@ -380,7 +375,7 @@ public class RelatorioEstoque extends Relatorio { sb.append(" AND DAB.ACTIVO = 1 "); sb.append(" AND AB.activo =1 AND AI.activo = 1 and est.estado_id = ai.ESTADO_ID "); sb.append(aidfTipo != null ? " AND (AI.AIDFTIPO_ID =:aidfTipo AND AIT.AIDFTIPO_ID = AI.AIDFTIPO_ID) " : " AND AIT.AIDFTIPO_ID = AI.AIDFTIPO_ID "); - sb.append(" and CJ.aidf_id = AI.AIDF_ID "); +// sb.append(" and CJ.aidf_id = AI.AIDF_ID "); sb.append(aidfId != null ? " AND (AI.AIDF_ID =:aidfId AND DAB.AIDF_ID = AI.AIDF_ID) " : " AND DAB.AIDF_ID = AI.AIDF_ID "); sb.append(" GROUP BY DAB.AIDF_ID, "); sb.append(" DAB.NUMSERIEPREIMPRESA, "); @@ -463,21 +458,20 @@ public class RelatorioEstoque extends Relatorio { .append("LEFT JOIN aidf_tipo ait ON ait.AIDFTIPO_ID= ai.AIDFTIPO_ID ") .append("LEFT JOIN ESTADO est ON est.ESTADO_ID = ai.ESTADO_ID ") .append("LEFT JOIN ESTACION ES ON es.ESTACION_ID = ab.ESTACION_ID ") - .append("JOIN CAJA_DIVERSOS CJ ON CJ.AIDF_ID = dab.AIDF_ID ") +// .append("LEFT JOIN CAJA_DIVERSOS CJ ON CJ.AIDF_ID = dab.AIDF_ID ") +// .append("LEFT JOIN CAJA CC ON (TO_NUMBER(CC.NUMFOLIOPREIMPRESO) BETWEEN TO_NUMBER(DAB.NUMFOLIOINICIAL) AND TO_NUMBER(DAB.NUMFOLIOFINAL) AND (CC.NUMSERIEPREIMPRESA = dab.NUMSERIEPREIMPRESA OR (CC.NUMSERIEPREIMPRESA IS NULL AND dab.NUMSERIEPREIMPRESA IS NULL))) ") .append("WHERE dab.STATUSOPERACION IN(0,1,4) ") .append("AND dab.ACTIVO = 1 ") .append(" and dab.NUMFOLIOFINAL < 2147483647 ") .append(" AND DAB.AIDF_ID = AI.AIDF_ID and ai.activo = 1 ") .append(aidfTipo != null ? " AND AI.AIDFTIPO_ID = :aidfTipo " : " ") - .append(aidfId != null ? " AND AI.AIDF_ID = :aidfId " : " ") - .append("AND TO_NUMBER(CJ.NUMFOLIOPREIMPRESO) BETWEEN TO_NUMBER(DAB.NUMFOLIOINICIAL) AND TO_NUMBER(DAB.NUMFOLIOFINAL) ") - .append(" AND (cj.NUMSERIEPREIMPRESA = dab.NUMSERIEPREIMPRESA ") - .append(" OR (cj.NUMSERIEPREIMPRESA IS NULL ") - .append("AND dab.NUMSERIEPREIMPRESA IS NULL)) ") - .append(" AND CJ.FECHORVTA BETWEEN TO_DATE(:dataInicioVenda,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFimVenda,'dd/mm/yyyy hh24:mi:ss') "); - - - + .append(aidfId != null ? " AND AI.AIDF_ID = :aidfId " : " "); +// .append("AND TO_NUMBER(CJ.NUMFOLIOPREIMPRESO) BETWEEN TO_NUMBER(DAB.NUMFOLIOINICIAL) AND TO_NUMBER(DAB.NUMFOLIOFINAL) ") +// .append(" AND (cj.NUMSERIEPREIMPRESA = dab.NUMSERIEPREIMPRESA ") +// .append(" OR (cj.NUMSERIEPREIMPRESA IS NULL ") +// .append("AND dab.NUMSERIEPREIMPRESA IS NULL)) ") +// .append(" AND (CJ.FECHORVTA BETWEEN (SELECT MIN(C.FECHORVTA) FROM CAJA_DIVERSOS c ) AND (select MAX(c.FECHORVTA) FROM CAJA_DIVERSOS c) ") +// .append(" OR CC.FECHORVENTA BETWEEN (SELECT MIN(C.fechorventa) FROM CAJA c ) AND (select MAX(c.fechorventa) FROM CAJA c)) "); if (puntoVentaId != null) { @@ -648,5 +642,18 @@ public class RelatorioEstoque extends Relatorio { } return lsEstoquePorSaltoaux; } + + private List validarFolioPreImpressoFechorAquicision(List lsEstoquePorSalto,Date dataInicial, Date dataFinal) { + + List lsEstoquePorSaltoaux = new ArrayList<>(lsEstoquePorSalto); + + for (ItemReporteControleEstoqueBoletos itemReporteControleEstoqueBoletos : lsEstoquePorSalto) { + if(!(DateUtil.isIgualORMaior(itemReporteControleEstoqueBoletos.getFechorAquisicion(), dataInicial) && DateUtil.isIgualORMenor(itemReporteControleEstoqueBoletos.getFechorAquisicion(), dataFinal))) { + lsEstoquePorSaltoaux.remove(itemReporteControleEstoqueBoletos); + } + + } + return lsEstoquePorSaltoaux; + } }