brcobranca 3.0.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +3 -0
- data/Gemfile.lock +29 -24
- data/README.rdoc +11 -4
- data/brcobranca.gemspec +4 -4
- data/lib/brcobranca.rb +12 -2
- data/lib/brcobranca/arquivos/logos/sicredi.jpg +0 -0
- data/lib/brcobranca/boleto/caixa.rb +3 -3
- data/lib/brcobranca/boleto/sicredi.rb +108 -0
- data/lib/brcobranca/boleto/template/rghost.rb +2 -0
- data/lib/brcobranca/calculo.rb +10 -0
- data/lib/brcobranca/retorno/retorno_cnab240.rb +89 -0
- data/lib/brcobranca/version.rb +1 -1
- data/spec/arquivos/CBR64310.RET +28 -28
- data/spec/arquivos/CNAB240.RET +74 -0
- data/spec/brcobranca/banco_caixa_spec.rb +13 -13
- data/spec/brcobranca/banco_sicredi_spec.rb +160 -0
- data/spec/brcobranca/retorno_cbr643_spec.rb +22 -22
- data/spec/brcobranca/retorno_cnab_240_spec.rb +51 -0
- metadata +24 -20
data/.gitignore
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,37 +1,41 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
brcobranca (3.
|
|
5
|
-
activemodel (
|
|
4
|
+
brcobranca (3.1.0)
|
|
5
|
+
activemodel (~> 3)
|
|
6
6
|
parseline (>= 1.0.3)
|
|
7
|
-
rghost (
|
|
8
|
-
rghost_barcode (
|
|
7
|
+
rghost (~> 0.8)
|
|
8
|
+
rghost_barcode (~> 0.9)
|
|
9
9
|
|
|
10
10
|
GEM
|
|
11
11
|
remote: http://rubygems.org/
|
|
12
12
|
specs:
|
|
13
|
-
activemodel (3.
|
|
14
|
-
activesupport (= 3.
|
|
15
|
-
builder (~>
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
13
|
+
activemodel (3.2.3)
|
|
14
|
+
activesupport (= 3.2.3)
|
|
15
|
+
builder (~> 3.0.0)
|
|
16
|
+
activesupport (3.2.3)
|
|
17
|
+
i18n (~> 0.6)
|
|
18
|
+
multi_json (~> 1.0)
|
|
19
|
+
builder (3.0.0)
|
|
20
|
+
columnize (0.3.6)
|
|
21
|
+
diff-lcs (1.1.3)
|
|
22
|
+
i18n (0.6.0)
|
|
23
|
+
linecache (0.46)
|
|
24
|
+
rbx-require-relative (> 0.0.4)
|
|
25
|
+
multi_json (1.3.2)
|
|
23
26
|
parseline (1.0.3)
|
|
24
|
-
rake (0.
|
|
25
|
-
|
|
27
|
+
rake (0.9.2.2)
|
|
28
|
+
rbx-require-relative (0.0.9)
|
|
29
|
+
rghost (0.8.7.7)
|
|
26
30
|
rghost_barcode (0.9)
|
|
27
|
-
rspec (2.
|
|
28
|
-
rspec-core (~> 2.
|
|
29
|
-
rspec-expectations (~> 2.
|
|
30
|
-
rspec-mocks (~> 2.
|
|
31
|
-
rspec-core (2.
|
|
32
|
-
rspec-expectations (2.
|
|
33
|
-
diff-lcs (~> 1.1.
|
|
34
|
-
rspec-mocks (2.
|
|
31
|
+
rspec (2.9.0)
|
|
32
|
+
rspec-core (~> 2.9.0)
|
|
33
|
+
rspec-expectations (~> 2.9.0)
|
|
34
|
+
rspec-mocks (~> 2.9.0)
|
|
35
|
+
rspec-core (2.9.0)
|
|
36
|
+
rspec-expectations (2.9.1)
|
|
37
|
+
diff-lcs (~> 1.1.3)
|
|
38
|
+
rspec-mocks (2.9.0)
|
|
35
39
|
ruby-debug (0.10.4)
|
|
36
40
|
columnize (>= 0.1)
|
|
37
41
|
ruby-debug-base (~> 0.10.4.0)
|
|
@@ -40,6 +44,7 @@ GEM
|
|
|
40
44
|
|
|
41
45
|
PLATFORMS
|
|
42
46
|
ruby
|
|
47
|
+
x86-mingw32
|
|
43
48
|
|
|
44
49
|
DEPENDENCIES
|
|
45
50
|
brcobranca!
|
data/README.rdoc
CHANGED
|
@@ -39,14 +39,21 @@ Gem para emissão de bloquetos de cobrança para bancos brasileiros
|
|
|
39
39
|
* Banco Caixa
|
|
40
40
|
* Sem registro (SR) by Túlio Ornelas - https://github.com/tulios
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
* Banco SICREDI
|
|
43
|
+
|
|
44
|
+
== Retornos Disponíveis
|
|
45
|
+
|
|
46
|
+
* CBR643
|
|
47
|
+
* CNAB240
|
|
48
|
+
|
|
49
|
+
== Está perdido?
|
|
43
50
|
|
|
44
51
|
Veja a documentação da versão atual em http://rubydoc.info/gems/brcobranca e da versão de desenvolvimento em http://rubydoc.info/github/kivanio/brcobranca/master/frames
|
|
45
52
|
|
|
46
53
|
== REQUISITOS
|
|
47
54
|
|
|
48
|
-
* rghost >= 0.8
|
|
49
|
-
* rghost_barcode >= 0.
|
|
55
|
+
* rghost >= 0.8
|
|
56
|
+
* rghost_barcode >= 0.9
|
|
50
57
|
* parseline >= 1.0.3
|
|
51
58
|
* GhostScript > 8.0
|
|
52
59
|
|
|
@@ -70,7 +77,7 @@ Informe em http://github.com/kivanio/brcobranca/issues
|
|
|
70
77
|
|
|
71
78
|
Recomende-nos no http://www.workingwithrails.com/recommendation/new/person/5679-kivanio-pereira-barbosa
|
|
72
79
|
|
|
73
|
-
==
|
|
80
|
+
== LICENÇA
|
|
74
81
|
|
|
75
82
|
BSD
|
|
76
83
|
|
data/brcobranca.gemspec
CHANGED
|
@@ -7,7 +7,7 @@ Gem::Specification.new do |s|
|
|
|
7
7
|
s.version = Brcobranca::VERSION
|
|
8
8
|
s.platform = Gem::Platform::RUBY
|
|
9
9
|
s.authors = ["Kivanio Barbosa"]
|
|
10
|
-
s.date = %q{
|
|
10
|
+
s.date = %q{2012-04-20}
|
|
11
11
|
s.description = %q{Gem para emissão de bloquetos de cobrança de bancos brasileiros.}
|
|
12
12
|
s.summary = %q{Gem que permite trabalhar com bloquetos de cobrança para bancos brasileiros.}
|
|
13
13
|
s.email = %q{kivanio@gmail.com}
|
|
@@ -21,10 +21,10 @@ Gem::Specification.new do |s|
|
|
|
21
21
|
s.requirements = ["GhostScript > 8.0, para gear PDF e c\303\263digo de Barras"]
|
|
22
22
|
s.rubyforge_project = "brcobranca"
|
|
23
23
|
|
|
24
|
-
s.add_runtime_dependency(%q<rghost>, ["
|
|
25
|
-
s.add_runtime_dependency(%q<rghost_barcode>, ["
|
|
24
|
+
s.add_runtime_dependency(%q<rghost>, ["~> 0.8"])
|
|
25
|
+
s.add_runtime_dependency(%q<rghost_barcode>, ["~> 0.9"])
|
|
26
26
|
s.add_runtime_dependency(%q<parseline>, [">= 1.0.3"])
|
|
27
|
-
s.add_runtime_dependency(%q<activemodel>, ["
|
|
27
|
+
s.add_runtime_dependency(%q<activemodel>, ["~> 3"])
|
|
28
28
|
|
|
29
29
|
s.post_install_message = %[
|
|
30
30
|
===========================================================================
|
data/lib/brcobranca.rb
CHANGED
|
@@ -47,7 +47,7 @@ module Brcobranca
|
|
|
47
47
|
# Para mudar as configurações padrão, você pode fazer assim:
|
|
48
48
|
# config/environments/test.rb:
|
|
49
49
|
#
|
|
50
|
-
# Brcobranca.
|
|
50
|
+
# Brcobranca.setup do |config|
|
|
51
51
|
# config.formato = :gif
|
|
52
52
|
# end
|
|
53
53
|
#
|
|
@@ -68,6 +68,13 @@ module Brcobranca
|
|
|
68
68
|
# @param [Integer] (Padrão: 150)
|
|
69
69
|
attr_accessor :resolucao
|
|
70
70
|
|
|
71
|
+
# Ajusta o Encoding externo (do arquivo) - Ruby 1.9
|
|
72
|
+
# Ex: Caso esteja dando UndefinedConversionError - from ASCII-8BIT to UTF-8
|
|
73
|
+
# configurar com a string 'ascii-8bit'
|
|
74
|
+
# @return [String]
|
|
75
|
+
# @param [String] (Padrão: nil)
|
|
76
|
+
attr_accessor :external_encoding
|
|
77
|
+
|
|
71
78
|
# Atribui valores padrões de configuração
|
|
72
79
|
def initialize
|
|
73
80
|
self.gerador = :rghost
|
|
@@ -96,6 +103,7 @@ module Brcobranca
|
|
|
96
103
|
autoload :Bradesco, 'brcobranca/boleto/bradesco'
|
|
97
104
|
autoload :Unibanco, 'brcobranca/boleto/unibanco'
|
|
98
105
|
autoload :Caixa, 'brcobranca/boleto/caixa'
|
|
106
|
+
autoload :Sicredi, 'brcobranca/boleto/sicredi'
|
|
99
107
|
|
|
100
108
|
# Módulos para classes de template
|
|
101
109
|
module Template
|
|
@@ -108,5 +116,7 @@ module Brcobranca
|
|
|
108
116
|
module Retorno
|
|
109
117
|
autoload :Base, 'brcobranca/retorno/base'
|
|
110
118
|
autoload :RetornoCbr643, 'brcobranca/retorno/retorno_cbr643'
|
|
119
|
+
autoload :RetornoCnab240, 'brcobranca/retorno/retorno_cnab240'
|
|
111
120
|
end
|
|
112
|
-
end
|
|
121
|
+
end
|
|
122
|
+
|
|
Binary file
|
|
@@ -56,7 +56,7 @@ module Brcobranca
|
|
|
56
56
|
# Utiliza-se o [-1..-1] para retornar o último caracter
|
|
57
57
|
# @return [String]
|
|
58
58
|
def nosso_numero_dv
|
|
59
|
-
"#{carteira}#{numero_documento}".
|
|
59
|
+
"#{carteira}#{numero_documento}".modulo11_2to9_caixa.to_s
|
|
60
60
|
end
|
|
61
61
|
|
|
62
62
|
# Número da agência/código cedente do cliente para exibir no boleto.
|
|
@@ -70,7 +70,7 @@ module Brcobranca
|
|
|
70
70
|
# Dígito verificador do convênio ou código do cedente
|
|
71
71
|
# @return [String]
|
|
72
72
|
def convenio_dv
|
|
73
|
-
"#{convenio.
|
|
73
|
+
"#{convenio.modulo11_2to9_caixa}"
|
|
74
74
|
end
|
|
75
75
|
|
|
76
76
|
# Monta a segunda parte do código de barras.
|
|
@@ -92,7 +92,7 @@ module Brcobranca
|
|
|
92
92
|
"#{nosso_numero_boleto[1..1]}" <<
|
|
93
93
|
"#{nosso_numero_boleto[8..16]}"
|
|
94
94
|
|
|
95
|
-
"#{campo_livre}#{campo_livre.
|
|
95
|
+
"#{campo_livre}#{campo_livre.modulo11_2to9_caixa}"
|
|
96
96
|
end
|
|
97
97
|
|
|
98
98
|
end
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
|
2
|
+
module Brcobranca
|
|
3
|
+
module Boleto
|
|
4
|
+
class Sicredi < Base # Banco SICREDI
|
|
5
|
+
# <b>REQUERIDO</b>: Código do posto da cooperativa de crédito
|
|
6
|
+
attr_accessor :posto
|
|
7
|
+
|
|
8
|
+
# <b>REQUERIDO</b>: Byte de identificação do cedente do bloqueto utilizado para compor o nosso número.
|
|
9
|
+
attr_accessor :byte_idt
|
|
10
|
+
|
|
11
|
+
validates_length_of :agencia, :maximum => 4, :message => "deve ser menor ou igual a 4 dígitos."
|
|
12
|
+
validates_length_of :numero_documento, :maximum => 5, :message => "deve ser menor ou igual a 5 dígitos."
|
|
13
|
+
validates_length_of :conta_corrente, :maximum => 5, :message => "deve ser menor ou igual a 5 dígitos."
|
|
14
|
+
validates_length_of :carteira, :maximum => 2, :message => "deve ser menor ou igual a 2 dígitos."
|
|
15
|
+
|
|
16
|
+
# Nova instancia do Bradesco
|
|
17
|
+
# @param (see Brcobranca::Boleto::Base#initialize)
|
|
18
|
+
def initialize(campos={})
|
|
19
|
+
campos = {:carteira => "03", :especie_documento => "A"}.merge!(campos)
|
|
20
|
+
super(campos)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# Codigo do banco emissor (3 dígitos sempre)
|
|
24
|
+
#
|
|
25
|
+
# @return [String] 3 caracteres numéricos.
|
|
26
|
+
def banco
|
|
27
|
+
"748"
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# Carteira
|
|
31
|
+
#
|
|
32
|
+
# @return [String] 2 caracteres numéricos.
|
|
33
|
+
def carteira=(valor)
|
|
34
|
+
@carteira = valor.to_s.rjust(2,'0') unless valor.nil?
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
# Posto
|
|
38
|
+
#
|
|
39
|
+
# @return [String] 2 caracteres numéricos.
|
|
40
|
+
def posto=(valor)
|
|
41
|
+
@posto = valor.to_s.rjust(2, '0') unless valor.nil?
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Número da conta corrente
|
|
45
|
+
# @return [String] 5 caracteres numéricos.
|
|
46
|
+
def conta_corrente=(valor)
|
|
47
|
+
@conta_corrente = valor.to_s.rjust(5,'0') unless valor.nil?
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
# Dígito verificador do banco
|
|
51
|
+
# @return [String] 1 caractere.
|
|
52
|
+
def banco_dv
|
|
53
|
+
'X'
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
# Nosso número para exibir no boleto.
|
|
57
|
+
# @return [String]
|
|
58
|
+
# @example
|
|
59
|
+
# boleto.nosso_numero_boleto #=> "06/00000004042-8"
|
|
60
|
+
def nosso_numero_boleto
|
|
61
|
+
"#{numero_documento_with_byte_idt[0..1]}/#{numero_documento_with_byte_idt[2..-1]}-#{self.nosso_numero_dv}"
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
def numero_documento_with_byte_idt
|
|
65
|
+
"#{self.data_documento.strftime('%y')}#{self.byte_idt}#{self.numero_documento}"
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
# Número seqüencial utilizado para identificar o boleto.
|
|
69
|
+
# @return [String] 5 caracteres numéricos.
|
|
70
|
+
def numero_documento=(valor)
|
|
71
|
+
@numero_documento = valor.to_s.rjust(5,'0') unless valor.nil?
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# Codigo referente ao tipo de cobrança
|
|
75
|
+
# @return [String]: 1 caractere numérico
|
|
76
|
+
def tipo_cobranca
|
|
77
|
+
"3"
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
# Codigo referente ao tipo de carteira
|
|
81
|
+
# @return [String]: 1 caractere numérico
|
|
82
|
+
def tipo_carteira
|
|
83
|
+
if self.carteira == "03"
|
|
84
|
+
"1"
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
# Dígito verificador do nosso número
|
|
88
|
+
# @return [Integer] 1 caracteres numéricos.
|
|
89
|
+
def nosso_numero_dv
|
|
90
|
+
"#{agencia_posto_conta}#{numero_documento_with_byte_idt}".modulo11_9to2
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
def agencia_conta_boleto
|
|
94
|
+
"#{self.agencia}.#{self.posto}.#{conta_corrente}"
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
def agencia_posto_conta
|
|
98
|
+
"#{self.agencia}#{self.posto}#{conta_corrente}"
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
# Segunda parte do código de barras.
|
|
102
|
+
def codigo_barras_segunda_parte
|
|
103
|
+
campo_livre = "#{self.tipo_cobranca}#{self.tipo_carteira}#{self.nosso_numero_boleto.gsub(/\D/, '')}#{self.agencia_posto_conta}10"
|
|
104
|
+
campo_livre + campo_livre.modulo11_9to2_10_como_zero.to_s
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
end
|
|
@@ -23,6 +23,7 @@ module Brcobranca
|
|
|
23
23
|
module Rghost
|
|
24
24
|
extend self
|
|
25
25
|
include RGhost unless self.include?(RGhost)
|
|
26
|
+
RGhost::Config::GS[:external_encoding] = Brcobranca.configuration.external_encoding
|
|
26
27
|
|
|
27
28
|
# Gera o boleto em usando o formato desejado [:pdf, :jpg, :tif, :png, :ps, :laserjet, ... etc]
|
|
28
29
|
#
|
|
@@ -225,3 +226,4 @@ module Brcobranca
|
|
|
225
226
|
end
|
|
226
227
|
end
|
|
227
228
|
end
|
|
229
|
+
|
data/lib/brcobranca/calculo.rb
CHANGED
|
@@ -58,6 +58,16 @@ module Brcobranca
|
|
|
58
58
|
valor = (11 - (total % 11))
|
|
59
59
|
return [0,10,11].include?(valor) ? 1 : valor
|
|
60
60
|
end
|
|
61
|
+
|
|
62
|
+
# Calcula módulo 11 com multiplicaroes de 2 a 9 (Utilizado pela CAIXA - boletos SIGCB).
|
|
63
|
+
#
|
|
64
|
+
# @return [Integer]
|
|
65
|
+
def modulo11_2to9_caixa
|
|
66
|
+
total = self.multiplicador([2,3,4,5,6,7,8,9])
|
|
67
|
+
total = (total % 11) unless total < 11
|
|
68
|
+
valor = (11 - total)
|
|
69
|
+
return valor > 9 ? 0 : valor
|
|
70
|
+
end
|
|
61
71
|
|
|
62
72
|
# Calcula módulo 11 com multiplicaroes de 9 a 2 trocando retorno <b>10 por X</b>.
|
|
63
73
|
#
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
require 'parseline'
|
|
2
|
+
module Brcobranca
|
|
3
|
+
module Retorno
|
|
4
|
+
# Formato de Retorno CNAB 240
|
|
5
|
+
class RetornoCnab240 < Base
|
|
6
|
+
# Regex para remoção de headers e trailers além de registros diferentes de T ou U
|
|
7
|
+
REGEX_DE_EXCLUSAO_DE_REGISTROS_NAO_T_OU_U = /^((?!^.{7}3.{5}[T|U].*$).)*$/
|
|
8
|
+
|
|
9
|
+
def self.load_lines(file, options={})
|
|
10
|
+
default_options = {:except => REGEX_DE_EXCLUSAO_DE_REGISTROS_NAO_T_OU_U}
|
|
11
|
+
options = default_options.merge!(options)
|
|
12
|
+
|
|
13
|
+
Line.load_lines(file, options).each_slice(2).inject([]) do |retornos, cnab_lines|
|
|
14
|
+
retornos << generate_retorno_based_on_cnab_lines(cnab_lines)
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def self.generate_retorno_based_on_cnab_lines(cnab_lines)
|
|
19
|
+
retorno = self.new
|
|
20
|
+
cnab_lines.each do |line|
|
|
21
|
+
if line.tipo_registro == 'T'
|
|
22
|
+
Line::REGISTRO_T_FIELDS.each do |attr|
|
|
23
|
+
retorno.send(attr + '=', line.send(attr))
|
|
24
|
+
end
|
|
25
|
+
else
|
|
26
|
+
Line::REGISTRO_U_FIELDS.each do |attr|
|
|
27
|
+
retorno.send(attr + '=', line.send(attr))
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
retorno
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# Linha de mapeamento do retorno do arquivo CNAB 240
|
|
35
|
+
# O registro CNAB 240 possui 2 tipos de registros que juntos geram um registro de retorno bancário
|
|
36
|
+
# O primeiro é do tipo T que retorna dados gerais sobre a transação
|
|
37
|
+
# O segundo é do tipo U que retorna os valores da transação
|
|
38
|
+
class Line < Base
|
|
39
|
+
extend ParseLine::FixedWidth # Extendendo parseline
|
|
40
|
+
|
|
41
|
+
REGISTRO_T_FIELDS = %w(agencia_com_dv cedente_com_dv nosso_numero carteira data_vencimento valor_titulo banco_recebedor agencia_recebedora_com_dv sequencial)
|
|
42
|
+
REGISTRO_U_FIELDS = %w(desconto_concedito valor_abatimento iof_desconto juros_mora valor_recebido outras_despesas outros_recebimento data_credito)
|
|
43
|
+
|
|
44
|
+
attr_accessor :tipo_registro
|
|
45
|
+
|
|
46
|
+
fixed_width_layout do |parse|
|
|
47
|
+
parse.field :tipo_registro, 13..13
|
|
48
|
+
parse.field :sequencial,8..12
|
|
49
|
+
parse.field :agencia_com_dv,17..22
|
|
50
|
+
parse.field :cedente_com_dv,23..35
|
|
51
|
+
parse.field :nosso_numero,46..56
|
|
52
|
+
parse.field :carteira,57..57
|
|
53
|
+
parse.field :data_vencimento,73..80
|
|
54
|
+
parse.field :valor_titulo,81..95
|
|
55
|
+
parse.field :banco_recebedor,96..98
|
|
56
|
+
parse.field :agencia_recebedora_com_dv,99..104
|
|
57
|
+
parse.field :data_credito,145..152
|
|
58
|
+
parse.field :outras_despesas,107..121
|
|
59
|
+
parse.field :iof_desconto,62..76
|
|
60
|
+
parse.field :valor_abatimento,47..61
|
|
61
|
+
parse.field :desconto_concedito,32..46
|
|
62
|
+
parse.field :valor_recebido,77..91
|
|
63
|
+
parse.field :juros_mora,17..31
|
|
64
|
+
parse.field :outros_recebimento,122..136
|
|
65
|
+
|
|
66
|
+
# Dados que não consegui extrair dos registros T e U
|
|
67
|
+
#parse.field :convenio,31..37
|
|
68
|
+
#parse.field :tipo_cobranca,80..80
|
|
69
|
+
#parse.field :tipo_cobranca_anterior,81..81
|
|
70
|
+
#parse.field :natureza_recebimento,86..87
|
|
71
|
+
#parse.field :carteira_variacao,91..93
|
|
72
|
+
#parse.field :desconto,95..99
|
|
73
|
+
#parse.field :iof,100..104
|
|
74
|
+
#parse.field :comando,108..109
|
|
75
|
+
#parse.field :data_liquidacao,110..115
|
|
76
|
+
#parse.field :especie_documento,173..174
|
|
77
|
+
#parse.field :valor_tarifa,181..187
|
|
78
|
+
#parse.field :juros_desconto,201..213
|
|
79
|
+
#parse.field :abatimento_nao_aproveitado,292..304
|
|
80
|
+
#parse.field :valor_lancamento,305..317
|
|
81
|
+
#parse.field :indicativo_lancamento,318..318
|
|
82
|
+
#parse.field :indicador_valor,319..319
|
|
83
|
+
#parse.field :valor_ajuste,320..331
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
|
data/lib/brcobranca/version.rb
CHANGED
data/spec/arquivos/CBR64310.RET
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
02RETORNO01COBRANCA 33251000289353000000INSTITUTO MATO-GROSSENSE DO AL001BANCO DO BRASIL2001090000007 000000009703754590 1622420 000001
|
|
2
|
-
70000000000000000332510002893531622420 1622420000000000310000001 01900000000000 1806200109 000000000000000906400114923002201090000500000000000000000000000000000000000000000000000000000000000000000000000000009064000000000000000000000000000000000000000000000000856420000000000000 0000000000000000000000000000000000000000000000000004000002
|
|
3
|
-
70000000000000000332510002893531622420 1622420000000003010000001 01900000000000 1806200109 000000000000002235239909430002201090000500000000000000000000000000000000000000000000000000000000000000000000000000022352000000000000000000000000000000000000000000000002185220000000000000 0000000000000000000000000000000000000000000000000010000003
|
|
4
|
-
70000000000000000332510002893531622420 1622420000000003110000001 01900000000000 1806200109 00000000000000165330012970X002201090000500000000000000000000000000000000000000000000000000000000000000000000000000016533000000000000000000000000000000000000000000000001603320000000000000 0000000000000000000000000000000000000000000000000002000004
|
|
5
|
-
70000000000000000332510002893531622420 1622420000000003210000001 01900000000000 1806200109 00000000000000157740012970X002201090000500000000000000000000000000000000000000000000000000000000000000000000000000015774000000000000000000000000000000000000000000000001527420000000000000 0000000000000000000000000000000000000000000000000002000005
|
|
6
|
-
70000000000000000332510002893531622420 1622420000000003310000001 01900000000000 1806200109 00000000000000414440012970X002201090000500000000000000000000000000000000000000000000000000000000000000000000000000041444000000000000000000000000000000000000000000000004094420000000000000 0000000000000000000000000000000000000000000000000002000006
|
|
7
|
-
70000000000000000332510002893531622420 1622420000000003410000001 01900000000000 1806200109 00000000000000610280012970X002201090000500000000000000000000000000000000000000000000000000000000000000000000000000061028000000000000000000000000000000000000000000000006052820000000000000 0000000000000000000000000000000000000000000000000002000007
|
|
8
|
-
70000000000000000332510002893531622420 1622420000000003510000001 01900000000000 1806200109 00000000000000608040012970X002201090000500000000000000000000000000000000000000000000000000000000000000000000000000060804000000000000000000000000000000000000000000000006030420000000000000 0000000000000000000000000000000000000000000000000002000008
|
|
9
|
-
70000000000000000332510002893531622420 1622420000000003610000001 01900000000000 1806200109 000000000000005610074808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000010000009
|
|
10
|
-
70000000000000000332510002893531622420 1622420000000003710000001 01900000000000 1806200109 000000000000000565474808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000005654000000000000000000000000000000000000000000000000515420000000000000 0000000000000000000000000000000000000000000000000010000010
|
|
11
|
-
70000000000000000332510002893531622420 1622420000000003810000001 01900000000000 1806200109 000000000000005610074808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000010000011
|
|
12
|
-
70000000000000000332510002893531622420 1622420000000003910000001 01900000000000 1806200109 000000000000000528074808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000005280000000000000000000000000000000000000000000000000478020000000000000 0000000000000000000000000000000000000000000000000010000012
|
|
13
|
-
70000000000000000332510002893531622420 1622420000000004010000001 01900000000000 1806200109 000000000000005610074808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000010000013
|
|
14
|
-
70000000000000000332510002893531622420 1622420000000004110000001 01900000000000 1806200109 000000000000000528074808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000005280000000000000000000000000000000000000000000000000478020000000000000 0000000000000000000000000000000000000000000000000010000014
|
|
15
|
-
70000000000000000332510002893531622420 1622420000000004210000001 01900000000000 1806200109 000000000000005610000136439002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000004000015
|
|
16
|
-
70000000000000000332510002893531622420 1622420000000004310000001 01900000000000 1806200109 000000000000001672000136439002201090000500000000000000000000000000000000000000000000000000000000000000000000000000016720000000000000000000000000000000000000000000000001622020000000000000 0000000000000000000000000000000000000000000000000004000016
|
|
17
|
-
70000000000000000332510002893531622420 1622420000000004410000001 01900000000000 1806200109 000000000000000535300136439002201090000500000000000000000000000000000000000000000000000000000000000000000000000000005353000000000000000000000000000000000000000000000000485320000000000000 0000000000000000000000000000000000000000000000000004000017
|
|
18
|
-
70000000000000000332510002893531622420 1622420000000004510000001 01900000000000 1806200109 000000000000005210700130376002201090000500000000000000000000000000000000000000000000000000000000000000000000000000052107000000000000000000000000000000000000000000000005160720000000000000 0000000000000000000000000000000000000000000000000008000018
|
|
19
|
-
70000000000000000332510002893531622420 1622420000000004610000001 01900000000000 1806200109 000000000000006043600114923002201090000500000000000000000000000000000000000000000000000000000000000000000000000000060436000000000000000000000000000000000000000000000005993620000000000000 0000000000000000000000000000000000000000000000000002000019
|
|
20
|
-
70000000000000000332510002893531622420 1622420000000004710000001 01900000000000 1806200109 000000000000005610000136439002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000004000020
|
|
21
|
-
70000000000000000332510002893531622420 1622420000000004810000001 01900000000000 1806200109 000000000000000495000136439002201090000500000000000000000000000000000000000000000000000000000000000000000000000000004950000000000000000000000000000000000000000000000000445020000000000000 0000000000000000000000000000000000000000000000000004000021
|
|
22
|
-
70000000000000000332510002893531622420 1622420000000005010000001 01900000000000 1806200109 000000000000005707000114923002201090000500000000000000000000000000000000000000000000000000000000000000000000000000057070000000000000000000000000000000000000000000000005657020000000000000 0000000000000000000000000000000000000000000000000002000022
|
|
23
|
-
70000000000000000332510002893531622420 1622420000000005110000001 01900000000000 1806200109 000000000000005638600106599002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056386000000000000000000000000000000000000000000000005588620000000000000 0000000000000000000000000000000000000000000000000002000023
|
|
24
|
-
70000000000000000332510002893531622420 1622420000000005210000001 01900000000000 1806200109 000000000000005610000106599002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000002000024
|
|
25
|
-
70000000000000000332510002893531622420 1622420000000005310000001 01900000000000 1806200109 000000000000005856400106599002201090000500000000000000000000000000000000000000000000000000000000000000000000000000058564000000000000000000000000000000000000000000000005806420000000000000 0000000000000000000000000000000000000000000000000002000025
|
|
26
|
-
70000000000000000332510002893531622420 1622420000000005410000001 01900000000000 1806200109 000000000000005704600106599002201090000500000000000000000000000000000000000000000000000000000000000000000000000000057046000000000000000000000000000000000000000000000005654620000000000000 0000000000000000000000000000000000000000000000000002000026
|
|
27
|
-
70000000000000000332510002893531622420 1622420000000005510000001 01900000000000 1806200109 000000000000005673800106599002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056738000000000000000000000000000000000000000000000005623820000000000000 0000000000000000000000000000000000000000000000000002000027
|
|
28
|
-
9201001 000000000000000000000000000000 000000000000000000000000000000 000000000000000000000000000000 000000000000000000000000000000 000000000000000000000000000000 000028
|
|
1
|
+
02RETORNO01COBRANCA 33251000289353000000INSTITUTO MATO-GROSSENSE DO AL001BANCO DO BRASIL2001090000007 000000009703754590 1622420 000001
|
|
2
|
+
70000000000000000332510002893531622420 1622420000000000310000001 01900000000000 1806200109 000000000000000906400114923002201090000500000000000000000000000000000000000000000000000000000000000000000000000000009064000000000000000000000000000000000000000000000000856420000000000000 0000000000000000000000000000000000000000000000000004000002
|
|
3
|
+
70000000000000000332510002893531622420 1622420000000003010000001 01900000000000 1806200109 000000000000002235239909430002201090000500000000000000000000000000000000000000000000000000000000000000000000000000022352000000000000000000000000000000000000000000000002185220000000000000 0000000000000000000000000000000000000000000000000010000003
|
|
4
|
+
70000000000000000332510002893531622420 1622420000000003110000001 01900000000000 1806200109 00000000000000165330012970X002201090000500000000000000000000000000000000000000000000000000000000000000000000000000016533000000000000000000000000000000000000000000000001603320000000000000 0000000000000000000000000000000000000000000000000002000004
|
|
5
|
+
70000000000000000332510002893531622420 1622420000000003210000001 01900000000000 1806200109 00000000000000157740012970X002201090000500000000000000000000000000000000000000000000000000000000000000000000000000015774000000000000000000000000000000000000000000000001527420000000000000 0000000000000000000000000000000000000000000000000002000005
|
|
6
|
+
70000000000000000332510002893531622420 1622420000000003310000001 01900000000000 1806200109 00000000000000414440012970X002201090000500000000000000000000000000000000000000000000000000000000000000000000000000041444000000000000000000000000000000000000000000000004094420000000000000 0000000000000000000000000000000000000000000000000002000006
|
|
7
|
+
70000000000000000332510002893531622420 1622420000000003410000001 01900000000000 1806200109 00000000000000610280012970X002201090000500000000000000000000000000000000000000000000000000000000000000000000000000061028000000000000000000000000000000000000000000000006052820000000000000 0000000000000000000000000000000000000000000000000002000007
|
|
8
|
+
70000000000000000332510002893531622420 1622420000000003510000001 01900000000000 1806200109 00000000000000608040012970X002201090000500000000000000000000000000000000000000000000000000000000000000000000000000060804000000000000000000000000000000000000000000000006030420000000000000 0000000000000000000000000000000000000000000000000002000008
|
|
9
|
+
70000000000000000332510002893531622420 1622420000000003610000001 01900000000000 1806200109 000000000000005610074808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000010000009
|
|
10
|
+
70000000000000000332510002893531622420 1622420000000003710000001 01900000000000 1806200109 000000000000000565474808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000005654000000000000000000000000000000000000000000000000515420000000000000 0000000000000000000000000000000000000000000000000010000010
|
|
11
|
+
70000000000000000332510002893531622420 1622420000000003810000001 01900000000000 1806200109 000000000000005610074808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000010000011
|
|
12
|
+
70000000000000000332510002893531622420 1622420000000003910000001 01900000000000 1806200109 000000000000000528074808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000005280000000000000000000000000000000000000000000000000478020000000000000 0000000000000000000000000000000000000000000000000010000012
|
|
13
|
+
70000000000000000332510002893531622420 1622420000000004010000001 01900000000000 1806200109 000000000000005610074808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000010000013
|
|
14
|
+
70000000000000000332510002893531622420 1622420000000004110000001 01900000000000 1806200109 000000000000000528074808110002201090000500000000000000000000000000000000000000000000000000000000000000000000000000005280000000000000000000000000000000000000000000000000478020000000000000 0000000000000000000000000000000000000000000000000010000014
|
|
15
|
+
70000000000000000332510002893531622420 1622420000000004210000001 01900000000000 1806200109 000000000000005610000136439002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000004000015
|
|
16
|
+
70000000000000000332510002893531622420 1622420000000004310000001 01900000000000 1806200109 000000000000001672000136439002201090000500000000000000000000000000000000000000000000000000000000000000000000000000016720000000000000000000000000000000000000000000000001622020000000000000 0000000000000000000000000000000000000000000000000004000016
|
|
17
|
+
70000000000000000332510002893531622420 1622420000000004410000001 01900000000000 1806200109 000000000000000535300136439002201090000500000000000000000000000000000000000000000000000000000000000000000000000000005353000000000000000000000000000000000000000000000000485320000000000000 0000000000000000000000000000000000000000000000000004000017
|
|
18
|
+
70000000000000000332510002893531622420 1622420000000004510000001 01900000000000 1806200109 000000000000005210700130376002201090000500000000000000000000000000000000000000000000000000000000000000000000000000052107000000000000000000000000000000000000000000000005160720000000000000 0000000000000000000000000000000000000000000000000008000018
|
|
19
|
+
70000000000000000332510002893531622420 1622420000000004610000001 01900000000000 1806200109 000000000000006043600114923002201090000500000000000000000000000000000000000000000000000000000000000000000000000000060436000000000000000000000000000000000000000000000005993620000000000000 0000000000000000000000000000000000000000000000000002000019
|
|
20
|
+
70000000000000000332510002893531622420 1622420000000004710000001 01900000000000 1806200109 000000000000005610000136439002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000004000020
|
|
21
|
+
70000000000000000332510002893531622420 1622420000000004810000001 01900000000000 1806200109 000000000000000495000136439002201090000500000000000000000000000000000000000000000000000000000000000000000000000000004950000000000000000000000000000000000000000000000000445020000000000000 0000000000000000000000000000000000000000000000000004000021
|
|
22
|
+
70000000000000000332510002893531622420 1622420000000005010000001 01900000000000 1806200109 000000000000005707000114923002201090000500000000000000000000000000000000000000000000000000000000000000000000000000057070000000000000000000000000000000000000000000000005657020000000000000 0000000000000000000000000000000000000000000000000002000022
|
|
23
|
+
70000000000000000332510002893531622420 1622420000000005110000001 01900000000000 1806200109 000000000000005638600106599002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056386000000000000000000000000000000000000000000000005588620000000000000 0000000000000000000000000000000000000000000000000002000023
|
|
24
|
+
70000000000000000332510002893531622420 1622420000000005210000001 01900000000000 1806200109 000000000000005610000106599002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056100000000000000000000000000000000000000000000000005560020000000000000 0000000000000000000000000000000000000000000000000002000024
|
|
25
|
+
70000000000000000332510002893531622420 1622420000000005310000001 01900000000000 1806200109 000000000000005856400106599002201090000500000000000000000000000000000000000000000000000000000000000000000000000000058564000000000000000000000000000000000000000000000005806420000000000000 0000000000000000000000000000000000000000000000000002000025
|
|
26
|
+
70000000000000000332510002893531622420 1622420000000005410000001 01900000000000 1806200109 000000000000005704600106599002201090000500000000000000000000000000000000000000000000000000000000000000000000000000057046000000000000000000000000000000000000000000000005654620000000000000 0000000000000000000000000000000000000000000000000002000026
|
|
27
|
+
70000000000000000332510002893531622420 1622420000000005510000001 01900000000000 1806200109 000000000000005673800106599002201090000500000000000000000000000000000000000000000000000000000000000000000000000000056738000000000000000000000000000000000000000000000005623820000000000000 0000000000000000000000000000000000000000000000000002000027
|
|
28
|
+
9201001 000000000000000000000000000000 000000000000000000000000000000 000000000000000000000000000000 000000000000000000000000000000 000000000000000000000000000000 000028
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
00100000 2356438990001450019999570014 0123450000000054321 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxBANCO DO BRASIL 22912201101431900210803000000920674440PROCESSAMEN
|
|
2
|
+
00100011T0100020 20356438990001450019999570014 0123450000000054321 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 000000002912201100000000 000000000
|
|
3
|
+
0010001300001T 170123450000000054321 14499570000020673 7 00000000000000000034400001020850 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
4
|
+
0010001300002U 170000000000000090000000000000010000000000000020000000000000030000000000344000000000000342970000000000000040000000000000052912201102012012 000000000000000 000
|
|
5
|
+
0010001300003T 170123450000000054321 14499570000020807 7 00000000000000000032117237003210 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
6
|
+
0010001300004U 170000000000000000000000000000000000000000000000000000000000000000000000321170000000000320140000000000000000000000000000002912201102012012 000000000000000 000
|
|
7
|
+
0010001300005T 170123450000000054321 14499570000020821 7 00000000000000000075147237003210 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
8
|
+
0010001300006U 170000000000000000000000000000000000000000000000000000000000000000000000751470000000000750440000000000000000000000000000002912201102012012 000000000000000 000
|
|
9
|
+
0010001300007T 170123450000000054321 14499570000020823 7 00000000000000000086618001043915 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
10
|
+
0010001300008U 170000000000000000000000000000000000000000000000000000000000000000000000866180000000000865150000000000000000000000000000002912201102012012 000000000000000 000
|
|
11
|
+
0010001300009T 170123450000000054321 14499570000020826 7 00000000000000000083000237021340 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
12
|
+
0010001300010U 170000000000000000000000000000000000000000000000000000000000000000000000830000000000000828970000000000000000000000000000002912201102012012 000000000000000 000
|
|
13
|
+
0010001300011T 170123450000000054321 14499570000020830 7 00000000000000000206255237011020 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
14
|
+
0010001300012U 170000000000000000000000000000000000000000000000000000000000000000000002062550000000002061520000000000000000000000000000002912201102012012 000000000000000 000
|
|
15
|
+
0010001300013T 170123450000000054321 14499570000020831 7 00000000000000000084993237011020 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
16
|
+
0010001300014U 170000000000000000000000000000000000000000000000000000000000000000000000849930000000000848900000000000000000000000000000002912201102012012 000000000000000 000
|
|
17
|
+
0010001300015T 170123450000000054321 14499570000020832 7 00000000000000000050682237011020 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
18
|
+
0010001300016U 170000000000000000000000000000000000000000000000000000000000000000000000506820000000000505790000000000000000000000000000002912201102012012 000000000000000 000
|
|
19
|
+
0010001300017T 170123450000000054321 14499570000020833 7 00000000000000000050682237011020 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
20
|
+
0010001300018U 170000000000000000000000000000000000000000000000000000000000000000000000506820000000000505790000000000000000000000000000002912201102012012 000000000000000 000
|
|
21
|
+
0010001300019T 170123450000000054321 14499570000020834 7 00000000000000000050682237011020 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
22
|
+
0010001300020U 170000000000000000000000000000000000000000000000000000000000000000000000506820000000000505790000000000000000000000000000002912201102012012 000000000000000 000
|
|
23
|
+
0010001300021T 170123450000000054321 14499570000020835 7 00000000000000000050682237011020 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
24
|
+
0010001300022U 170000000000000000000000000000000000000000000000000000000000000000000000506820000000000505790000000000000000000000000000002912201102012012 000000000000000 000
|
|
25
|
+
0010001300023T 170123450000000054321 14499570000020836 7 00000000000000000050682237011020 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
26
|
+
0010001300024U 170000000000000000000000000000000000000000000000000000000000000000000000506820000000000505790000000000000000000000000000002912201102012012 000000000000000 000
|
|
27
|
+
0010001300025T 170123450000000054321 14499570000020839 7 0000000000000000003668600104301X 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
28
|
+
0010001300026U 170000000000000000000000000000000000000000000000000000000000000000000000366860000000000365830000000000000000000000000000002912201102012012 000000000000000 000
|
|
29
|
+
0010001300027T 170123450000000054321 14499570000020846 7 00000000000000000089829001015334 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
30
|
+
0010001300028U 170000000000000000000000000000000000000000000000000000000000000000000000898290000000000897260000000000000000000000000000002912201102012012 000000000000000 000
|
|
31
|
+
0010001300029T 170123450000000054321 14499570000020847 7 00000000000000000105147422001610 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
32
|
+
0010001300030U 170000000000000000000000000000000000000000000000000000000000000000000001051470000000001050440000000000000000000000000000002912201102012012 000000000000000 000
|
|
33
|
+
0010001300031T 170123450000000054321 14499570000020855 7 00000000000000000054500001026239 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
34
|
+
0010001300032U 170000000000000000000000000000000000000000000000000000000000000000000000545000000000000543970000000000000000000000000000002912201102012012 000000000000000 000
|
|
35
|
+
0010001300033T 170123450000000054321 14499570000020864 7 00000000000000000018167001011061 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
36
|
+
0010001300034U 170000000000000000000000000000000000000000000000000000000000000000000000181670000000000180640000000000000000000000000000002912201102012012 000000000000000 000
|
|
37
|
+
0010001300035T 170123450000000054321 14499570000020867 7 00000000000000000036686001005991 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
38
|
+
0010001300036U 170000000000000000000000000000000000000000000000000000000000000000000000366860000000000365830000000000000000000000000000002912201102012012 000000000000000 000
|
|
39
|
+
0010001300037T 170123450000000054321 14499570000020868 7 00000000000000000018167001011061 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
40
|
+
0010001300038U 170000000000000000000000000000000000000000000000000000000000000000000000181670000000000180640000000000000000000000000000002912201102012012 000000000000000 000
|
|
41
|
+
0010001300039T 170123450000000054321 14499570000020877 7 00000000000000000035000237021730 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
42
|
+
0010001300040U 170000000000000000000000000000000000000000000000000000000000000000000000350000000000000348970000000000000000000000000000002912201102012012 000000000000000 000
|
|
43
|
+
0010001300041T 170123450000000054321 14499570000020884 7 00000000000000000086618399013620 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
44
|
+
0010001300042U 170000000000000000000000000000000000000000000000000000000000000000000000866180000000000865150000000000000000000000000000002912201102012012 000000000000000 000
|
|
45
|
+
0010001300043T 170123450000000054321 14499570000020910 7 00000000000000000017985104007370 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
46
|
+
0010001300044U 170000000000000000000000000000000000000000000000000000000000000000000000179850000000000178820000000000000000000000000000002912201102012012 000000000000000 000
|
|
47
|
+
0010001300045T 170123450000000054321 14499570000020911 7 00000000000000000050682237011020 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
48
|
+
0010001300046U 170000000000000000000000000000000000000000000000000000000000000000000000506820000000000505790000000000000000000000000000002912201102012012 000000000000000 000
|
|
49
|
+
0010001300047T 170123450000000054321 14499570000020912 7 00000000000000000013625237003210 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
50
|
+
0010001300048U 170000000000000000000000000000000000000000000000000000000000000000000000136250000000000135220000000000000000000000000000002912201102012012 000000000000000 000
|
|
51
|
+
0010001300049T 170123450000000054321 14499570000020917 7 00000000000000000025108237011020 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
52
|
+
0010001300050U 170000000000000000000000000000000000000000000000000000000000000000000000251080000000000250050000000000000000000000000000002912201102012012 000000000000000 000
|
|
53
|
+
0010001300051T 170123450000000054321 14499570000020925 7 00000000000000000050682237011020 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
54
|
+
0010001300052U 170000000000000000000000000000000000000000000000000000000000000000000000506820000000000505790000000000000000000000000000002912201102012012 000000000000000 000
|
|
55
|
+
0010001300053T 170123450000000054321 14499570000020931 7 00000000000000000040578237035930 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
56
|
+
0010001300054U 170000000000000000000000000000000000000000000000000000000000000000000000405780000000000404750000000000000000000000000000002912201102012012 000000000000000 000
|
|
57
|
+
0010001300055T 170123450000000054321 14499570000020934 7 00000000000000000049691001031836 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
58
|
+
0010001300056U 170000000000000000000000000000000000000000000000000000000000000000000000496910000000000495880000000000000000000000000000002912201102012012 000000000000000 000
|
|
59
|
+
0010001300057T 170123450000000054321 14499570000020947 7 00000000000000000065400001020354 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
60
|
+
0010001300058U 170000000000000000000000000000000000000000000000000000000000000000000000654000000000000652970000000000000000000000000000002912201102012012 000000000000000 000
|
|
61
|
+
0010001300059T 170123450000000054321 14499570000020986 7 00000000000000000030000001005428 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
62
|
+
0010001300060U 170000000000000000000000000000000000000000000000000000000000000000000000300000000000000298970000000000000000000000000000002912201102012012 000000000000000 000
|
|
63
|
+
0010001300061T 170123450000000054321 14499570000020987 7 00000000000000000030000001005428 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
64
|
+
0010001300062U 170000000000000000000000000000000000000000000000000000000000000000000000300000000000000298970000000000000000000000000000002912201102012012 000000000000000 000
|
|
65
|
+
0010001300063T 170123450000000054321 14499570000021024 7 0000000000000000006000000104847X 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
66
|
+
0010001300064U 170000000000000000000000000000000000000000000000000000000000000000000000600000000000000598970000000000000000000000000000002912201102012012 000000000000000 000
|
|
67
|
+
0010001300065T 170123450000000054321 14499570000021066 7 00000000000000000302400104025580 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
68
|
+
0010001300066U 170000000000000000000000000000000000000000000000000000000000000000000003024000000000003022970000000000000000000000000000002912201102012012 000000000000000 000
|
|
69
|
+
0010001300067T 170123450000000054321 14499570007451637 7 00000000000000000077203237004540 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
70
|
+
0010001300068U 170000000000000000000000000000000000000000000000000000000000000000000000772030000000000771000000000000000000000000000000002912201102012012 000000000000000 000
|
|
71
|
+
0010001300069T 170123450000000054321 14499570007451702 7 00000000000000000038000001043699 0900000000000000000000000000000000000000000000000000000 000000000000000000000010303 170191449957
|
|
72
|
+
0010001300070U 170000000000000000000000000000000000000000000000000000000000000000000000380000000000000378970000000000000000000000000000002912201102012012 000000000000000 000
|
|
73
|
+
00100015 000072000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
|
74
|
+
00199999 000001000074000000 00000000000000000000000000000
|
|
@@ -11,16 +11,16 @@ describe Brcobranca::Boleto::Caixa do #:nodoc:[all]
|
|
|
11
11
|
:dias_vencimento => 1,
|
|
12
12
|
:aceite => 'S',
|
|
13
13
|
:quantidade => 1,
|
|
14
|
-
:valor =>
|
|
14
|
+
:valor => 10.00,
|
|
15
15
|
:local_pagamento => 'QUALQUER BANCO ATÉ O VENCIMENTO',
|
|
16
|
-
:cedente => '
|
|
17
|
-
:documento_cedente => '
|
|
18
|
-
:sacado => '
|
|
19
|
-
:sacado_documento => '
|
|
20
|
-
:agencia => '
|
|
21
|
-
:conta_corrente => '
|
|
22
|
-
:convenio => '
|
|
23
|
-
:numero_documento => '
|
|
16
|
+
:cedente => 'PREFEITURA MUNICIPAL DE VILHENA',
|
|
17
|
+
:documento_cedente => '04092706000181',
|
|
18
|
+
:sacado => 'João Paulo Barbosa',
|
|
19
|
+
:sacado_documento => '77777777777',
|
|
20
|
+
:agencia => '1825',
|
|
21
|
+
:conta_corrente => '0000528',
|
|
22
|
+
:convenio => '245274',
|
|
23
|
+
:numero_documento => '000000000000001'
|
|
24
24
|
}
|
|
25
25
|
end
|
|
26
26
|
|
|
@@ -56,14 +56,14 @@ describe Brcobranca::Boleto::Caixa do #:nodoc:[all]
|
|
|
56
56
|
it 'Gerar o dígito verificador do convênio' do
|
|
57
57
|
boleto_novo = Brcobranca::Boleto::Caixa.new @valid_attributes
|
|
58
58
|
boleto_novo.convenio_dv.should_not be_nil
|
|
59
|
-
boleto_novo.convenio_dv.should == '
|
|
59
|
+
boleto_novo.convenio_dv.should == '0'
|
|
60
60
|
end
|
|
61
61
|
|
|
62
62
|
it "Gerar o código de barras" do
|
|
63
63
|
boleto_novo = Brcobranca::Boleto::Caixa.new @valid_attributes
|
|
64
64
|
lambda { boleto_novo.codigo_barras }.should_not raise_error
|
|
65
65
|
boleto_novo.codigo_barras_segunda_parte.should_not be_blank
|
|
66
|
-
boleto_novo.codigo_barras_segunda_parte.should eql('
|
|
66
|
+
boleto_novo.codigo_barras_segunda_parte.should eql('2452740000200040000000010')
|
|
67
67
|
end
|
|
68
68
|
|
|
69
69
|
it "Não permitir gerar boleto com atributos inválidos" do
|
|
@@ -111,10 +111,10 @@ describe Brcobranca::Boleto::Caixa do #:nodoc:[all]
|
|
|
111
111
|
it "Montar agencia_conta_boleto" do
|
|
112
112
|
boleto_novo = Brcobranca::Boleto::Caixa.new(@valid_attributes)
|
|
113
113
|
|
|
114
|
-
boleto_novo.agencia_conta_boleto.should eql("
|
|
114
|
+
boleto_novo.agencia_conta_boleto.should eql("1825/245274-0")
|
|
115
115
|
|
|
116
116
|
boleto_novo.convenio = "123456"
|
|
117
|
-
boleto_novo.agencia_conta_boleto.should eql("
|
|
117
|
+
boleto_novo.agencia_conta_boleto.should eql("1825/123456-0")
|
|
118
118
|
|
|
119
119
|
boleto_novo.agencia = "2030"
|
|
120
120
|
boleto_novo.convenio = "654321"
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
|
2
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
|
3
|
+
|
|
4
|
+
describe Brcobranca::Boleto::Sicredi do
|
|
5
|
+
before(:each) do
|
|
6
|
+
@valid_attributes = {
|
|
7
|
+
:especie_documento => "A",
|
|
8
|
+
:moeda => "9",
|
|
9
|
+
:data_documento => Date.parse('2012-01-18'),
|
|
10
|
+
:dias_vencimento => 1,
|
|
11
|
+
:aceite => "S",
|
|
12
|
+
:quantidade => 1,
|
|
13
|
+
:valor => 0.0,
|
|
14
|
+
:local_pagamento => "QUALQUER BANCO ATÉ O VENCIMENTO",
|
|
15
|
+
:cedente => "Kivanio Barbosa",
|
|
16
|
+
:documento_cedente => "12345678912",
|
|
17
|
+
:sacado => "Claudio Pozzebom",
|
|
18
|
+
:sacado_documento => "12345678900",
|
|
19
|
+
:agencia => "4042",
|
|
20
|
+
:conta_corrente => "61900",
|
|
21
|
+
:convenio => 12387989,
|
|
22
|
+
:numero_documento => "00168",
|
|
23
|
+
:posto => '18',
|
|
24
|
+
:byte_idt => '2'
|
|
25
|
+
}
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
it "Criar nova instancia com atributos padrões" do
|
|
29
|
+
boleto_novo = Brcobranca::Boleto::Sicredi.new
|
|
30
|
+
boleto_novo.banco.should eql("748")
|
|
31
|
+
boleto_novo.especie_documento.should eql("A")
|
|
32
|
+
boleto_novo.especie.should eql("R$")
|
|
33
|
+
boleto_novo.moeda.should eql("9")
|
|
34
|
+
boleto_novo.data_documento.should eql(Date.today)
|
|
35
|
+
boleto_novo.dias_vencimento.should eql(1)
|
|
36
|
+
boleto_novo.data_vencimento.should eql(Date.today + 1)
|
|
37
|
+
boleto_novo.aceite.should eql("S")
|
|
38
|
+
boleto_novo.quantidade.should eql(1)
|
|
39
|
+
boleto_novo.valor.should eql(0.0)
|
|
40
|
+
boleto_novo.valor_documento.should eql(0.0)
|
|
41
|
+
boleto_novo.local_pagamento.should eql("QUALQUER BANCO ATÉ O VENCIMENTO")
|
|
42
|
+
boleto_novo.carteira.should eql("03")
|
|
43
|
+
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
it "Criar nova instancia com atributos válidos" do
|
|
47
|
+
boleto_novo = Brcobranca::Boleto::Sicredi.new(@valid_attributes)
|
|
48
|
+
boleto_novo.banco.should eql("748")
|
|
49
|
+
boleto_novo.especie_documento.should eql("A")
|
|
50
|
+
boleto_novo.especie.should eql("R$")
|
|
51
|
+
boleto_novo.moeda.should eql("9")
|
|
52
|
+
boleto_novo.data_documento.should eql(Date.parse('2012-01-18'))
|
|
53
|
+
boleto_novo.dias_vencimento.should eql(1)
|
|
54
|
+
boleto_novo.data_vencimento.should eql(Date.parse('2012-01-18') + 1)
|
|
55
|
+
boleto_novo.aceite.should eql("S")
|
|
56
|
+
boleto_novo.quantidade.should eql(1)
|
|
57
|
+
boleto_novo.valor.should eql(0.0)
|
|
58
|
+
boleto_novo.valor_documento.should eql(0.0)
|
|
59
|
+
boleto_novo.local_pagamento.should eql("QUALQUER BANCO ATÉ O VENCIMENTO")
|
|
60
|
+
boleto_novo.cedente.should eql("Kivanio Barbosa")
|
|
61
|
+
boleto_novo.documento_cedente.should eql("12345678912")
|
|
62
|
+
boleto_novo.sacado.should eql("Claudio Pozzebom")
|
|
63
|
+
boleto_novo.sacado_documento.should eql("12345678900")
|
|
64
|
+
boleto_novo.conta_corrente.should eql("61900")
|
|
65
|
+
boleto_novo.agencia.should eql("4042")
|
|
66
|
+
boleto_novo.convenio.should eql(12387989)
|
|
67
|
+
boleto_novo.numero_documento.should eql("00168")
|
|
68
|
+
boleto_novo.carteira.should eql("03")
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
it "Montar código de barras para carteira número 03" do
|
|
72
|
+
@valid_attributes[:valor] = 2952.95
|
|
73
|
+
@valid_attributes[:dias_vencimento] = 5
|
|
74
|
+
@valid_attributes[:data_documento] = Date.parse("2012-01-19")
|
|
75
|
+
@valid_attributes[:numero_documento] = "13871"
|
|
76
|
+
@valid_attributes[:conta_corrente] = "12345"
|
|
77
|
+
@valid_attributes[:agencia] = "1234"
|
|
78
|
+
@valid_attributes[:carteira] = "03"
|
|
79
|
+
@valid_attributes[:posto] = "18"
|
|
80
|
+
@valid_attributes[:aceite] = "N"
|
|
81
|
+
@valid_attributes[:byte_idt] = "2"
|
|
82
|
+
boleto_novo = Brcobranca::Boleto::Sicredi.new(@valid_attributes)
|
|
83
|
+
|
|
84
|
+
boleto_novo.codigo_barras.linha_digitavel.should eql("74893.11220 13871.512342 18123.451009 1 52220000295295")
|
|
85
|
+
boleto_novo.codigo_barras_segunda_parte.should eql("3112213871512341812345100")
|
|
86
|
+
#boleto_novo.codigo_barras.should eql("23791377000000135004042030077770016800619000")
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
it "Não permitir gerar boleto com atributos inválido" do
|
|
90
|
+
boleto_novo = Brcobranca::Boleto::Sicredi.new
|
|
91
|
+
lambda { boleto_novo.codigo_barras }.should raise_error(Brcobranca::BoletoInvalido)
|
|
92
|
+
boleto_novo.errors.count.should eql(3)
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
it "Montar nosso_numero_boleto" do
|
|
96
|
+
boleto_novo = Brcobranca::Boleto::Sicredi.new(@valid_attributes)
|
|
97
|
+
|
|
98
|
+
boleto_novo.byte_idt = "2"
|
|
99
|
+
boleto_novo.agencia = "1234"
|
|
100
|
+
boleto_novo.posto = "18"
|
|
101
|
+
boleto_novo.conta_corrente = "12345"
|
|
102
|
+
boleto_novo.numero_documento = "13871"
|
|
103
|
+
boleto_novo.carteira = "03"
|
|
104
|
+
boleto_novo.nosso_numero_boleto.should eql("12/213871-5")
|
|
105
|
+
boleto_novo.nosso_numero_dv.should eql(5)
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
it "Montar agencia_conta_boleto" do
|
|
109
|
+
boleto_novo = Brcobranca::Boleto::Sicredi.new(@valid_attributes)
|
|
110
|
+
|
|
111
|
+
boleto_novo.agencia = "1234"
|
|
112
|
+
boleto_novo.posto = "18"
|
|
113
|
+
boleto_novo.conta_corrente = "12345"
|
|
114
|
+
boleto_novo.agencia_conta_boleto.should eql("1234.18.12345")
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
it "Busca logotipo do banco" do
|
|
118
|
+
boleto_novo = Brcobranca::Boleto::Sicredi.new
|
|
119
|
+
File.exist?(boleto_novo.logotipo).should be_true
|
|
120
|
+
File.stat(boleto_novo.logotipo).zero?.should be_false
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
it "Gerar boleto nos formatos válidos com método to_" do
|
|
124
|
+
boleto_novo = Brcobranca::Boleto::Sicredi.new(@valid_attributes)
|
|
125
|
+
|
|
126
|
+
%w| pdf jpg tif png ps |.each do |format|
|
|
127
|
+
file_body=boleto_novo.send("to_#{format}".to_sym)
|
|
128
|
+
tmp_file=Tempfile.new("foobar." << format)
|
|
129
|
+
tmp_file.puts file_body
|
|
130
|
+
tmp_file.close
|
|
131
|
+
File.exist?(tmp_file.path).should be_true
|
|
132
|
+
File.stat(tmp_file.path).zero?.should be_false
|
|
133
|
+
File.delete(tmp_file.path).should eql(1)
|
|
134
|
+
File.exist?(tmp_file.path).should be_false
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
it "Gerar boleto nos formatos válidos" do
|
|
139
|
+
@valid_attributes[:valor] = 2952.95
|
|
140
|
+
@valid_attributes[:data_documento] = Date.parse("2009-04-30")
|
|
141
|
+
@valid_attributes[:dias_vencimento] = 0
|
|
142
|
+
@valid_attributes[:numero_documento] = "86452"
|
|
143
|
+
@valid_attributes[:conta_corrente] = "03005"
|
|
144
|
+
@valid_attributes[:agencia] = "1172"
|
|
145
|
+
boleto_novo = Brcobranca::Boleto::Sicredi.new(@valid_attributes)
|
|
146
|
+
|
|
147
|
+
%w| pdf jpg tif png ps |.each do |format|
|
|
148
|
+
file_body=boleto_novo.to(format)
|
|
149
|
+
tmp_file=Tempfile.new("foobar." << format)
|
|
150
|
+
tmp_file.puts file_body
|
|
151
|
+
tmp_file.close
|
|
152
|
+
File.exist?(tmp_file.path).should be_true
|
|
153
|
+
File.stat(tmp_file.path).zero?.should be_false
|
|
154
|
+
File.delete(tmp_file.path).should eql(1)
|
|
155
|
+
File.exist?(tmp_file.path).should be_false
|
|
156
|
+
end
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
end
|
|
160
|
+
|
|
@@ -31,17 +31,17 @@ describe Brcobranca::Retorno::RetornoCbr643 do
|
|
|
31
31
|
pagamentos.first.nosso_numero.should eql("16224200000000003")
|
|
32
32
|
end
|
|
33
33
|
|
|
34
|
-
it "Transforma arquivo de retorno em objetos de retorno excluindo a primeira linha com a opção :except e :length" do
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
end
|
|
34
|
+
# it "Transforma arquivo de retorno em objetos de retorno excluindo a primeira linha com a opção :except e :length" do
|
|
35
|
+
# pagamentos = Brcobranca::Retorno::RetornoCbr643.load_lines(@arquivo,{:except => [1], :length => 400})
|
|
36
|
+
# pagamentos.first.sequencial.should eql("000002")
|
|
37
|
+
# pagamentos.first.agencia_com_dv.should eql("33251")
|
|
38
|
+
# pagamentos.first.cedente_com_dv.should eql("000289353")
|
|
39
|
+
# pagamentos.first.convenio.should eql("1622420")
|
|
40
|
+
# pagamentos.first.data_liquidacao.should eql("200109")
|
|
41
|
+
# pagamentos.first.data_credito.should eql("220109")
|
|
42
|
+
# pagamentos.first.valor_recebido.should eql("0000000009064")
|
|
43
|
+
# pagamentos.first.nosso_numero.should eql("16224200000000003")
|
|
44
|
+
# end
|
|
45
45
|
|
|
46
46
|
it "Transforma arquivo de retorno em objetos de retorno excluindo a primeira linha com a opção :except em regex" do
|
|
47
47
|
pagamentos = Brcobranca::Retorno::RetornoCbr643.load_lines(@arquivo,{:except => /^[^7]/})
|
|
@@ -55,16 +55,16 @@ describe Brcobranca::Retorno::RetornoCbr643 do
|
|
|
55
55
|
pagamentos.first.nosso_numero.should eql("16224200000000003")
|
|
56
56
|
end
|
|
57
57
|
|
|
58
|
-
it "Transforma arquivo de retorno em objetos de retorno excluindo a primeira linha com a opção :except em regex e :length" do
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
end
|
|
58
|
+
# it "Transforma arquivo de retorno em objetos de retorno excluindo a primeira linha com a opção :except em regex e :length" do
|
|
59
|
+
# pagamentos = Brcobranca::Retorno::RetornoCbr643.load_lines(@arquivo,{:except => /^[^7]/, :length => 400})
|
|
60
|
+
# pagamentos.first.sequencial.should eql("000002")
|
|
61
|
+
# pagamentos.first.agencia_com_dv.should eql("33251")
|
|
62
|
+
# pagamentos.first.cedente_com_dv.should eql("000289353")
|
|
63
|
+
# pagamentos.first.convenio.should eql("1622420")
|
|
64
|
+
# pagamentos.first.data_liquidacao.should eql("200109")
|
|
65
|
+
# pagamentos.first.data_credito.should eql("220109")
|
|
66
|
+
# pagamentos.first.valor_recebido.should eql("0000000009064")
|
|
67
|
+
# pagamentos.first.nosso_numero.should eql("16224200000000003")
|
|
68
|
+
# end
|
|
69
69
|
|
|
70
70
|
end
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
|
2
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
|
3
|
+
|
|
4
|
+
describe Brcobranca::Retorno::RetornoCnab240 do
|
|
5
|
+
before(:each) do
|
|
6
|
+
@arquivo = File.join(File.dirname(__FILE__), '..', 'arquivos', 'CNAB240.RET')
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
it 'Transforma arquivo de retorno em objetos de retorno retornando somente as linhas de pagamentos de títulos sem registro' do
|
|
10
|
+
pagamentos = Brcobranca::Retorno::RetornoCnab240.load_lines(@arquivo)
|
|
11
|
+
pagamentos.size.should == 35
|
|
12
|
+
pagamento = pagamentos.first
|
|
13
|
+
pagamento.agencia_com_dv.should eql('012345')
|
|
14
|
+
pagamento.cedente_com_dv.should eql('0000000054321')
|
|
15
|
+
pagamento.nosso_numero.should eql('00020673')
|
|
16
|
+
pagamento.carteira.should eql('7')
|
|
17
|
+
pagamento.data_vencimento.should eql('00000000')
|
|
18
|
+
pagamento.valor_titulo.should eql('000000000034400')
|
|
19
|
+
pagamento.banco_recebedor.should eql('001')
|
|
20
|
+
pagamento.agencia_recebedora_com_dv.should eql('020850')
|
|
21
|
+
pagamento.data_credito.should eql('02012012')
|
|
22
|
+
pagamento.outras_despesas.should eql('000000000000004')
|
|
23
|
+
pagamento.iof_desconto.should eql('000000000000003')
|
|
24
|
+
pagamento.valor_abatimento.should eql('000000000000002')
|
|
25
|
+
pagamento.desconto_concedito.should eql('000000000000001')
|
|
26
|
+
pagamento.valor_recebido.should eql('000000000034400')
|
|
27
|
+
pagamento.juros_mora.should eql('000000000000009')
|
|
28
|
+
pagamento.outros_recebimento.should eql('000000000000005')
|
|
29
|
+
pagamento.sequencial.should eql('00001')
|
|
30
|
+
|
|
31
|
+
# Dados que não consegui extrair dos registros T e U
|
|
32
|
+
#pagamento.convenio.should eql('')
|
|
33
|
+
#pagamento.tipo_cobranca.should eql('')
|
|
34
|
+
#pagamento.tipo_cobranca_anterior.should eql('')
|
|
35
|
+
#pagamento.natureza_recebimento.should eql('')
|
|
36
|
+
#pagamento.carteira_variacao.should eql('7')
|
|
37
|
+
#pagamento.iof.should eql('')
|
|
38
|
+
#pagamento.comando.should eql('')
|
|
39
|
+
#pagamento.data_liquidacao.should eql('')
|
|
40
|
+
#pagamento.especie_documento.should eql('')
|
|
41
|
+
#pagamento.valor_tarifa.should eql('')
|
|
42
|
+
#pagamento.juros_desconto.should eql('')
|
|
43
|
+
#pagamento.abatimento_nao_aproveitado.should eql('')
|
|
44
|
+
#pagamento.valor_lancamento.should eql('')
|
|
45
|
+
#pagamento.indicativo_lancamento.should eql('')
|
|
46
|
+
#pagamento.indicador_valor.should eql('')
|
|
47
|
+
#pagamento.valor_ajuste.should eql('')
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
|
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: brcobranca
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
hash:
|
|
4
|
+
hash: 3
|
|
5
5
|
prerelease:
|
|
6
6
|
segments:
|
|
7
7
|
- 3
|
|
8
|
+
- 1
|
|
8
9
|
- 0
|
|
9
|
-
|
|
10
|
-
version: 3.0.0
|
|
10
|
+
version: 3.1.0
|
|
11
11
|
platform: ruby
|
|
12
12
|
authors:
|
|
13
13
|
- Kivanio Barbosa
|
|
@@ -15,8 +15,7 @@ autorequire:
|
|
|
15
15
|
bindir: bin
|
|
16
16
|
cert_chain: []
|
|
17
17
|
|
|
18
|
-
date:
|
|
19
|
-
default_executable:
|
|
18
|
+
date: 2012-04-20 00:00:00 Z
|
|
20
19
|
dependencies:
|
|
21
20
|
- !ruby/object:Gem::Dependency
|
|
22
21
|
name: rghost
|
|
@@ -24,14 +23,13 @@ dependencies:
|
|
|
24
23
|
requirement: &id001 !ruby/object:Gem::Requirement
|
|
25
24
|
none: false
|
|
26
25
|
requirements:
|
|
27
|
-
- -
|
|
26
|
+
- - ~>
|
|
28
27
|
- !ruby/object:Gem::Version
|
|
29
|
-
hash:
|
|
28
|
+
hash: 27
|
|
30
29
|
segments:
|
|
31
30
|
- 0
|
|
32
31
|
- 8
|
|
33
|
-
|
|
34
|
-
version: 0.8.7
|
|
32
|
+
version: "0.8"
|
|
35
33
|
type: :runtime
|
|
36
34
|
version_requirements: *id001
|
|
37
35
|
- !ruby/object:Gem::Dependency
|
|
@@ -40,13 +38,13 @@ dependencies:
|
|
|
40
38
|
requirement: &id002 !ruby/object:Gem::Requirement
|
|
41
39
|
none: false
|
|
42
40
|
requirements:
|
|
43
|
-
- -
|
|
41
|
+
- - ~>
|
|
44
42
|
- !ruby/object:Gem::Version
|
|
45
|
-
hash:
|
|
43
|
+
hash: 25
|
|
46
44
|
segments:
|
|
47
45
|
- 0
|
|
48
|
-
-
|
|
49
|
-
version: "0.
|
|
46
|
+
- 9
|
|
47
|
+
version: "0.9"
|
|
50
48
|
type: :runtime
|
|
51
49
|
version_requirements: *id002
|
|
52
50
|
- !ruby/object:Gem::Dependency
|
|
@@ -71,14 +69,12 @@ dependencies:
|
|
|
71
69
|
requirement: &id004 !ruby/object:Gem::Requirement
|
|
72
70
|
none: false
|
|
73
71
|
requirements:
|
|
74
|
-
- -
|
|
72
|
+
- - ~>
|
|
75
73
|
- !ruby/object:Gem::Version
|
|
76
|
-
hash:
|
|
74
|
+
hash: 5
|
|
77
75
|
segments:
|
|
78
76
|
- 3
|
|
79
|
-
|
|
80
|
-
- 0
|
|
81
|
-
version: 3.0.0
|
|
77
|
+
version: "3"
|
|
82
78
|
type: :runtime
|
|
83
79
|
version_requirements: *id004
|
|
84
80
|
description: "Gem para emiss\xC3\xA3o de bloquetos de cobran\xC3\xA7a de bancos brasileiros."
|
|
@@ -108,6 +104,7 @@ files:
|
|
|
108
104
|
- lib/brcobranca/arquivos/logos/hsbc.jpg
|
|
109
105
|
- lib/brcobranca/arquivos/logos/itau.jpg
|
|
110
106
|
- lib/brcobranca/arquivos/logos/real.jpg
|
|
107
|
+
- lib/brcobranca/arquivos/logos/sicredi.jpg
|
|
111
108
|
- lib/brcobranca/arquivos/logos/unibanco.jpg
|
|
112
109
|
- lib/brcobranca/arquivos/templates/modelo_generico.eps
|
|
113
110
|
- lib/brcobranca/boleto/banco_brasil.rb
|
|
@@ -117,6 +114,7 @@ files:
|
|
|
117
114
|
- lib/brcobranca/boleto/hsbc.rb
|
|
118
115
|
- lib/brcobranca/boleto/itau.rb
|
|
119
116
|
- lib/brcobranca/boleto/real.rb
|
|
117
|
+
- lib/brcobranca/boleto/sicredi.rb
|
|
120
118
|
- lib/brcobranca/boleto/template/base.rb
|
|
121
119
|
- lib/brcobranca/boleto/template/rghost.rb
|
|
122
120
|
- lib/brcobranca/boleto/unibanco.rb
|
|
@@ -127,13 +125,16 @@ files:
|
|
|
127
125
|
- lib/brcobranca/limpeza.rb
|
|
128
126
|
- lib/brcobranca/retorno/base.rb
|
|
129
127
|
- lib/brcobranca/retorno/retorno_cbr643.rb
|
|
128
|
+
- lib/brcobranca/retorno/retorno_cnab240.rb
|
|
130
129
|
- lib/brcobranca/version.rb
|
|
131
130
|
- spec/arquivos/CBR64310.RET
|
|
131
|
+
- spec/arquivos/CNAB240.RET
|
|
132
132
|
- spec/brcobranca/banco_bradesco_spec.rb
|
|
133
133
|
- spec/brcobranca/banco_brasil_spec.rb
|
|
134
134
|
- spec/brcobranca/banco_caixa_spec.rb
|
|
135
135
|
- spec/brcobranca/banco_hsbc_spec.rb
|
|
136
136
|
- spec/brcobranca/banco_real_spec.rb
|
|
137
|
+
- spec/brcobranca/banco_sicredi_spec.rb
|
|
137
138
|
- spec/brcobranca/banco_unibanco_spec.rb
|
|
138
139
|
- spec/brcobranca/base_spec.rb
|
|
139
140
|
- spec/brcobranca/boletos_em_lote_spec.rb
|
|
@@ -141,10 +142,10 @@ files:
|
|
|
141
142
|
- spec/brcobranca/currency_spec.rb
|
|
142
143
|
- spec/brcobranca/itau_spec.rb
|
|
143
144
|
- spec/brcobranca/retorno_cbr643_spec.rb
|
|
145
|
+
- spec/brcobranca/retorno_cnab_240_spec.rb
|
|
144
146
|
- spec/brcobranca/rghost_spec.rb
|
|
145
147
|
- spec/brcobranca_spec.rb
|
|
146
148
|
- spec/spec_helper.rb
|
|
147
|
-
has_rdoc: true
|
|
148
149
|
homepage: http://rubygems.org/gems/brcobranca
|
|
149
150
|
licenses: []
|
|
150
151
|
|
|
@@ -174,17 +175,19 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
174
175
|
requirements:
|
|
175
176
|
- "GhostScript > 8.0, para gear PDF e c\xC3\xB3digo de Barras"
|
|
176
177
|
rubyforge_project: brcobranca
|
|
177
|
-
rubygems_version: 1.
|
|
178
|
+
rubygems_version: 1.8.11
|
|
178
179
|
signing_key:
|
|
179
180
|
specification_version: 3
|
|
180
181
|
summary: "Gem que permite trabalhar com bloquetos de cobran\xC3\xA7a para bancos brasileiros."
|
|
181
182
|
test_files:
|
|
182
183
|
- spec/arquivos/CBR64310.RET
|
|
184
|
+
- spec/arquivos/CNAB240.RET
|
|
183
185
|
- spec/brcobranca/banco_bradesco_spec.rb
|
|
184
186
|
- spec/brcobranca/banco_brasil_spec.rb
|
|
185
187
|
- spec/brcobranca/banco_caixa_spec.rb
|
|
186
188
|
- spec/brcobranca/banco_hsbc_spec.rb
|
|
187
189
|
- spec/brcobranca/banco_real_spec.rb
|
|
190
|
+
- spec/brcobranca/banco_sicredi_spec.rb
|
|
188
191
|
- spec/brcobranca/banco_unibanco_spec.rb
|
|
189
192
|
- spec/brcobranca/base_spec.rb
|
|
190
193
|
- spec/brcobranca/boletos_em_lote_spec.rb
|
|
@@ -192,6 +195,7 @@ test_files:
|
|
|
192
195
|
- spec/brcobranca/currency_spec.rb
|
|
193
196
|
- spec/brcobranca/itau_spec.rb
|
|
194
197
|
- spec/brcobranca/retorno_cbr643_spec.rb
|
|
198
|
+
- spec/brcobranca/retorno_cnab_240_spec.rb
|
|
195
199
|
- spec/brcobranca/rghost_spec.rb
|
|
196
200
|
- spec/brcobranca_spec.rb
|
|
197
201
|
- spec/spec_helper.rb
|