brcobranca 7.1.0 → 7.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 39e359e56b5b12e648aac35142a77e7b16f7cb6b
4
- data.tar.gz: 2334560e39401bf569772f5f97428cfdd2f2d80f
3
+ metadata.gz: 58be6724fb57e2b1a01e56b561717059784dc3c2
4
+ data.tar.gz: 23f8fa41ffdbc3742dee2f966b112bb22fd6f931
5
5
  SHA512:
6
- metadata.gz: 5fa1b53106f9cfb0e4255d996c14471fee08067cd8b4cb8fe415fb961ac623228ef969aaa9a7cf3c6ef0d381427d4d842b62c85c146e6649b16f9e79e827aa9a
7
- data.tar.gz: ed61a2e6fd21427009fae65ad31842dfa0fc6957082ee2af9184e540bafd1062bb1c299af49db8d59690e3f56d0a3098b41c469915e55ba6d18dce2f75ddf533
6
+ metadata.gz: 3fac5f883485ae31be8299bdd5e61e584052afbaefdd7ad42efe9c8f7c19ffdffd48b7d2825a4000d3e85f94957514611b59e9395586d3855639ea7a07f64dd1
7
+ data.tar.gz: 8d610cc108dd10cc139670f96c72963598564b03c7876ab7c5fd3b5a8e2def5835a1dd7301ae526e2e5d329686b159c99f20f3c754e1301705d61ed2a8d70cfa
@@ -3,8 +3,12 @@
3
3
  module Brcobranca
4
4
  module Boleto
5
5
  class BancoNordeste < Base # Banco do Nordeste
6
+ # <b>REQUERIDO</b>: digito verificador da conta corrente
7
+ attr_accessor :digito_conta_corrente
8
+
6
9
  validates_length_of :agencia, maximum: 4, message: 'deve ser menor ou igual a 4 dígitos.'
7
- validates_length_of :convenio, maximum: 7, message: 'deve ser menor ou igual a 7 dígitos.'
10
+ validates_length_of :conta_corrente, maximum: 7, message: 'deve ser menor ou igual a 7 dígitos.'
11
+ validates_length_of :digito_conta_corrente, is: 1, message: 'deve ser igual a 1 dígitos.'
8
12
  validates_length_of :carteira, maximum: 2, message: 'deve ser menor ou igual a 2 dígitos.'
9
13
  validates_length_of :numero_documento, maximum: 7, message: 'deve ser menor ou igual a 7 dígitos.'
10
14
 
@@ -28,14 +32,8 @@ module Brcobranca
28
32
  @conta_corrente = valor.to_s.rjust(7, '0') if valor
29
33
  end
30
34
 
31
- # Número do convênio/contrato do cliente junto ao banco.
32
- # @return [String] 7 caracteres numéricos.
33
- def convenio=(valor)
34
- @convenio = valor.to_s.rjust(7, '0') if valor
35
- end
36
-
37
35
  # Número sequencial utilizado para identificar o boleto.
38
- # @return [String] 8 caracteres numéricos.
36
+ # @return [String] 7 caracteres numéricos.
39
37
  def numero_documento=(valor)
40
38
  @numero_documento = valor.to_s.rjust(7, '0') if valor
41
39
  end
@@ -64,29 +62,19 @@ module Brcobranca
64
62
  # @example
65
63
  # boleto.agencia_conta_boleto #=> "0059/1899775"
66
64
  def agencia_conta_boleto
67
- "#{agencia}/#{convenio_com_dv}"
68
- end
69
-
70
- # Dígito verificador da convênio
71
- # @return [Integer] 1 caracteres numéricos.
72
- def convenio_dv
73
- convenio.modulo11
74
- end
75
-
76
- def convenio_com_dv
77
- "#{convenio}-#{convenio_dv}"
65
+ "#{agencia}/#{conta_corrente}#{digito_conta_corrente}"
78
66
  end
79
67
 
80
68
  # Segunda parte do código de barras.
81
69
  # 9(04) | Agência <br/>
82
- # 9(08) | Convenio com DV <br/>
70
+ # 9(08) | Conta corrente com DV <br/>
83
71
  # 9(08) | Nosso Numero Com DV<br/>
84
72
  # 9(02) | Carteira<br/>
85
73
  # 9(03) | Zeros<br/>
86
74
  #
87
75
  # @return [String] 25 caracteres numéricos.
88
76
  def codigo_barras_segunda_parte
