cnab240_bancoabc 1.1.0 → 1.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
  SHA256:
3
- metadata.gz: 5f0409fdc5a38967ab550f437467b55c42f37ab6a33a360552d3f7a35aad1f6f
4
- data.tar.gz: b8d07de12a0e04dd3750fe163b91eb19ee6b474ca5211933d4cfa6eb49a01ad9
3
+ metadata.gz: 157371ce6c76a0d2e2393add3ed0ea7fd1b7c2f5d3060995562ddeb1f57c3271
4
+ data.tar.gz: fc0af636114d09670dbbb122d07141429a4fa79fe8218549fe965e789c9765c5
5
5
  SHA512:
6
- metadata.gz: a64ad2ed9050092d0c9dfb7b946292c75234b201ff07ce41f05b044277cdf017b567c7514ad4dbd81a579c04855ce112bd13af094a7be93b38f727470b6287c8
7
- data.tar.gz: dd516db0342b85b4fa41a441ea15caed352a102f77438ac54f0c4d7ab3fe098a5c1697416da6b066884e1d44e15f77ace9c5f9721e45136f48dc8caff68fde72
6
+ metadata.gz: 5d57980f4c4106e277162e22b8e635184c846c591517de7b4b9c46e679b829ea072aa50db7564580791a733137f6304cfa7155727b3665071ffaef5fd8d7a721
7
+ data.tar.gz: 5f87e71098c666db9a5ae5b431eb6e388d9ed2d1b4c14b26bf2c25147a01387a68687b6449417acae65e7771b1a960409c943abb3ac04320f17e402764d52cda
data/CHANGELOG.md CHANGED
@@ -1,17 +1,38 @@
1
- # CHANGELOG
1
+ # Changelog
2
2
 
3
- ## v1.1.0-20220202 - Danilo Carolino
3
+ All notable Changed to this project will be documented in this file.
4
4
 
