Merge pull request 'fixes bug#AL-4718' (!684) from AL-4718 into master

Reviewed-on: adm/VentaBoletosAdm#684
Reviewed-by: aristides <aristides@rjconsultores.com.br>
master 1.131.4
wallace 2024-08-28 17:21:11 +00:00
commit 67a2c1f411
2 changed files with 46 additions and 39 deletions

View File

@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>br.com.rjconsultores</groupId> <groupId>br.com.rjconsultores</groupId>
<artifactId>ventaboletosadm</artifactId> <artifactId>ventaboletosadm</artifactId>
<version>1.131.3</version> <version>1.131.4</version>
<packaging>war</packaging> <packaging>war</packaging>
<properties> <properties>

View File

@ -49,19 +49,13 @@ public class RelatorioEstoque extends Relatorio {
String sql = retornarItensConsultaPorPuloFolio(puntoVentaId,empresaId, dtInicio, dtFim, aidfTipoId, aidfId); String sql = retornarItensConsultaPorPuloFolio(puntoVentaId,empresaId, dtInicio, dtFim, aidfTipoId, aidfId);
NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql); NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql);
if(dtInicio != null && dtFim != null) { // if(dtInicio != null && dtFim != null) {
stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); // stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00");
stmt.setString("dataFinal", DateUtil.getStringDate(dtFim, "dd/MM/yyyy") + " 23:59:59"); // stmt.setString("dataFinal", DateUtil.getStringDate(dtFim, "dd/MM/yyyy") + " 23:59:59");
}else if(dtInicio != null) { // }else if(dtInicio != null) {
stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); // 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) { if(aidfTipoId != null) {
stmt.setInt("aidfTipo",aidfTipoId); 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("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("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("dataFimVenda", DateUtil.getStringDate(new Date(), "dd/MM/yyyy") + " 23:59:59");
if(aidfTipoId != null) { if(aidfTipoId != null) {
stmt2.setInt("aidfTipo",aidfTipoId); stmt2.setInt("aidfTipo",aidfTipoId);
@ -153,6 +147,7 @@ public class RelatorioEstoque extends Relatorio {
List<ItemReporteControleEstoqueBoletos> lsTempRetorno = new ArrayList<>(); List<ItemReporteControleEstoqueBoletos> lsTempRetorno = new ArrayList<>();
List<ItemReporteControleEstoqueBoletos> lsTempRetornoAux = new ArrayList<>(); List<ItemReporteControleEstoqueBoletos> lsTempRetornoAux = new ArrayList<>();
lsEstoquePorSalto = validarFolioPreImpressoPuntoventa(lsEstoquePorSalto, puntoVentaId); lsEstoquePorSalto = validarFolioPreImpressoPuntoventa(lsEstoquePorSalto, puntoVentaId);
lsEstoquePorSalto = validarFolioPreImpressoFechorAquicision(lsEstoquePorSalto, dtInicio,dtFim);
for (ItemReporteControleEstoqueBoletos i : lsEstoquePorSalto) { for (ItemReporteControleEstoqueBoletos i : lsEstoquePorSalto) {
if(map.get(i.getID()) == null) { if(map.get(i.getID()) == null) {
for (ItemReporteControleEstoqueBoletos item : lsEstoquePorSalto) { for (ItemReporteControleEstoqueBoletos item : lsEstoquePorSalto) {
@ -277,12 +272,12 @@ public class RelatorioEstoque extends Relatorio {
sb.append(" AND Em.empresa_ID = ") sb.append(" AND Em.empresa_ID = ")
.append(empresaId); .append(empresaId);
} }
if(dataInicio!= null && dataFim != null) { // 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') "); // 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) { // }else if(dataInicio!= null) {
sb.append(" AND AI.fecadquisicion >= TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') "); // 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 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.NUMFOLIOFINAL < 2147483647 ");
sb.append(" AND DAB.STATUSOPERACION IN(0, "); sb.append(" AND DAB.STATUSOPERACION IN(0, ");
sb.append(" 1, "); sb.append(" 1, ");
@ -361,12 +356,12 @@ public class RelatorioEstoque extends Relatorio {
sb.append(" AND Em.empresa_ID = ") sb.append(" AND Em.empresa_ID = ")
.append(empresaId); .append(empresaId);
} }
if(dataInicio!= null && dataFim != null) { // 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') "); // 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) { // }else if(dataInicio!= null) {
sb.append(" AND AI.fecadquisicion >= TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') "); // 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') "); 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.NUMFOLIOFINAL < 2147483647 ");
sb.append(" AND DAB.STATUSOPERACION IN(0, "); sb.append(" AND DAB.STATUSOPERACION IN(0, ");
sb.append(" 1, "); sb.append(" 1, ");
@ -380,7 +375,7 @@ public class RelatorioEstoque extends Relatorio {
sb.append(" AND DAB.ACTIVO = 1 "); 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(" 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(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(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(" GROUP BY DAB.AIDF_ID, ");
sb.append(" DAB.NUMSERIEPREIMPRESA, "); 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 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 ESTADO est ON est.ESTADO_ID = ai.ESTADO_ID ")
.append("LEFT JOIN ESTACION ES ON es.ESTACION_ID = ab.ESTACION_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("WHERE dab.STATUSOPERACION IN(0,1,4) ")
.append("AND dab.ACTIVO = 1 ") .append("AND dab.ACTIVO = 1 ")
.append(" and dab.NUMFOLIOFINAL < 2147483647 ") .append(" and dab.NUMFOLIOFINAL < 2147483647 ")
.append(" AND DAB.AIDF_ID = AI.AIDF_ID and ai.activo = 1 ") .append(" AND DAB.AIDF_ID = AI.AIDF_ID and ai.activo = 1 ")
.append(aidfTipo != null ? " AND AI.AIDFTIPO_ID = :aidfTipo " : " ") .append(aidfTipo != null ? " AND AI.AIDFTIPO_ID = :aidfTipo " : " ")
.append(aidfId != null ? " AND AI.AIDF_ID = :aidfId " : " ") .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 TO_NUMBER(CJ.NUMFOLIOPREIMPRESO) BETWEEN TO_NUMBER(DAB.NUMFOLIOINICIAL) AND TO_NUMBER(DAB.NUMFOLIOFINAL) ")
.append(" AND (cj.NUMSERIEPREIMPRESA = dab.NUMSERIEPREIMPRESA ") // .append(" AND (cj.NUMSERIEPREIMPRESA = dab.NUMSERIEPREIMPRESA ")
.append(" OR (cj.NUMSERIEPREIMPRESA IS NULL ") // .append(" OR (cj.NUMSERIEPREIMPRESA IS NULL ")
.append("AND dab.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(" 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) { if (puntoVentaId != null) {
@ -649,4 +643,17 @@ public class RelatorioEstoque extends Relatorio {
return lsEstoquePorSaltoaux; return lsEstoquePorSaltoaux;
} }
private List<ItemReporteControleEstoqueBoletos> validarFolioPreImpressoFechorAquicision(List<ItemReporteControleEstoqueBoletos> lsEstoquePorSalto,Date dataInicial, Date dataFinal) {
List<ItemReporteControleEstoqueBoletos> lsEstoquePorSaltoaux = new ArrayList<>(lsEstoquePorSalto);
for (ItemReporteControleEstoqueBoletos itemReporteControleEstoqueBoletos : lsEstoquePorSalto) {
if(!(DateUtil.isIgualORMaior(itemReporteControleEstoqueBoletos.getFechorAquisicion(), dataInicial) && DateUtil.isIgualORMenor(itemReporteControleEstoqueBoletos.getFechorAquisicion(), dataFinal))) {
lsEstoquePorSaltoaux.remove(itemReporteControleEstoqueBoletos);
}
}
return lsEstoquePorSaltoaux;
}
} }