89
- "#{agencia}#{convenio}#{convenio_dv}#{numero_documento}#{nosso_numero_dv}#{carteira}000"
77
+ "#{agencia}#{conta_corrente}#{digito_conta_corrente}#{numero_documento}#{nosso_numero_dv}#{carteira}000"
90
78
  end
91
79
  end
92
80
  end
@@ -2,5 +2,5 @@
2
2
  #
3
3
 
4
4
  module Brcobranca
5
- VERSION = '7.1.0'
5
+ VERSION = '7.2.0'
6
6
  end
@@ -14,7 +14,7 @@ RSpec.describe Brcobranca::Boleto::BancoNordeste do #:nodoc:[all]
14
14
  sacado_documento: '12345678900',
15
15
  agencia: '0016',
16
16
  conta_corrente: '0001193',
17
- convenio: '0001193',
17
+ digito_conta_corrente: '2',
18
18
  numero_documento: '0000053'
19
19
  }
20
20
  end
@@ -53,7 +53,6 @@ RSpec.describe Brcobranca::Boleto::BancoNordeste do #:nodoc:[all]
53
53
  expect(boleto_novo.sacado).to eql('Claudio Pozzebom')
54
54
  expect(boleto_novo.sacado_documento).to eql('12345678900')
55
55
  expect(boleto_novo.agencia).to eql('0016')
56
- expect(boleto_novo.convenio).to eql('0001193')
57
56
  expect(boleto_novo.numero_documento).to eql('0000053')
58
57
  expect(boleto_novo.carteira).to eql('21')
59
58
  end
@@ -73,15 +72,41 @@ RSpec.describe Brcobranca::Boleto::BancoNordeste do #:nodoc:[all]
73
72
  expect(boleto_novo.codigo_barras_segunda_parte).to eql('0016000119320002720021000')
74
73
  expect(boleto_novo.codigo_barras).to eql('00497545000000054000016000119320002720021000')
75
74
  expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00490.01605 00119.320000 27200.210006 7 54500000005400')
75
+
76
+ @valid_attributes[:agencia] = '0259'
77
+ @valid_attributes[:conta_corrente] = '0008549'
78
+ @valid_attributes[:digito_conta_corrente] = '3'
79
+ @valid_attributes[:valor] = 1.01
80
+ @valid_attributes[:numero_documento] = '0000001'
81
+ @valid_attributes[:data_vencimento] = Date.parse('2017/01/17')
82
+ boleto_novo = described_class.new(@valid_attributes)
83
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('0259000854930000001921000')
84
+ expect(boleto_novo.codigo_barras).to eql('00492704200000001010259000854930000001921000')
85
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00490.25901 00854.930005 00019.210004 2 70420000000101')
86
+
87
+ @valid_attributes[:agencia] = '0275'
88
+ @valid_attributes[:conta_corrente] = '0000253'
89
+ @valid_attributes[:digito_conta_corrente] = '5'
90
+ @valid_attributes[:valor] = 2807.75
91
+ @valid_attributes[:numero_documento] = '0000005'
92
+ @valid_attributes[:data_vencimento] = Date.parse('2016/07/28')
93
+ boleto_novo = described_class.new(@valid_attributes)
94
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('0275000025350000005121000')
95
+ expect(boleto_novo.codigo_barras).to eql('00491686900002807750275000025350000005121000')
96
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00490.27501 00025.350000 00051.210003 1 68690000280775')
76
97
  end
77
98
 
78
99
  it 'Não permitir gerar boleto com atributos inválido' do
79
100
  boleto_novo = described_class.new
80
101
  expect { boleto_novo.codigo_barras }.to raise_error(Brcobranca::BoletoInvalido)
81
- expect(boleto_novo.errors.count).to be(5)
102
+ expect(boleto_novo.errors.count).to be(6)
82
103
  end
83
104
 
84
105
  it 'Montar nosso_numero_dv' do
106
+ @valid_attributes[:numero_documento] = '9061138'
107
+ boleto_novo = described_class.new(@valid_attributes)
108
+ expect(boleto_novo.nosso_numero_dv).to be(1)
109
+
85
110
  @valid_attributes[:numero_documento] = '0000010'
86
111
  boleto_novo = described_class.new(@valid_attributes)
87
112
  expect(boleto_novo.nosso_numero_dv).to be(8)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: brcobranca
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.1.0
4
+ version: 7.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kivanio Barbosa
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-01-12 00:00:00.000000000 Z
11
+ date: 2017-01-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rghost