5
- * [QC-79](https://qflash.atlassian.net/jira/software/projects/QC/boards/31?selectedIssue=QC-79)
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ## [1.2.0] - 2022-06-23
11
+
12
+ ### Added
13
+
14
+ - Testing workflow
15
+ - Release automatization by workflows
16
+ - Implements SEMVER changelog pattern
17
+
18
+ ### Changed
19
+
20
+ - [QC-278](https://qflash.atlassian.net/browse/QC-278) Dinamiza os parâmetros para montar as entidades #19
21
+
22
+ ## [1.1.0] - 2022-02-02
23
+
24
+ ### Changed
25
+
26
+ - [QC-79](https://qflash.atlassian.net/browse/QC-79)
6
27
  Reduzir uso de pipelines em projetos Ruby [Dependabot]
7
- * Bump Ruby version to v3.1.0
28
+ - Bump Ruby version to v3.1.0
8
29
 
9
- ## v1.0.0
30
+ ## [1.0.0] - 2021-12-08
10
31
 
11
- Features
32
+ ### Added
12
33
 
13
- * Criar débito de Tarifa para custas de Cartório [PL #11](https://github.com/Quasar-Flash/cnab240_bancoabc/pull/11) [QCedente 1324](https://gitlab.com/quasar_flash/flash/-/issues/1324)
34
+ - Criar débito de Tarifa para custas de Cartório #11
14
35
 
15
- ## v0.1.0
36
+ ## [0.1.0] - 2021-05-11
16
37
 
17
- * Initial files
38
+ - Initial files
@@ -17,6 +17,7 @@ module CNAB240
17
17
  end
18
18
 
19
19
  private
20
+
20
21
  def white_space(range)
21
22
  "".center(range.to_i)
22
23
  end
@@ -24,9 +25,10 @@ module CNAB240
24
25
  def prepend_zero(data, range)
25
26
  return white_space(range) if data.nil?
26
27
 
27
- data = data.to_s
28
+ data = data.to_s.strip
28
29
 
29
30
  return data if data.length == range
31
+ return data[0..range - 1] if data.length > range
30
32
 
31
33
  zeros_size = range - data.length
32
34
  (1..zeros_size).each { data.prepend("0") }
@@ -37,7 +39,7 @@ module CNAB240
37
39
  def append_space(data, range)
38
40
  return white_space(range) if data.nil?
39
41
 
40
- data = data.to_s
42
+ data = data.to_s.strip
41
43
 
42
44
  return data if data.length == range
43
45
  return data[0..range - 1] if data.length > range
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
-
4
3
  module CNAB240
5
4
  module BancoABC
6
5
  module Entities
@@ -8,48 +8,48 @@ module CNAB240
8
8
  true
9
9
  end
10
10
 
11
- def codigo_do_banco
12
- "246"
11
+ def codigo_do_banco(data)
12
+ prepend_zero(data, 3)
13
13
  end
14
14
 
15
- def lote_servico
16
- "0" * 4
15
+ def lote_servico(data)
16
+ prepend_zero(data, 4)
17
17
  end
18
18
 
19
- def tipo_servico
20
- "0"
19
+ def tipo_servico(data)
20
+ prepend_zero(data, 1)
21
21
  end
22
22
 
23
23
  def uso_exclusivo_febraban_1(data = nil)
24
24
  append_space(data, 9)
25
25
  end
26
26
 
27
- def tipo_inscricao_da_empresa
28
- "2"
27
+ def tipo_inscricao_da_empresa(data)
28
+ prepend_zero(data, 1)
29
29
  end
30
30
 
31
- def numero_inscricao_da_empresa
32
- "34218965000177"
31
+ def numero_inscricao_da_empresa(data)
32
+ prepend_zero(data, 14)
33
33
  end
34
34
 
35
- def codigo_identificacao_empresa_banco
36
- "00019070022307900000"
35
+ def codigo_identificacao_empresa_banco(data)
36
+ prepend_zero(data, 20)
37
37
  end
38
38
 
39
- def nome_empresa
40
- "QUASAR FLASH FI EM DIREITOS CM"
39
+ def nome_empresa(data)
40
+ append_space(data, 30)
41
41
  end
42
42
 
43
- def nome_banco
44
- "BCO ABC BRASIL#{' ' * 16}"
43
+ def nome_banco(data)
44
+ append_space(data, 30)
45
45
  end
46
46
 
47
47
  def uso_exclusivo_febraban_2(data = nil)
48
48
  append_space(data, 10)
49
49
  end
50
50
 
51
- def codigo_retorno
52
- "1"
51
+ def codigo_retorno(data)
52
+ prepend_zero(data, 1)
53
53
  end
54
54
 
55
55
  def data_geracao(date_time)
@@ -66,12 +66,12 @@ module CNAB240
66
66
  prepend_zero(date, 6)
67
67
  end
68
68
 
69
- def numero_versao_layout
70
- "040"
69
+ def numero_versao_layout(data)
70
+ prepend_zero(data, 3)
71
71
  end
72
72
 
73
- def desidade_gravacao_arquivo
74
- "01600"
73
+ def desidade_gravacao_arquivo(data)
74
+ prepend_zero(data, 5)
75
75
  end
76
76
 
77
77
  def uso_reservado_banco(data = nil)
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
-
4
3
  module CNAB240
5
4
  module BancoABC
6
5
  module Entities
@@ -9,52 +8,52 @@ module CNAB240
9
8
  true
10
9
  end
11
10
 
12
- def codigo_do_banco
13
- "246"
11
+ def codigo_do_banco(data = "246")
12
+ prepend_zero(data, 3)
14
13
  end
15
14
 
16
- def lote_servico
17
- "#{'0' * 3}1"
15
+ def lote_servico(data)
16
+ prepend_zero(data, 4)
18
17
  end
19
18
 
20
- def tipo_registro
21
- "1"
19
+ def tipo_registro(data = "1")
20
+ prepend_zero(data, 1)
22
21
  end
23
22
 
24
- def tipo_operacao
25
- "R"
23
+ def tipo_operacao(data)
24
+ prepend_zero(data, 1)
26
25
  end
27
26
 
28
- def tipo_servico
29
- "01"
27
+ def tipo_servico(data)
28
+ prepend_zero(data, 2)
30
29
  end
31
30
 
32
31
  def uso_exclusivo_cnab_1(data = nil)
33
32
  append_space(data, 2)
34
33
  end
35
34
 
36
- def numero_versao_layout
37
- "030"
35
+ def numero_versao_layout(data)
36
+ prepend_zero(data, 3)
38
37
  end
39
38
 
40
39
  def uso_exclusivo_cnab_2(data = nil)
41
40
  append_space(data, 1)
42
41
  end
43
42
 
44
- def tipo_inscricao_empresa
45
- "2"
43
+ def tipo_inscricao_empresa(data)
44
+ append_space(data, 1)
46
45
  end
47
46
 
48
- def numero_inscricao_empresa
49
- "034218965000177"
47
+ def numero_inscricao_empresa(data)
48
+ prepend_zero(data, 15)
50
49
  end
51
50
 
52
- def codigo_identificacao_empresa_banco
53
- "00019070022307900000"
51
+ def codigo_identificacao_empresa_banco(data)
52
+ prepend_zero(data, 20)
54
53
  end
55
54
 
56
- def nome_empresa
57
- "QUASAR FLASH FI EM DIREITOS CM"
55
+ def nome_empresa(data)
56
+ prepend_zero(data, 30)
58
57
  end
59
58
 
60
59
  def mensagem(data = nil)
@@ -71,8 +70,8 @@ module CNAB240
71
70
  date_time.strftime("%d%m%Y")
72
71
  end
73
72
 
74
- def data_credito
75
- "0" * 8
73
+ def data_credito(data = nil)
74
+ prepend_zero(data, 8)
76
75
  end
77
76
 
78
77
  def uso_exclusivo(data = nil)
@@ -36,16 +36,16 @@ module CNAB240
36
36
  append_space(data, 2)
37
37
  end
38
38
 
39
- def identificacao_empresa
40
- "00019070022307900000"
39
+ def identificacao_empresa(data)
40
+ prepend_zero(data, 20)
41
41
  end
42
42
 
43
43
  def direcionamento_cobranca(data = nil)
44
44
  append_space(data, 1)
45
45
  end
46
46
 
47
- def modalidade_cobranca
48
- "0" * 3
47
+ def modalidade_cobranca(data = "0")
48
+ prepend_zero(data, 3)
49
49
  end
50
50
 
51
51
  def uso_exclusivo_abc(data = nil)
@@ -104,8 +104,8 @@ module CNAB240
104
104
  append_space(data, 2)
105
105
  end
106
106
 
107
- def aceite
108
- "N"
107
+ def aceite(data)
108
+ append_space(data[0], 1)
109
109
  end
110
110
 
111
111
  def data_emissao(data = nil)
@@ -158,12 +158,12 @@ module CNAB240
158
158
  prepend_zero(data, 2)
159
159
  end
160
160
 
161
- def codigo_baixa_devolucao
162
- "2"
161
+ def codigo_baixa_devolucao(data)
162
+ prepend_zero(data, 1)
163
163
  end
164
164
 
165
- def prazo_baixa_devolucao
166
- "0" * 3
165
+ def prazo_baixa_devolucao(data = "0")
166
+ prepend_zero(data, 3)
167
167
  end
168
168
 
169
169
  def codigo_moeda(data = nil)
@@ -84,8 +84,8 @@ module CNAB240
84
84
  append_space(data, 40)
85
85
  end
86
86
 
87
- def banco_correspondente
88
- "0" * 3
87
+ def banco_correspondente(data = "0")
88
+ prepend_zero(data, 3)
89
89
  end
90
90
 
91
91
  def nosso_numero_banco(data = nil)
@@ -8,16 +8,16 @@ module CNAB240
8
8
  true
9
9
  end
10
10
 
11
- def banco
12
- "246"
11
+ def banco(data = "246")
12
+ prepend_zero(data, 3)
13
13
  end
14
14
 
15
- def lote
16
- prepend_zero("0001", 3)
15
+ def lote(data)
16
+ prepend_zero(data, 4)
17
17
  end
18
18
 
19
- def registro
20
- "3"
19
+ def registro(data)
20
+ prepend_zero(data, 1)
21
21
  end
22
22
 
23
23
  def numero_registro(data = nil)
@@ -40,8 +40,8 @@ module CNAB240
40
40
  prepend_zero(data, 2)
41
41
  end
42
42
 
43
- def tipo_impressao
44
- "3"
43
+ def tipo_impressao(data)
44
+ prepend_zero(data, 1)
45
45
  end
46
46
 
47
47
  def mensagem1(data = nil)
@@ -43,10 +43,6 @@ module CNAB240
43
43
  action.keys.last.to_s
44
44
  end
45
45
 
46
- def operacao
47
- Operacao.find_by(id_bancario: uso_empresa.strip)
48
- end
49
-
50
46
  def segmento
51
47
  line[13]
52
48
  end
@@ -8,28 +8,28 @@ module CNAB240
8
8
  true
9
9
  end
10
10
 
11
- def codigo_banco
12
- "246"
11
+ def codigo_banco(data = "246")
12
+ prepend_zero(data, 3)
13
13
  end
14
14
 
15
- def lote_do_servico
16
- "9" * 4
15
+ def lote_do_servico(data)
16
+ prepend_zero(data, 4)
17
17
  end
18
18
 
19
- def tipo_registro
20
- "9"
19
+ def tipo_registro(data)
20
+ prepend_zero(data, 1)
21
21
  end
22
22
 
23
- def quantidade_lotes
24
- "#{'0' * 5}1"
23
+ def quantidade_lotes(data = "1")
24
+ prepend_zero(data, 6)
25
25
  end
26
26
 
27
27
  def quantidade_registros(data = nil)
28
28
  prepend_zero(data, 6)
29
29
  end
30
30
 
31
- def quantidade_contas_para_conciliacao
32
- "0" * 6
31
+ def quantidade_contas_para_conciliacao(data = "0")
32
+ prepend_zero(data, 6)
33
33
  end
34
34
 
35
35
  def uso_exclusivo_febraban_1(data = nil)
@@ -8,16 +8,16 @@ module CNAB240
8
8
  true
9
9
  end
10
10
 
11
- def codigo_banco
12
- "246"
11
+ def codigo_banco(data = "246")
12
+ prepend_zero(data, 3)
13
13
  end
14
14
 
15
- def lote_do_servico
16
- "#{'0' * 3}1"
15
+ def lote_do_servico(data = "1")
16
+ prepend_zero(data, 4)
17
17
  end
18
18
 
19
- def tipo_registro
20
- "5"
19
+ def tipo_registro(data)
20
+ prepend_zero(data, 1)
21
21
  end
22
22
 
23
23
  def uso_exclusivo_febraban(data = nil)
@@ -28,12 +28,12 @@ module CNAB240
28
28
  prepend_zero(data, 6)
29
29
  end
30
30
 
31
- def quantidade_titulos_cobranca
32
- "0" * 6
31
+ def quantidade_titulos_cobranca(data = "0")
32
+ prepend_zero(data, 6)
33
33
  end
34
34
 
35
- def valor_total_titulos_carteira
36
- "0" * 17
35
+ def valor_total_titulos_carteira(data = "0")
36
+ prepend_zero(data, 17)
37
37
  end
38
38
 
39
39
  def uso_abc(data = nil)
@@ -1,68 +1,70 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module CNAB240::BancoABC
4
- OCORRENCIAS = {
5
- confirma_entrada_cip: "01",
6
- entrada_confirmada: "02",
7
- entrada_rejeitada: "03",
8
- transferencia_de_carteira_entrada: "04",
9
- transferencia_de_carteira_baixa: "05",
10
- liquidacao: "06",
11
- confirmacao_do_recebimento_instrucao_desconto: "07",
12
- confirmacao_do_recebimento_cancelamento_desconto: "08",
13
- baixa: "09",
14
- titulo_em_carteira: "11",
15
- confirma_abatimento: "12",
16
- confirma_abatimento_cancelado: "13",
17
- vencimento_alterado: "14",
18
- franco_de_pagamento: "15",
19
- liquidacao_sem_registro: "17",
20
- protesto: "19",
21
- sustacao: "20",
22
- remessa_a_cartorio: "23",
23
- retirada_cartorio_e_manutencao_em_carteira: "24",
24
- baixado_protesto: "25",
25
- instrucao_rejeitada: "26",
26
- confirmacao_pedido_alteracao_outros_dados: "27",
27
- debito_de_tarifas_custas_correspondentes: "28",
28
- ocorrencia_pagador: "29",
29
- alteracao_dados_rejeitada: "30",
30
- confirmacao_alteracao_dados_rateio_credito: "33",
31
- confirmacao_cancelamento_dados_rateio_credito: "34",
32
- confirmacao_desagendamento_debito_automatico: "35",
33
- comfirmacao_de_envio_email_sms: "36",
34
- envio_de_email_rejeitado: "37",
35
- confirmacao_alteracao_prazo_limite_recebimento: "38",
36
- confirmacao_dispensa_prazo_limite_recebimento: "39",
37
- confirmacao_alteracao_numero_titulo_beneficiario: "40",
38
- confirmacao_alteracao_numero_controle_participante: "41",
39
- confirmacao_alteracao_dados_pagador: "42",
40
- confirmacao_alteracao_dados_sacador_avalista: "43",
41
- titulo_pago_cheque_devolvido: "44",
42
- titulo_pago_cheque_compensado: "45",
43
- instrucao_protesto_confirmada: "46",
44
- instrucao_protesto_fins_falimentares_confirmada: "47",
45
- confirmacao_instrucao_transferencia_carteira_modalidade_cobranca: "48",
46
- alteracao_contrato_cobranca: "49",
47
- titulo_pago_chegue_pendente_liquidacao: "50",
48
- titulo_dda_reconhecido: "51",
49
- titulo_dda_nao_reconhecido: "52",
50
- titulo_dda_recusado_cip: "53",
51
- confirmacao_instrucao_baixa_titulo_negativado_sem_protesto: "54",
52
- confirmacao_pedido_dispensa_multa: "55",
53
- confirmacao_pedido_cobranca_multa: "56",
54
- confirmacao_pedido_alteracao_cobranca_juros: "57",
55
- confirmacao_pedido_alteracao_valor_data_desconto: "58",
56
- confirmacao_pedido_alteracao_beneficiario_titulo: "59",
57
- confirmacao_pedido_dispensa_juros_mora: "60",
58
- confirmacao_alteracao_valor_nominal_titulo: "61",
59
- titulo_sustado_judicialmente: "63",
60
- confirmacao_alteracao_valor_minimo_percentual: "64",
61
- confirmacao_instrucao_sustar_alterar_vencimento: "94",
62
- confirmacao_alteracao_campo_livre: "95",
63
- confirmacao_alteracao_seu_numero: "96",
64
- confirmacao_agendamento_devolucao: "97",
65
- confirmacao_alteracao_mora: "98",
66
- confirmacao_alteracao_multa: "99"
67
- }.freeze
3
+ module CNAB240
4
+ module BancoABC
5
+ OCORRENCIAS = {
6
+ confirma_entrada_cip: "01",
7
+ entrada_confirmada: "02",
8
+ entrada_rejeitada: "03",
9
+ transferencia_de_carteira_entrada: "04",
10
+ transferencia_de_carteira_baixa: "05",
11
+ liquidacao: "06",
12
+ confirmacao_do_recebimento_instrucao_desconto: "07",
13
+ confirmacao_do_recebimento_cancelamento_desconto: "08",
14
+ baixa: "09",
15
+ titulo_em_carteira: "11",
16
+ confirma_abatimento: "12",
17
+ confirma_abatimento_cancelado: "13",
18
+ vencimento_alterado: "14",
19
+ franco_de_pagamento: "15",
20
+ liquidacao_sem_registro: "17",
21
+ protesto: "19",
22
+ sustacao: "20",
23
+ remessa_a_cartorio: "23",
24
+ retirada_cartorio_e_manutencao_em_carteira: "24",
25
+ baixado_protesto: "25",
26
+ instrucao_rejeitada: "26",
27
+ confirmacao_pedido_alteracao_outros_dados: "27",
28
+ debito_de_tarifas_custas_correspondentes: "28",
29
+ ocorrencia_pagador: "29",
30
+ alteracao_dados_rejeitada: "30",
31
+ confirmacao_alteracao_dados_rateio_credito: "33",
32
+ confirmacao_cancelamento_dados_rateio_credito: "34",
33
+ confirmacao_desagendamento_debito_automatico: "35",
34
+ comfirmacao_de_envio_email_sms: "36",
35
+ envio_de_email_rejeitado: "37",
36
+ confirmacao_alteracao_prazo_limite_recebimento: "38",
37
+ confirmacao_dispensa_prazo_limite_recebimento: "39",
38
+ confirmacao_alteracao_numero_titulo_beneficiario: "40",
39
+ confirmacao_alteracao_numero_controle_participante: "41",
40
+ confirmacao_alteracao_dados_pagador: "42",
41
+ confirmacao_alteracao_dados_sacador_avalista: "43",
42
+ titulo_pago_cheque_devolvido: "44",
43
+ titulo_pago_cheque_compensado: "45",
44
+ instrucao_protesto_confirmada: "46",
45
+ instrucao_protesto_fins_falimentares_confirmada: "47",
46
+ confirmacao_instrucao_transferencia_carteira_modalidade_cobranca: "48",
47
+ alteracao_contrato_cobranca: "49",
48
+ titulo_pago_chegue_pendente_liquidacao: "50",
49
+ titulo_dda_reconhecido: "51",
50
+ titulo_dda_nao_reconhecido: "52",
51
+ titulo_dda_recusado_cip: "53",
52
+ confirmacao_instrucao_baixa_titulo_negativado_sem_protesto: "54",
53
+ confirmacao_pedido_dispensa_multa: "55",
54
+ confirmacao_pedido_cobranca_multa: "56",
55
+ confirmacao_pedido_alteracao_cobranca_juros: "57",
56
+ confirmacao_pedido_alteracao_valor_data_desconto: "58",
57
+ confirmacao_pedido_alteracao_beneficiario_titulo: "59",
58
+ confirmacao_pedido_dispensa_juros_mora: "60",
59
+ confirmacao_alteracao_valor_nominal_titulo: "61",
60
+ titulo_sustado_judicialmente: "63",
61
+ confirmacao_alteracao_valor_minimo_percentual: "64",
62
+ confirmacao_instrucao_sustar_alterar_vencimento: "94",
63
+ confirmacao_alteracao_campo_livre: "95",
64
+ confirmacao_alteracao_seu_numero: "96",
65
+ confirmacao_agendamento_devolucao: "97",
66
+ confirmacao_alteracao_mora: "98",
67
+ confirmacao_alteracao_multa: "99"
68
+ }.freeze
69
+ end
68
70
  end
@@ -9,6 +9,6 @@ module CNAB240
9
9
  # Major - Incremented for incompatible changes with previous release (or big enough new features)
10
10
  # Minor - Incremented for new backwards-compatible features + deprecations
11
11
  # Patch - Incremented for backwards-compatible bug fixes
12
- VERSION = "1.1.0"
12
+ VERSION = "1.2.0"
13
13
  end
14
14
  end