lib/brcobranca/remessa/cnab400/banco_brasil.rb in brcobranca-8.0.0 vs lib/brcobranca/remessa/cnab400/banco_brasil.rb in brcobranca-9.0.0

- old
+ new

@@ -147,9 +147,23 @@ detalhe << ''.ljust(40, ' ') # informacoes avalista X[40] 352 a 393 TODO implementar avalista detalhe << pagamento.dias_protesto.to_s.ljust(2, ' ') # numero de dias para protesto X[02] 392 a 393 detalhe << ' ' # complemento (brancos) X[01] 394 a 394 detalhe << sequencial.to_s.rjust(6, '0') # sequencial do registro 9[06] 395 a 400 end + + def monta_detalhe_multa(pagamento, sequencial) + raise Brcobranca::RemessaInvalida, pagamento if pagamento.invalid? + return false if %w[0 9].include?(pagamento.codigo_multa) + + detalhe = '5' + detalhe << '99' # Tipo de Serviço: “99” (Cobrança de Multa) 9[02] 002 a 003 + detalhe << '2' # código da multa 9[01] 004 a 004 + detalhe << pagamento.formata_data_multa # Data de Inicio da Cobrança da Multa 9[06] 005 a 010 + detalhe << pagamento.formata_valor_multa(12) # percentual multa 9[12] 011 a 022 + detalhe << ''.rjust(372, ' ') # brancos 9[372] 023 a 394 + detalhe << sequencial.to_s.rjust(6, '0') # numero do registro do arquivo 9[06] 395 a 400 + detalhe + end end end end end