cnab240_bancoabc 1.1.0 → 1.2.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.
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