diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java index d055ea651..743cbb7e3 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java @@ -272,8 +272,8 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sql.append(" AND r3.fiscalimpressora_id = ifi.fiscalimpressora_id "); sql.append(" inner join fiscal_t2 t2 "); sql.append(" ON ifi.fiscalimpressora_id = t2.fiscalimpressora_id "); - sql.append(" inner join empresa e ON (TRANSLATE(t2.cnpj, ' / - . ', ' ') = (TRANSLATE(e.cnpj, ' / - . ', ' ')) ) or "); - sql.append(" (TRANSLATE(t2.cnpj, ' / - . ', ' ') in "); + sql.append(" inner join empresa e ON ( t2.cnpj = e.cnpjnumero ) or "); + sql.append(" ( t2.cnpj in "); sql.append(" (select TRANSLATE(cnpj, ' / - . ', ' ') from inscricao_estadual where empresa_id = ? and activo = 1 )) "); sql.append(" inner join inscricao_estadual ie ON e.empresa_id = ie.empresa_id, "); sql.append(" (SELECT numserie20, crz, totgeral "); @@ -329,7 +329,7 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sql.append(" r3.totparcial AS aliquota, "); sql.append(" r3.valoracumulado AS imposto, "); sql.append(" ifi.numserie AS numpdv, "); - sql.append(" TRANSLATE(t2.cnpj, ' / - . ', ' ') AS cnpj,"); + sql.append(" t2.cnpj AS cnpj,"); sql.append(" r2.totgeral AS gtFinal, "); sql.append(" anterior.totgeral AS gtInicial, "); sql.append(" 'INCONSISTENTE' AS status "); @@ -343,8 +343,8 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sql.append(" AND r3.fiscalimpressora_id = ifi.fiscalimpressora_id "); sql.append(" inner join fiscal_t2 t2 "); sql.append(" ON ifi.fiscalimpressora_id = t2.fiscalimpressora_id "); - sql.append(" inner join empresa e ON (TRANSLATE(t2.cnpj, ' / - . ', ' ') = (TRANSLATE(e.cnpj, ' / - . ', ' ')) ) or "); - sql.append(" (TRANSLATE(t2.cnpj, ' / - . ', ' ') in "); + sql.append(" inner join empresa e ON ( t2.cnpj = e.cnpjnumero ) or "); + sql.append(" ( t2.cnpj in "); sql.append(" (select TRANSLATE(cnpj, ' / - . ', ' ') from inscricao_estadual where empresa_id = ? and activo = 1 )) "); sql.append(" inner join inscricao_estadual ie ON e.empresa_id = ie.empresa_id, "); sql.append(" (SELECT numserie20, crz, totgeral "); @@ -399,7 +399,7 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sql.append(" r3.totparcial AS aliquota, "); sql.append(" r3.valoracumulado AS imposto, "); sql.append(" ifi.numserie AS numpdv, "); - sql.append(" TRANSLATE(t2.cnpj, ' / - . ', ' ') AS cnpj,"); + sql.append(" t2.cnpj AS cnpj,"); sql.append(" r2.totgeral AS gtFinal, "); sql.append(" anterior.totgeral AS gtInicial, "); sql.append(" 'NORMAL' AS status "); @@ -413,8 +413,8 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sql.append(" AND r3.fiscalimpressora_id = ifi.fiscalimpressora_id "); sql.append(" inner join fiscal_t2 t2 "); sql.append(" ON ifi.fiscalimpressora_id = t2.fiscalimpressora_id "); - sql.append(" inner join empresa e ON (TRANSLATE(t2.cnpj, ' / - . ', ' ') = (TRANSLATE(e.cnpj, ' / - . ', ' ')) ) or "); - sql.append(" (TRANSLATE(t2.cnpj, ' / - . ', ' ') in "); + sql.append(" inner join empresa e ON ( t2.cnpj = e.cnpjnumero ) or "); + sql.append(" (t2.cnpj in "); sql.append(" (select TRANSLATE(cnpj, ' / - . ', ' ') from inscricao_estadual where empresa_id = ? and activo = 1 )) "); sql.append(" inner join inscricao_estadual ie ON e.empresa_id = ie.empresa_id, "); sql.append(" (SELECT numserie20, crz, totgeral "); @@ -743,7 +743,7 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sql.append("ORDER BY QY.dataEmissao, "); sql.append(" QY.numImpressora, "); sql.append(" QY.coo, "); - sql.append(" QY.numItem "); + sql.append(" QY.numItem"); return sql.toString(); } @@ -955,26 +955,28 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO public List buscaDatosFiscaisECF(Date inicio, Date fim, Integer empresaId, Integer estadoId, boolean isNormal, boolean isCancelados, boolean isPendencias, Connection connection, boolean isBoletoHist) throws SQLException { if (isNormal) { - return montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECF(isEstadoTodos(estadoId), isBoletoHist), false); + return montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECF(isEstadoTodos(estadoId), isBoletoHist), false,true); } else if (isCancelados) { - return montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECFCancelados(isEstadoTodos(estadoId)), true); + return montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECFCancelados(isEstadoTodos(estadoId)), true,false); } else if (isPendencias) { List list = new ArrayList(); - list.addAll(montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECFPendenciasCancelado(isEstadoTodos(estadoId)), false)); - list.addAll(montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECFPendenciasDesconto(isEstadoTodos(estadoId)), false)); - list.addAll(montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECFPendenciasInconsistente(isEstadoTodos(estadoId)), false)); - list.addAll(montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECFPendenciasGratuidade(isEstadoTodos(estadoId)), false)); + list.addAll(montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECFPendenciasCancelado(isEstadoTodos(estadoId)), false,false)); + list.addAll(montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECFPendenciasDesconto(isEstadoTodos(estadoId)), false,false)); + list.addAll(montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECFPendenciasInconsistente(isEstadoTodos(estadoId)), false,false)); + list.addAll(montarItensECF(inicio, fim, empresaId, estadoId, connection, sqlFiscaisECFPendenciasGratuidade(isEstadoTodos(estadoId)), false,false)); return list; } return null; } - private List montarItensECF(Date inicio, Date fim, Integer empresaId, Integer estadoId, Connection connection, String sql, boolean isDate) throws SQLException { - + private List montarItensECF(Date inicio, Date fim, Integer empresaId, Integer estadoId, Connection connection, String sql, boolean isDate, boolean isUnion) throws SQLException { + + boolean isEstadoTodos = isEstadoTodos(estadoId); + PreparedStatement stmt = connection.prepareStatement(sql); stmt.setFetchSize(100); if (isDate) { @@ -983,15 +985,30 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO } else { stmt.setString(1, DateUtil.getStringDate(inicio, DATE_FORMAT_FISCAL)); stmt.setString(2, DateUtil.getStringDate(fim, DATE_FORMAT_FISCAL)); + + if (isUnion){ + stmt.setString(isEstadoTodos ? 4 : 5, DateUtil.getStringDate(inicio, DATE_FORMAT_FISCAL)); + stmt.setString(isEstadoTodos ? 5: 6, DateUtil.getStringDate(fim, DATE_FORMAT_FISCAL)); + } } stmt.setInt(3, empresaId); + + if (isUnion){ + stmt.setInt(6, empresaId); + } - if (!isEstadoTodos(estadoId)) + if (!isEstadoTodos){ stmt.setInt(4, estadoId); + if (isUnion){ + stmt.setInt(8, estadoId); + } + } - stmt.setString(4, DateUtil.getStringDate(inicio, DATE_FORMAT_FISCAL)); - stmt.setString(5, DateUtil.getStringDate(fim, DATE_FORMAT_FISCAL)); - stmt.setInt(6, empresaId); + if (!isUnion){ + stmt.setTimestamp(4, new java.sql.Timestamp(DateUtil.inicioFecha(inicio).getTime())); + stmt.setTimestamp(5, new java.sql.Timestamp(DateUtil.fimFecha(fim).getTime())); + stmt.setInt(6, empresaId); + } List list = new ArrayList(); ImportacionFiscalVO fiscal = null; @@ -1798,7 +1815,7 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO log.info("Tarifa nao encontrada na R5. (ECF: " + rs.getString("ecf") + " / DATAMOV: " + rs.getString("datamov") + " / COO: " + rs.getString("coo") + ")"); } - + registro = new ExportacaoECFTipoCCF(); registro.setEcf(rs.getString("ecf")); registro.setDataEmissao(rs.getString("datamov"));