From eaad0088d685201589251c2f00f14908ebebc564 Mon Sep 17 00:00:00 2001 From: julio Date: Mon, 6 Aug 2018 20:53:44 +0000 Subject: [PATCH] bug#11600 dev: julio qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@83978 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/hibernate/BpeHibernateDAO.java | 86 ++----------------- .../dao/hibernate/FiscalHibernateDAO.java | 2 + .../exportacao/bpe/ExportacaoBPEVo.java | 10 +-- 3 files changed, 13 insertions(+), 85 deletions(-) diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/BpeHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/BpeHibernateDAO.java index 53eb03409..2dc27edce 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/BpeHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/BpeHibernateDAO.java @@ -50,6 +50,7 @@ public class BpeHibernateDAO extends HibernateDaoSupport implements BpeDAO { StringBuilder sql = new StringBuilder(); sql.append("select distinct "); sql.append(" c.boleto_id, "); + sql.append(" c.num_bpe, "); sql.append(" c.numfoliosistema as numfoliosistema, "); sql.append(" coalesce(c.preciopagado,0) + coalesce(c.importetaxaembarque,0) + coalesce(c.importeseguro,0) + coalesce(c.importepedagio,0) + coalesce(c.importeoutros,0) as valortotal, "); sql.append(" bpe.codstat as codstatus, "); @@ -168,7 +169,7 @@ public class BpeHibernateDAO extends HibernateDaoSupport implements BpeDAO { String xmlBpe = StringUtils.join(array); registro.setXml(xmlBpe); - if (exportacaoBPEVo.buscaXml(registro)) { + if (exportacaoBPEVo.isBpeCanceladoENaoEmbarque(registro)) { String xmlAnterior = buscarXmlBPE(connection, (StringUtils.isBlank(registro.getChbpeSub()) ? registro.getChbpe() : registro.getChbpeSub())); registro.setXmlAnterior(xmlAnterior); registro.setXml(null); @@ -187,9 +188,9 @@ public class BpeHibernateDAO extends HibernateDaoSupport implements BpeDAO { List aux = new ArrayList(); for (ExportacaoBPEBase e1 : registros) { - if (exportacaoBPEVo.isBpeCancelado(e1)) { + if (exportacaoBPEVo.isBpeCanceladoENaoEmbarque(e1)) { for (ExportacaoBPEBase e2 : registros) { - if (e1.getChbpe().equals(e2.getChbpe()) && !exportacaoBPEVo.isBpeCancelado(e2)) { + if (e1.getChbpe().equals(e2.getChbpe()) && !exportacaoBPEVo.isBpeCanceladoENaoEmbarque(e2)) { aux.add(e1); break; } @@ -199,7 +200,7 @@ public class BpeHibernateDAO extends HibernateDaoSupport implements BpeDAO { boolean temItemCancelado = false; for (ExportacaoBPEBase e2 : registros) { - if (e1.getChbpe().equals(e2.getChbpe()) && exportacaoBPEVo.isBpeCancelado(e2)) { + if (e1.getChbpe().equals(e2.getChbpe()) && exportacaoBPEVo.isBpeCanceladoENaoEmbarque(e2)) { temItemCancelado = true; break; } @@ -578,83 +579,11 @@ public class BpeHibernateDAO extends HibernateDaoSupport implements BpeDAO { sql.append(" and po.activo = 1 and co.activo = 1 and eo.activo = 1 and ei.activo = 1 "); sql.append(" and coalesce(ei.activo, 0) = 1 "); sql.append(" and ((c.indreimpresion = 0 and c.motivocancelacion_id is null and c.numfoliosistema is not null) or (c.indstatusboleto = 'E' and c.indreimpresion = 1)) "); - sql.append(" and (coalesce(c.preciopagado,0) + coalesce(c.importetaxaembarque,0) + coalesce(c.importeseguro,0) + coalesce(c.importepedagio,0) + coalesce(c.importeoutros,0)) > 0 "); +// sql.append(" and (coalesce(c.preciopagado,0) + coalesce(c.importetaxaembarque,0) + coalesce(c.importeseguro,0) + coalesce(c.importepedagio,0) + coalesce(c.importeoutros,0)) > 0 "); sql.append(" and c.empresacorrida_id = :EMPRESA_ID "); sql.append(" and c.feccreacion >= :DATE_INICIO and c.feccreacion <= :DATE_FIM "); sql.append(" and e_bpe.cveestado in ( ").append(ufs).append(" ) "); - sql.append(" "); - sql.append("union all "); - sql.append(" "); - sql.append("select distinct "); - sql.append(" c.caja_id as cajaId, "); - sql.append(" 'REC' as tipoReceita, "); - sql.append(" c.numoperacion as numoperacion, "); - sql.append(" trunc(c.feccreacion) as fechorVenta, "); - sql.append(" coalesce(ae.estado_id, (case when s.aliasorigen_id is null then eo.estado_id else eos.estado_id end)) as estadoId,"); - sql.append(" coalesce(ei.icms, eos.icms) as icmsInterestadual, "); - sql.append(" ei.icmsim as icmsIntermunicipal, "); - sql.append(" coalesce(ae.cveestado,(case when s.aliasorigen_id is null then eo.cveestado else eos.cveestado end)) as estadoOrigem,"); - sql.append(" (case when s.aliasdestino_id is null then ed.cveestado else eds.cveestado end) as estadoDestino,"); - sql.append(" (case when s.aliasorigen_id is null then co.codibge else cos.codibge end) as municipioOrigem,"); - sql.append(" case when(coalesce(ae.cveestado,(case when s.aliasorigen_id is null then eo.cveestado else eos.cveestado end)) = "); - sql.append(" (case when s.aliasdestino_id is null then ed.cveestado else eds.cveestado end) ) then 0 else 1 end as isInterEstadual, "); - sql.append(" ei.porcredbaseicms as redBaseCalcIcms, "); - sql.append(" ei.porcredmunicipal as porcRedMunicipal, "); - sql.append(" ei.porcredestadual as porcRedEstadual, "); - sql.append(" ei.indtarifamunicipal as indtarifamunicipal, "); - sql.append(" coalesce(ei.indseguromunicipal, 0) as indseguromunicipal, "); - sql.append(" coalesce(ei.indtxembarquemunicipal, 0) as indtxembarquemunicipal, "); - sql.append(" coalesce(ei.indpedagiomunicipal, 0) as indpedagiomunicipal, "); - sql.append(" coalesce(ei.indtarifaestadual, 0) as indtarifaestadual, "); - sql.append(" coalesce(ei.indseguroestadual, 0) as indseguroestadual, "); - sql.append(" coalesce(ei.indtxembarqueestadual, 0) as indtxembarqueestadual, "); - sql.append(" coalesce(ei.indpedagioestdual, 0) as indpedagioestdual, "); - sql.append(" ei.tributacaoimportacao as tributacaoImportacao, "); - sql.append(" (case when (coalesce(case when s.aliasorigen_id is null then po.regionmetropolitana_id "); - sql.append(" else pos.regionmetropolitana_id end, -1) = coalesce(case when s.aliasorigen_id is null "); - sql.append(" then pd.regionmetropolitana_id else pds.regionmetropolitana_id end, -2)) then 1 else 0 end) as isenta, "); - sql.append(" coalesce(c.preciopagado, 0) as tarifa, "); - sql.append(" coalesce(c.importetaxaembarque, 0) as taxaEmbarque, "); - sql.append(" coalesce(c.importepedagio, 0) as pedagio, "); - sql.append(" coalesce(c.importeseguro, 0) as seguro, "); - sql.append(" coalesce(c.importeoutros, 0) as outros, "); - sql.append(" to_char(trunc(c.feccreacion), 'yyyymmdd') as datamov "); - sql.append("from caja c "); - sql.append(" join marca m on c.marca_id = m.marca_id "); - sql.append(" join empresa e on e.empresa_id = m.empresa_id "); - sql.append(" join aidf a on a.aidf_id = c.aidf_id "); - sql.append(" join punto_venta pv on pv.puntoventa_id = c.puntoventa_id "); - sql.append(" join ciudad ce on ce.ciudad_id = e.ciudad_id "); - sql.append(" join estado ee on ee.estado_id = ce.estado_id "); - sql.append(" join parada po on po.parada_id = c.origen_id "); - sql.append(" join ciudad co on co.ciudad_id = po.ciudad_id "); - sql.append(" join estado eo on eo.estado_id = co.estado_id "); - sql.append(" join parada pd on pd.parada_id = c.destino_id "); - sql.append(" join ciudad cd on cd.ciudad_id = pd.ciudad_id "); - sql.append(" join estado ed on ed.estado_id = cd.estado_id "); - sql.append(" left join alias_servico s on s.origen_id = c.origen_id "); - sql.append(" and s.destino_id = c.destino_id and (s.corrida_id = c.corrida_id or s.corrida_id is null) "); - sql.append(" and s.ruta_id = c.ruta_id "); - sql.append(" left join parada pos on pos.parada_id = s.aliasorigen_id "); - sql.append(" left join ciudad cos on cos.ciudad_id = pos.ciudad_id "); - sql.append(" left join estado eos on eos.estado_id = cos.estado_id "); - sql.append(" left join parada pds on pds.parada_id = s.aliasdestino_id "); - sql.append(" left join ciudad cds on cds.ciudad_id = pds.ciudad_id "); - sql.append(" left join estado eds on eds.estado_id = cds.estado_id "); - sql.append(" left join estado ae on ae.estado_id = a.estado_id "); - sql.append(" join inscricao_estadual ie on e.empresa_id = ie.empresa_id "); - sql.append(" and ie.estado_id = coalesce(ae.estado_id, eos.estado_id) and ie.activo = 1 "); - sql.append(" join ciudad cie on cie.ciudad_id = ie.ciudad_id "); - sql.append(" join estado eie on eie.estado_id = cie.estado_id "); - sql.append(" join empresa_imposto ei on ei.empresa_id = c.empresacorrida_id "); - sql.append(" and ei.estado_id = coalesce(ae.estado_id, eos.estado_id) and ei.activo = 1 "); - sql.append("where ((c.tipoventa_id = 3 and c.indstatusboleto = 'V' and c.indreimpresion = 0) "); - sql.append(" or (c.tipoventa_id in (12,18) and c.indstatusboleto = 'E' and c.numfoliosistema = c.numfoliopreimpreso)) "); - sql.append(" and (c.motivocancelacion_id is null or c.motivocancelacion_id <> 35) "); - sql.append(" and c.indcancelacion = 0 "); - sql.append(" and c.empresacorrida_id = :EMPRESA_ID "); - sql.append(" and c.feccreacion between :DATE_INICIO and :DATE_FIM "); - sql.append(" and coalesce(ae.cveestado, eos.cveestado) in ( ").append(ufs).append(" ) "); + return sql.toString(); } @@ -725,6 +654,7 @@ public class BpeHibernateDAO extends HibernateDaoSupport implements BpeDAO { sql.append(" and e.empresa_id = :EMPRESA_ID "); sql.append(" and b.fechorventa >= :DATE_INICIO "); sql.append(" and b.fechorventa <= :DATE_FIM "); + sql.append(" and b.num_bpe is null "); sql.append(" and b.categoria_id not in (select valorconstante from constante where nombconstante = 'GRATUIDADE_CRIANCA') "); sql.append(" and coalesce(esaidf.cveestado, eos.cveestado, est.cveestado) in ( ").append(ufs).append(" ) "); sql.append("order by estadoId, isInterEstadual "); diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java index e8c5a1ae5..d2b0d8e5c 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/FiscalHibernateDAO.java @@ -585,6 +585,7 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sql.append(" and caj.indcancelacion = 1 "); sql.append(" and caj.indstatusboleto = 'C' "); sql.append(" and r4.indcancelamento = 'N' "); + sql.append(" and caj.num_bpe is null "); sql.append(" ORDER BY r4.datamov, "); sql.append(" r4.numserie20, "); sql.append(" r4.coo, "); @@ -655,6 +656,7 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO sql.append(" where c.activo = 1 and po.activo = 1 and co.activo = 1 and eo.activo = 1 and ei.activo = 1 "); sql.append(" and coalesce(case when s.aliasorigen_id is null then ei.activo else eis.activo end, 0) = 1 "); sql.append(" and c.serieimpfiscal is not null "); + sql.append(" and c.num_bpe is null "); sql.append(" and ((c.indreimpresion = 0 and c.motivocancelacion_id is null and c.numfoliosistema is not null) or (c.indstatusboleto = 'E' and c.indreimpresion = 1)) "); // sql.append(" and (coalesce(c.preciopagado,0) + coalesce(c.importetaxaembarque,0) + coalesce(c.importeseguro,0) + coalesce(c.importepedagio,0) + coalesce(c.importeoutros,0)) > 0 "); // sql.append(" and ((case when coalesce(r.indtribtarifa,0) = 1 then c.preciopagado else 0 end) + (case when coalesce(r.indtribtaxaembarque,0) = 1 then c.importetaxaembarque else 0 end) + (case when coalesce(r.indtribpedagio,0) = 1 then c.importepedagio else 0 end)) > 0 "); diff --git a/src/com/rjconsultores/ventaboletos/utilerias/exportacao/bpe/ExportacaoBPEVo.java b/src/com/rjconsultores/ventaboletos/utilerias/exportacao/bpe/ExportacaoBPEVo.java index 5494a69ab..17ffb569b 100644 --- a/src/com/rjconsultores/ventaboletos/utilerias/exportacao/bpe/ExportacaoBPEVo.java +++ b/src/com/rjconsultores/ventaboletos/utilerias/exportacao/bpe/ExportacaoBPEVo.java @@ -50,7 +50,7 @@ public class ExportacaoBPEVo { return listaRegistroBaseBPE; } - public boolean buscaXml(ExportacaoBPEBase registro) { + public boolean isBpeCanceladoENaoEmbarque(ExportacaoBPEBase registro) { return (registro.getCodstatus() == null ? false : (registro.getCodstatus().equals(StatusBpe.EVENTOS))); } @@ -66,15 +66,11 @@ public class ExportacaoBPEVo { boolean isCancelamento = isBpeCancelado(registro); TBPe tbpe = null; - String xml = isCancelamento ? registro.getXmlAnterior() : registro.getXml(); + String xml = StringUtils.isNotBlank(registro.getXmlAnterior()) ? registro.getXmlAnterior() : registro.getXml(); if (StringUtils.isNotBlank(xml)) tbpe = convertXmlToBpe(xml); - try { - String municipioOrigem = StringUtils.substring((StringUtils.isNotBlank(xml) ? tbpe.getInfBPe().getIde().getCMunIni() : registro.getMunicipioOrigem()), 2); - } catch (Exception e) { - System.out.println(xml); - } + String municipioOrigem = StringUtils.substring((StringUtils.isNotBlank(xml) ? tbpe.getInfBPe().getIde().getCMunIni() : registro.getMunicipioOrigem()), 2); String municipioDestino = StringUtils.substring((StringUtils.isNotBlank(xml) ? tbpe.getInfBPe().getIde().getCMunFim() : registro.getMunicipioDestino()), 2); String estadoOrigem = (StringUtils.isNotBlank(xml) ? tbpe.getInfBPe().getIde().getUFIni().value() : registro.getEstadoOrigem());