bug#14533 -- teste de performance II

dev: julio
qua:

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@94404 d1611594-4594-4d17-8e1d-87c2c4800839
master
julio 2019-06-11 17:43:56 +00:00
parent 1815881099
commit 471c64bdec
5 changed files with 48 additions and 62 deletions

View File

@ -60,11 +60,11 @@ public class BpeHibernateDAO extends HibernateDaoSupport implements BpeDAO {
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, ");
sql.append(" COALESCE(bpe_cancel.xml_bpe, bpe.xml_bpe) as xml_bpe, ");
sql.append(" COALESCE(bpe_cancel.xml_bpe_2, bpe.xml_bpe_2) as xml_bpe_2, ");
sql.append(" COALESCE(bpe_cancel.xml_bpe_3, bpe.xml_bpe_3) as xml_bpe_3, ");
sql.append(" COALESCE(bpe_cancel.xml_bpe_4, bpe.xml_bpe_4) as xml_bpe_4, ");
sql.append(" COALESCE(bpe_cancel.xml_bpe_5, bpe.xml_bpe_5) as xml_bpe_5, ");
sql.append(" bpe.xml_bpe as xml_bpe, ");
sql.append(" bpe.xml_bpe_2 as xml_bpe_2, ");
sql.append(" bpe.xml_bpe_3 as xml_bpe_3, ");
sql.append(" bpe.xml_bpe_4 as xml_bpe_4, ");
sql.append(" bpe.xml_bpe_5 as xml_bpe_5, ");
// sql.append(" DBMS_LOB.substr(COALESCE(bpe_cancel.xmlregular, bpe_cancel.xmlcontingencia, bpe.xmlregular, bpe.xmlcontingencia), 3000) AS xml_bpe, ");
// sql.append(" DBMS_LOB.substr(COALESCE(bpe_cancel.xmlregular, bpe_cancel.xmlcontingencia, bpe.xmlregular, bpe.xmlcontingencia), 3000, 3001) AS xml_bpe_2, ");
@ -111,7 +111,7 @@ public class BpeHibernateDAO extends HibernateDaoSupport implements BpeDAO {
sql.append(" join bpe bpe on c.boleto_id = bpe.boleto_id ");
sql.append(" and bpe.activo = (case when c.motivocancelacion_id = 17 and c.boletooriginal_id is null then 0 else 1 end) ");
sql.append(" left join bpe bpe_cancel on bpe.chbpe = bpe_cancel.chbpe and bpe.codstat in ('135') and bpe_cancel.codstat in ('100','150') ");
// sql.append(" left join bpe bpe_cancel on bpe.chbpe = bpe_cancel.chbpe and bpe.codstat in ('135') and bpe_cancel.codstat in ('100','150') ");
sql.append(" join estado e on e.codibge = bpe.uf ");
sql.append(" join marca ma on c.marca_id = ma.marca_id ");
@ -145,7 +145,7 @@ public class BpeHibernateDAO extends HibernateDaoSupport implements BpeDAO {
ps.setLong(3, Long.valueOf(empresaId));
ps.setString(4, cveestado);
ps.setFetchSize(9999);
ps.setFetchSize(999);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
@ -215,8 +215,8 @@ public class BpeHibernateDAO extends HibernateDaoSupport implements BpeDAO {
registro.setXml(xml);
if (exportacaoBPEVo.isBpeCanceladoENaoEmbarque(registro)) {
// String xmlAnterior = buscarXmlBPE(connection, (StringUtils.isBlank(registro.getChbpeSub()) ? registro.getChbpe() : registro.getChbpeSub()));
registro.setXmlAnterior(xml);
String xmlAnterior = buscarXmlBPE(connection, (StringUtils.isBlank(registro.getChbpeSub()) ? registro.getChbpe() : registro.getChbpeSub()));
registro.setXmlAnterior(xmlAnterior);
registro.setXml(null);
}
@ -258,6 +258,8 @@ public class BpeHibernateDAO extends HibernateDaoSupport implements BpeDAO {
}
}
log.info(" --- Inicio preocesso da ExportacaoBpe: " + new Date());
for (ExportacaoBPEBase registro : aux) {
exportacaoBPEVo.gerarListas(registro);
}

View File

@ -1,6 +1,5 @@
package com.rjconsultores.ventaboletos.service;
import java.io.File;
import java.util.Date;
import java.util.List;
@ -12,7 +11,7 @@ public interface BpeService {
public List<FiscalRdi> buscarBpeRDI(Date inicio, Date fim, Empresa empresa, List<Estado> estados, boolean isReceitaTerceiros);
public File buscarArquivoExportacaoBPE(Date inicio, Date fim, Empresa empresa, Estado estado, String nomeArquivo);
public String buscarArquivoExportacaoBPE(Date inicio, Date fim, Empresa empresa, Estado estado, String nomeArquivo);
public String buscarXmlBPE(String chBpe);

View File

@ -1,6 +1,5 @@
package com.rjconsultores.ventaboletos.service.impl;
import java.io.File;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Date;
@ -56,7 +55,7 @@ public class BpeServiceImpl implements BpeService {
}
@Override
public File buscarArquivoExportacaoBPE(Date inicio, Date fim, Empresa empresa, Estado estado, String nomeArquivo) {
public String buscarArquivoExportacaoBPE(Date inicio, Date fim, Empresa empresa, Estado estado, String nomeArquivo) {
Connection connection = null;
try {

View File

@ -1,10 +1,5 @@
package com.rjconsultores.ventaboletos.utilerias.exportacao;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Date;
@ -13,7 +8,6 @@ import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Service;
import com.rjconsultores.ventaboletos.constantes.Constantes;
import com.rjconsultores.ventaboletos.service.ConstanteService;
import com.rjconsultores.ventaboletos.utilerias.UtiliteriasFiscal;
import com.rjconsultores.ventaboletos.utilerias.exportacao.bpe.ExportacaoBPEBase;
@ -35,15 +29,16 @@ public class ExportacaoBpe {
}
public File gerarArquivoBPE(final Date dataInicial, final Date dataFinal, String nomeArquivo, final String nomeEmpresa, ExportacaoBPEVo registro) {
public String gerarArquivoBPE(final Date dataInicial, final Date dataFinal, String nomeArquivo, final String nomeEmpresa, ExportacaoBPEVo registro) {
log.info(" Inicio -- Retorno da lista " + new Date());
try {
File arquivo = File.createTempFile(nomeArquivo + "-", ".fs");
PrintWriter writer = new PrintWriter(new OutputStreamWriter(new FileOutputStream(arquivo), Constantes.UTF_8));
StringBuilder writer = new StringBuilder();
ConstanteService constanteService = (ConstanteService) AppContext.getApplicationContext().getBean("constanteService");
String valorConstante = constanteService.buscarPorNomeConstante("IMPORT_BPE_LAYOUT_DIF") == null
? null : constanteService.buscarPorNomeConstante("IMPORT_BPE_LAYOUT_DIF").getValorconstante();
? null
: constanteService.buscarPorNomeConstante("IMPORT_BPE_LAYOUT_DIF").getValorconstante();
boolean isVersao131 = StringUtils.isBlank(valorConstante) ? true : false;
String versaoLayout = StringUtils.isBlank(valorConstante) ? "131" : valorConstante;
@ -80,22 +75,19 @@ public class ExportacaoBpe {
}
writer.print("TRA|" + linhas + UtiliteriasFiscal.QUEBRA_LINHA);
writer.append("TRA|" + linhas + UtiliteriasFiscal.QUEBRA_LINHA);
writer.close();
log.info(" Fim -- Retorno da lista " + new Date());
return arquivo;
} catch (
IOException e) {
return writer.toString();
} catch (Exception e) {
log.error(e.getMessage(), e);
}
return null;
}
private void adicionarRegistroBPETipoCAB(final PrintWriter writer, final Date dataInicial, final Date dataFinal, final String nomeEmpresa, final String arquivo, String versaoLayout) {
StringBuilder sb = new StringBuilder();
private void adicionarRegistroBPETipoCAB(final StringBuilder sb, final Date dataInicial, final Date dataFinal, final String nomeEmpresa, final String arquivo, String versaoLayout) {
sb.append("CAB").append(SEPARADOR);
sb.append(versaoLayout).append(SEPARADOR);
sb.append("TotalBus").append(SEPARADOR);
@ -105,11 +97,10 @@ public class ExportacaoBpe {
sb.append(new SimpleDateFormat("yyyyMMdd").format(dataFinal)).append(SEPARADOR);
sb.append(arquivo).append(SEPARADOR);
sb.append("N");
writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA);
sb.append(UtiliteriasFiscal.QUEBRA_LINHA);
}
private void adicionarRegistroBPETipoBEP(final PrintWriter writer, ExportacaoBPETipoBPE tipoBPE, boolean isVersao131) {
private void adicionarRegistroBPETipoBEP(final StringBuilder sb, ExportacaoBPETipoBPE tipoBPE, boolean isVersao131) {
String tipoRegistro = "BPE";
String estabelecimento = tipoBPE.getEstabelecimento();
@ -129,12 +120,8 @@ public class ExportacaoBpe {
String CSTCOFINS = tipoBPE.getCstCofins();
String receitaTributavelCOFINS = tipoBPE.getReceitaTriCofins() == null ? VAZIO : formataValor(tipoBPE.getReceitaTriCofins(), 15);
String naturezaReceitaCOFINS = VAZIO;
String CSTPIS = tipoBPE.getCstPis();
String receitaTributávelPIS = tipoBPE.getReceitaTriCofins() == null ? VAZIO : formataValor(tipoBPE.getReceitaTriCofins(), 15);
// String receitaTributávelPIS = formataValor(tipoBPE.getReceitaTributávelPis(), 15);
String naturezaReceitaPIS = VAZIO;
String receitaCSL1 = VAZIO;
String receitaCSL2 = VAZIO;
@ -151,7 +138,6 @@ public class ExportacaoBpe {
String codAjusteFiscal = VAZIO;
String exclussaoBCPISCOFINS = VAZIO;
StringBuilder sb = new StringBuilder();
sb.append(tipoRegistro).append(SEPARADOR);
sb.append(estabelecimento).append(SEPARADOR);
sb.append(chaveEletrônica).append(SEPARADOR);
@ -186,11 +172,10 @@ public class ExportacaoBpe {
sb.append(observacao).append(SEPARADOR);
sb.append(codAjusteFiscal).append(isVersao131 ? VAZIO : SEPARADOR);
sb.append(isVersao131 ? VAZIO : exclussaoBCPISCOFINS);
writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA);
sb.append(UtiliteriasFiscal.QUEBRA_LINHA);
}
private void adicionarRegistroBPETipoDPE(final PrintWriter writer, ExportacaoBPETipoDPE tipoDPE) {
private void adicionarRegistroBPETipoDPE(final StringBuilder sb, ExportacaoBPETipoDPE tipoDPE) {
String tipoRegistro = "DBE";
String valor = formataValor(tipoDPE.getValor(), 15);
String CFOP = tipoDPE.getCfop();
@ -202,7 +187,6 @@ public class ExportacaoBpe {
String isentas = formataValor(tipoDPE.getIsentas(), 15);
String outras = formataValor(tipoDPE.getOutras(), 15);
StringBuilder sb = new StringBuilder();
sb.append(tipoRegistro).append(SEPARADOR);
sb.append(valor).append(SEPARADOR);
sb.append(CFOP).append(SEPARADOR);
@ -213,24 +197,21 @@ public class ExportacaoBpe {
sb.append(ICMS).append(SEPARADOR);
sb.append(isentas).append(SEPARADOR);
sb.append(outras);
writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA);
sb.append(UtiliteriasFiscal.QUEBRA_LINHA);
}
private void adicionarRegistroBPETipoOBE(final PrintWriter writer, ExportacaoBPETipoOBE tipoOBE) {
private void adicionarRegistroBPETipoOBE(final StringBuilder sb, ExportacaoBPETipoOBE tipoOBE) {
String tipoRegistro = "OBE";
String codigo = tipoOBE.getCodigo();
String valor = formataValor(tipoOBE.getValor(), 15);
StringBuilder sb = new StringBuilder();
sb.append(tipoRegistro).append(SEPARADOR);
sb.append(codigo).append(SEPARADOR);
sb.append(valor);
writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA);
sb.append(UtiliteriasFiscal.QUEBRA_LINHA);
}
private void adicionarRegistroBPETipoRPC(final PrintWriter writer, ExportacaoBPETipoPRC tipoPRC) {
private void adicionarRegistroBPETipoRPC(final StringBuilder sb, ExportacaoBPETipoPRC tipoPRC) {
String tipoRegistro = "RPC";
String UF = tipoPRC.getUf();
String municipio = tipoPRC.getMunicipio();
@ -238,15 +219,13 @@ public class ExportacaoBpe {
String baseCalculoICMS = formataValor(tipoPRC.getBaseCalculoICMS(), 15);
String ICMS = formataValor(tipoPRC.getIcms(), 15);
StringBuilder sb = new StringBuilder();
sb.append(tipoRegistro).append(SEPARADOR);
sb.append(UF).append(SEPARADOR);
sb.append(municipio).append(SEPARADOR);
sb.append(valor).append(SEPARADOR);
sb.append(baseCalculoICMS).append(SEPARADOR);
sb.append(ICMS);
writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA);
sb.append(UtiliteriasFiscal.QUEBRA_LINHA);
}
private String formataValor(final BigDecimal valor, final int tamanho) {

View File

@ -1,13 +1,17 @@
package com.rjconsultores.ventaboletos.utilerias.exportacao.bpe.xml;
import java.io.StringReader;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
import javax.xml.transform.stream.StreamSource;
import org.apache.log4j.Logger;
import com.rjconsultores.ventaboletos.constantes.Constantes;
import com.rjconsultores.ventaboletos.utilerias.exportacao.bpe.ExportacaoBPEVo;
import br.inf.portalfiscal.bpe.TBPe;
@ -20,12 +24,15 @@ public class BPeUtil {
TBPe objeto = null;
if (xml != null) {
try {
JAXBContext jaxbContext = JAXBContext.newInstance(TBPe.class);
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
StringReader reader = new StringReader(xml);
objeto = (TBPe) unmarshaller.unmarshal(reader);
JAXBContext jc = JAXBContext.newInstance(TBPe.class);
Unmarshaller unmarshaller = jc.createUnmarshaller();
InputStream input = new ByteArrayInputStream(xml.getBytes(Constantes.UTF_8));
StreamSource source = new StreamSource(input);
objeto = (TBPe) unmarshaller.unmarshal(source);
} catch (JAXBException e) {
log.info("Nao encontrou o xml bpe");
} catch (UnsupportedEncodingException e) {
log.info("Nao encontrou o xml bpe");
}
}
return objeto;