teodoro 0.0.7 → 0.0.12

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.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/bin/teodoro +1 -1
  3. data/lib/teodoro.rb +68 -1
  4. data/lib/teodoro/arquivo_de_evento.rb +15 -27
  5. data/lib/teodoro/arquivo_de_evento_de_tabela.rb +1 -11
  6. data/lib/teodoro/arquivo_de_evento_exceto_de_exclusao.rb +25 -0
  7. data/lib/teodoro/arquivo_de_evento_nao_periodico.rb +10 -15
  8. data/lib/teodoro/arquivo_de_origem.rb +1 -1
  9. data/lib/teodoro/arquivo_xml.rb +71 -55
  10. data/lib/teodoro/console.rb +2 -6
  11. data/lib/teodoro/empresa.rb +48 -15
  12. data/lib/teodoro/leiaute.rb +24 -0
  13. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s1000.rb +1 -1
  14. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s1005.rb +1 -1
  15. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s1010.rb +7 -3
  16. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s1020.rb +1 -1
  17. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s1030.rb +1 -1
  18. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s1040.rb +1 -1
  19. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s1050.rb +1 -1
  20. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s1070.rb +1 -1
  21. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s2190.rb +1 -1
  22. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s2200.rb +46 -9
  23. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s2205.rb +2 -2
  24. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s2206.rb +1 -1
  25. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s2230.rb +1 -1
  26. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s2250.rb +2 -2
  27. data/lib/teodoro/leiaute/arquivo_s2299.rb +310 -0
  28. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s2300.rb +20 -2
  29. data/lib/teodoro/{leiaute_2_4_1 → leiaute}/arquivo_s2306.rb +1 -1
  30. data/lib/teodoro/leiaute/arquivo_s2399.rb +303 -0
  31. data/lib/teodoro/leiaute/arquivo_s3000.rb +41 -0
  32. data/lib/teodoro/obj.rb +5 -0
  33. metadata +24 -20
  34. data/lib/teodoro/execucao.rb +0 -73
  35. data/lib/teodoro/leiaute_2_4_1.rb +0 -21
@@ -1,73 +0,0 @@
1
- require_relative 'console'
2
- require_relative 'empresa'
3
-
4
- module Teodoro
5
- class Execucao
6
- NOME_DO_PROGRAMA = 'teodoro'.freeze
7
-
8
- private
9
-
10
- def initialize(args)
11
- @args = args
12
- end
13
-
14
- attr_reader :args
15
-
16
- public
17
-
18
- def call
19
- executar
20
- rescue StandardError => e
21
- Console.print e.message, *e.backtrace, color: :red
22
- exit
23
- end
24
-
25
- private
26
-
27
- def executar
28
- validar_argumentos
29
- validar_existencia_do_diretorio_de_origem
30
- validar_que_diretorio_de_origem_nao_esta_vazio
31
- validar_que_diretorio_de_destino_esta_vazio
32
-
33
- processar_empresas
34
- end
35
-
36
- def validar_argumentos
37
- erro "#{NOME_DO_PROGRAMA} [diretório de origem] [diretório de destino]" unless args.size == 2
38
- end
39
-
40
- def validar_existencia_do_diretorio_de_origem
41
- erro 'Diretório de origem não existe.' unless File.directory?(origem)
42
- end
43
-
44
- def origem
45
- @origem ||= args[0]
46
- end
47
-
48
- def validar_que_diretorio_de_origem_nao_esta_vazio
49
- erro 'Diretório de origem vazio.' if Dir.empty?(origem)
50
- end
51
-
52
- def validar_que_diretorio_de_destino_esta_vazio
53
- erro 'Diretório de destino deve estar vazio.' unless Dir.empty?(destino)
54
- end
55
-
56
- def destino
57
- @destino ||= args[1]
58
- end
59
-
60
- def erro(erro)
61
- puts erro
62
- exit
63
- end
64
-
65
- def processar_empresas
66
- empresas.each(&:processar)
67
- end
68
-
69
- def empresas
70
- Dir[File.join(origem, '*')].map { |caminho| Empresa.new(caminho: caminho, destino: destino) }
71
- end
72
- end
73
- end
@@ -1,21 +0,0 @@
1
- require_relative 'leiaute_2_4_1/arquivo_s1000'
2
- require_relative 'leiaute_2_4_1/arquivo_s1005'
3
- require_relative 'leiaute_2_4_1/arquivo_s1010'
4
- require_relative 'leiaute_2_4_1/arquivo_s1020'
5
- require_relative 'leiaute_2_4_1/arquivo_s1030'
6
- require_relative 'leiaute_2_4_1/arquivo_s1040'
7
- require_relative 'leiaute_2_4_1/arquivo_s1050'
8
- require_relative 'leiaute_2_4_1/arquivo_s1070'
9
- require_relative 'leiaute_2_4_1/arquivo_s2190'
10
- require_relative 'leiaute_2_4_1/arquivo_s2200'
11
- require_relative 'leiaute_2_4_1/arquivo_s2205'
12
- require_relative 'leiaute_2_4_1/arquivo_s2206'
13
- require_relative 'leiaute_2_4_1/arquivo_s2230'
14
- require_relative 'leiaute_2_4_1/arquivo_s2250'
15
- require_relative 'leiaute_2_4_1/arquivo_s2300'
16
- require_relative 'leiaute_2_4_1/arquivo_s2306'
17
-
18
- module Teodoro
19
- module Leiaute_2_4_1
20
- end
21
- end