fixes bug#21422

qua:
dev:
Faltou commitar a clsse RemesssaCNABbancoHibernateDAO

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@105118 d1611594-4594-4d17-8e1d-87c2c4800839
master
walace 2021-01-21 18:01:20 +00:00
parent b09e751cee
commit 6080cfa5cc
1 changed files with 55 additions and 35 deletions

View File

@ -248,33 +248,35 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO<Fechament
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
sb.append("SELECT "); sb.append("SELECT ");
sb.append(" fb.FECHAMENTOBOLETO_ID AS \"id\", "); sb.append(" fb.FECHAMENTOBOLETO_ID AS \"id\", "); //0
sb.append(" (NVL(fp.COUNT_REMESSA, 0) + 1) AS \"idRemessa\", "); sb.append(" (NVL(fp.COUNT_REMESSA, 0) + 1) AS \"idRemessa\", "); //1
sb.append(" fp.COD_EMP_BANCO AS \"codEmpresaBanco\", "); sb.append(" fp.COD_EMP_BANCO AS \"codEmpresaBanco\", "); //2
sb.append(" emp.NOMBEMPRESA AS \"nomeEmpresa\", "); sb.append(" emp.NOMBEMPRESA AS \"nomeEmpresa\", "); //3
sb.append(" fp.BOLETO_BANCO_AGENCIA AS \"agencia\", "); sb.append(" fp.BOLETO_BANCO_AGENCIA AS \"agencia\", "); //4
sb.append(" fp.BOLETO_BANCO_CONTA AS \"conta\", "); sb.append(" fp.BOLETO_BANCO_CONTA AS \"conta\", "); //5
sb.append(" fp.BOLETO_BANCO_CONTA_DIGITO AS \"dac\", "); sb.append(" fp.BOLETO_BANCO_CONTA_DIGITO AS \"dac\", "); //6
sb.append(" fp.BOLETO_BANCO_CARTEIRA AS \"carteira\", "); sb.append(" fp.BOLETO_BANCO_CARTEIRA AS \"carteira\", "); //7
sb.append(" fb.NOSSONUMERO AS \"nossoNumero\", "); sb.append(" fb.NOSSONUMERO AS \"nossoNumero\", "); //8
sb.append(" fb.FECVENCIMENTO AS \"vencimento\", "); sb.append(" fb.FECVENCIMENTO AS \"vencimento\", "); //9
sb.append(" fb.VALORDOCUMENTO AS \"valor\", "); sb.append(" fb.VALORDOCUMENTO AS \"valor\", "); //10
sb.append(" '01' AS \"especieTitulo\", "); sb.append(" '01' AS \"especieTitulo\", "); //11
sb.append(" fb.FECDOCUMENTO AS \"dataEmissao\", "); sb.append(" fb.FECDOCUMENTO AS \"dataEmissao\", ");//12
sb.append(" '00' AS \"instrucao1\", "); sb.append(" '00' AS \"instrucao1\", ");//13
sb.append(" '00' AS \"instrucao2\", "); sb.append(" '00' AS \"instrucao2\", ");//14
sb.append(" fb.MORA AS \"valorAtraso\", "); sb.append(" fb.MORA AS \"valorAtraso\", ");//15
sb.append(" fb.DESCONTOS AS \"valorDesconto\", "); sb.append(" fb.DESCONTOS AS \"valorDesconto\", ");//16
sb.append(" fb.DEDUCOES AS \"valorAbatimento\", "); sb.append(" fb.DEDUCOES AS \"valorAbatimento\", ");//17
sb.append(" 'cnpj' as \"tipoInscricaoPagador\", "); sb.append(" 'cnpj' as \"tipoInscricaoPagador\", ");//18
sb.append(" pv.NUMDOCPUNTOVENTA AS \"numeroInscricaoPagador\", "); sb.append(" pv.NUMDOCPUNTOVENTA AS \"numeroInscricaoPagador\", ");//19
sb.append(" pv.NOMBPUNTOVENTA AS \"nomePagador\", "); sb.append(" pv.NOMBPUNTOVENTA AS \"nomePagador\", ");//20
sb.append(" pv.DIRECCIONCALLE || ', ' || pv.DIRECCIONNUMERO as endereco,"); sb.append(" pv.DIRECCIONCALLE || ', ' || pv.DIRECCIONNUMERO as endereco,");//21
sb.append(" pl.NOMBPLAZA as bairro, "); sb.append(" pl.NOMBPLAZA as bairro, ");//22
sb.append(" ci.NOMBCIUDAD AS cidade, "); sb.append(" ci.NOMBCIUDAD AS cidade, ");//23
sb.append(" es.CVEESTADO AS estado, "); sb.append(" es.CVEESTADO AS estado, ");//24
sb.append(" pv.CODPOSTAL AS \"cepPagador\", "); sb.append(" pv.CODPOSTAL AS \"cepPagador\", "); //25
sb.append(" ecb.NUMINTEGRACION AS \"codigoTransmissao\" "); sb.append(" ecb.NUMINTEGRACION AS \"codigoTransmissao\", "); //26
sb.append(" fp.BOLETO_BANCO_AGENCIA_DIGITO AS \"agenciaDigito\", "); //27
sb.append(" emp.CNPJ AS \"numeroInscricaoSacado\" "); //28
writeFROMClause(sb, dataDe != null && dataAte != null, reenviar); writeFROMClause(sb, dataDe != null && dataAte != null, reenviar);
@ -311,7 +313,7 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO<Fechament
if(cabecalhoRemessaSantander == null){ if(cabecalhoRemessaSantander == null){
cabecalhoRemessaSantander = new CabecalhoRemessaSantander(); cabecalhoRemessaSantander = new CabecalhoRemessaSantander();
cabecalhoRemessaSantander.setNumeroSequencialRemessa(idRemessa); cabecalhoRemessaSantander.setNumeroSequencialRemessa(idRemessa);
cabecalhoRemessaSantander.setCodigoTransmissao(codigoTransmissao); cabecalhoRemessaSantander.setCodigoTransmissao(gerarCodigoTransmissao(tupla[4].toString(), tupla[27].toString(), codEmpresaBanco, tupla[5].toString(), tupla[6].toString()));
cabecalhoRemessaSantander.setDataGravacao(new Date()); cabecalhoRemessaSantander.setDataGravacao(new Date());
cabecalhoRemessaSantander.setCodigoEmpresa(codEmpresaBanco); cabecalhoRemessaSantander.setCodigoEmpresa(codEmpresaBanco);
cabecalhoRemessaSantander.setNomeEmpresa(nomeEmpresa); cabecalhoRemessaSantander.setNomeEmpresa(nomeEmpresa);
@ -341,24 +343,29 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO<Fechament
String []doc = tupla[8].toString().split("-"); String []doc = tupla[8].toString().split("-");
detalhe.setIdBoletoFechamento(Integer.valueOf(tupla[0].toString())); detalhe.setIdBoletoFechamento(Integer.valueOf(tupla[0].toString()));
detalhe.setTipoInscricao(TipoInscricaoPagador.CNPJ); detalhe.setTipoInscricao(TipoInscricaoPagador.CNPJ);
detalhe.setCodigoTransmissao(codigoTransmissao); detalhe.setCodigoTransmissao(codigoTransmissao.toString());
detalhe.setNumeroInscricao(Long.valueOf(tupla[19].toString().replaceAll("[^0-9]+", ""))); detalhe.setNumeroInscricao(tupla[19].toString().replaceAll("[^0-9]+", ""));
detalhe.setNumeroInscricaoSacado(tupla[28].toString().replaceAll("[^0-9]+", ""));
detalhe.setCarteira(tupla[7].toString()); detalhe.setCarteira(tupla[7].toString());
detalhe.setAgencia(tupla[4].toString()); detalhe.setAgencia(tupla[4].toString());
detalhe.setAgenciaCobradora(tupla[4].toString());
detalhe.setContacorrente(tupla[5].toString()); detalhe.setContacorrente(tupla[5].toString());
detalhe.setDvConta(tupla[6].toString()); detalhe.setDvConta(tupla[6].toString());
detalhe.setNumControleDoParticipante(tupla[0].toString()); detalhe.setNumControleDoParticipante(tupla[0].toString());
detalhe.setNossoNumeroComDigito(doc[0] + doc[1]); detalhe.setNossoNumeroComDigito(doc[0] + doc[1]);
detalhe.setCodigoDeOcorrencia(0); detalhe.setCodigoDeOcorrencia(0);
detalhe.setDataOcorrencia(null); detalhe.setDataOcorrencia(null);
detalhe.setNumeroDoDocumento(StringUtils.right(doc[0], 10)); detalhe.setNumeroDoDocumento(doc[0] + doc[1]);
detalhe.setVencimento((Date) tupla[9]); detalhe.setVencimento((Date) tupla[9]);
detalhe.setValor(new BigDecimal(tupla[10].toString().replaceAll(",", "."))); detalhe.setValor(new BigDecimal(tupla[10].toString().replaceAll(",", ".")));
detalhe.setEspecieDeTitulo(tupla[11].toString()); detalhe.setEspecieDeTitulo("01");
detalhe.setEmissao((Date) tupla[12]); detalhe.setEmissao((Date) tupla[12]);
detalhe.setInstrucao1(tupla[13].toString()); detalhe.setInstrucao1("00");
detalhe.setInstrucao2(tupla[14].toString()); detalhe.setInstrucao2("00");
detalhe.setDataLimiteDesconto(null); detalhe.setDataLimiteDesconto(null);
detalhe.setDvAgencia(tupla[27].toString());
detalhe.setCodigoEmpresa(codEmpresaBanco);
detalhe.setCodigoTransmissao(gerarCodigoTransmissao(tupla[4].toString(), tupla[27].toString(), codEmpresaBanco, tupla[5].toString(), tupla[6].toString()));
try{ try{
detalhe.setValorAtraso(new BigDecimal(tupla[15].toString().replaceAll(",", "."))); detalhe.setValorAtraso(new BigDecimal(tupla[15].toString().replaceAll(",", ".")));
@ -381,7 +388,7 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO<Fechament
detalhe.setMensagem1(""); detalhe.setMensagem1("");
String cep = tupla[25].toString(); String cep = tupla[25].toString();
detalhe.setCepSacado(cep.substring(0,5)); detalhe.setCepSacado(cep.substring(0,5));
detalhe.setComplementoCepSacado(cep.substring(5)); detalhe.setComplementoCepSacado(cep.substring(cep.length() -3, cep.length()));
detalhe.setSacadorAvalista(""); detalhe.setSacadorAvalista("");
arquivoRemessaItem.addTitulo(detalhe); arquivoRemessaItem.addTitulo(detalhe);
@ -1285,4 +1292,17 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO<Fechament
return (List<Empresa>) query.list(); return (List<Empresa>) query.list();
} }
private String gerarCodigoTransmissao(String agencia, String agenciaDigito, String numeroConvenio, String numeroConta, String contaDigito) {
StringBuilder sb = new StringBuilder();
sb.append(StringUtils.leftPad(agencia, 3, '0'));
sb.append(agenciaDigito);
sb.append(StringUtils.leftPad(numeroConvenio, 8, '0'));
sb.append(StringUtils.leftPad(numeroConta.substring(0,numeroConta.length()-1), 8,'0')); // 2271 01152386 01300052
return sb.toString();
}
} }