Closed edolfuchs closed 7 years ago
Você pode mandar o txt pra eu ver como esta? se você so adicionar 'agencia' => '06026', ja não funciona?
Forçando setar a agencia não deu certo. Mas eu consegui resolver boa parte do problema.
Exemplo:
Carteira: 9 Agencia: 6026 Conta: 97-3
Correto: 00090602600000973 Errado: 0090602600000973
Para resolver alterei o arquivo:
Eduardokum\LaravelBoleto\Cnab\Remessa\Cnab400\Banco\Bradesco
Eduardokum\LaravelBoleto\Boleto\AbstractBoleto Nesse método deixei o parâmetro aceitar receber null.
A alteração acima afeta outro arquivo:
Eduardokum\LaravelBoleto\Cnab\Remessa\Cnab400\Banco\Bradesco
Adicionei um if na linha 203
Essa alteração permite adicionar ou não um desconto: $boleto->setDataDesconto(null) ou $boleto->setDataDesconto(new \Carbon\Carbon());
Não sei se é a melhor forma de resolver isso.
Ele seta essa data no contruct se você não passar nada, ta certo que pode sobescrever depois, mais não acho o ideial, talvez, verificar se possui desconto colocar a data se não colocar 0000000, pode ser uma ideia.
Quanto ao código do beneficiário qual foi a alteração? Me parece igual ao do projeto. https://github.com/eduardokum/laravel-boleto/blob/master/src/Cnab/Remessa/Cnab400/Banco/Bradesco.php#L149
Entendi, acho melhor sua sugestão. Quanto ao beneficiário, mandei o print errado segue a alteração:
Basicamente alterei a linha $beneficiario_id = Util::formatCnab('9', $this->getCarteiraNumero(), 4) .
so alterar a linha de $this->add(21, 37, Util::formatCnab('X', $beneficiario_id, 17)); para $this->add(21, 37, Util::formatCnab('9', $beneficiario_id, 17));
que ele ja coloca quantos 0 for necessário antes até completar 17
Funcionou.
Voce consegue subir essas alterações no master?
Eu mandei no dev, estou esperando so pra terminar de fechar a versão com o novo banco BNB e ja faço o merge.
Valeu.
A parte da remessa é isso. O banco também validou o boleto em pdf e tem alguns ajustes. Vou abrir um novo issue, ok?
Blza
Eu enviei uma remessa para o banco validar e retornaram com alguns erros.
Retorno do banco (problemas em vermelho):
Como foi gerado a remessa:
$boleto = new \Eduardokum\LaravelBoleto\Boleto\Banco\Bradesco([ 'logo' => 'c://...', 'dataVencimento' => new \Carbon\Carbon('2017-03-23'), 'valor' => 0.42, 'multa' => 0.00, // porcento 'juros' => 0, // porcento ao mes 'juros_apos' => 0, // juros e multa após 'diasProtesto' => false, // protestar após, se for necessário 'numero' => '23', 'numeroDocumento' => '23', 'pagador' => $pagador, // Objeto PessoaContract 'beneficiario' => $beneficiario, // Objeto PessoaContract 'agencia' => '6026', // BB, Bradesco, CEF, HSBC, Itáu 'agenciaDv' => '7', 'conta' => '0000097', // BB, Bradesco, CEF, HSBC, Itáu, Santander 'contaDv' => '3', // Bradesco, HSBC, Itáu 'carteira' => '09', // BB, Bradesco, CEF, HSBC, Itáu, Santander 'codigoCliente' => '7818222', // Bradesco, CEF, Santander 'descricaoDemonstrativo' => [], // máximo de 5 'instrucoes' => [], // máximo de 5 'aceite' => 'N', 'especieDoc' => 'DM', ]); $remessaArray = [ 'idremessa' => '1706563', 'agencia' => '6026', 'agenciaDv' => '7', 'conta' => '00000XX', 'contaDv' => '3', 'carteira' => '09', 'codigoCliente' => '7818222', 'beneficiario' => $beneficiario, ];
$remessa = new \Eduardokum\LaravelBoleto\Cnab\Remessa\Cnab400\Banco\Bradesco($remessaArray); $remessa->addBoleto($boleto);
Comentários:
A Linha 02 - Posição 025 à 025 mesmo adicionar um zero a esquerda (ex 06026) na remessa parece desconsiderar esse zero.
A Linha 2- Posição 82 não consegui identificar o problema.
A Linha 2 - Posição 82 e Linha - 2 - Posição 174 à 192, não adicionei nenhum desconto.
Alguem consegue dar um auxilio?