Class: Teodoro::Empresa::Impl

Inherits:
Object
  • Object
show all
Defined in:
lib/teodoro/empresa.rb

Overview

rubocop:disable Metrics/ClassLength

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#inicio_da_validadeObject

Returns the value of attribute inicio_da_validade.



43
44
45
# File 'lib/teodoro/empresa.rb', line 43

def inicio_da_validade
  @inicio_da_validade
end

Instance Method Details

#arquivo_xml_por_recibo_de_evento_retificadoObject



110
111
112
# File 'lib/teodoro/empresa.rb', line 110

def arquivo_xml_por_recibo_de_evento_retificado
  @arquivo_xml_por_recibo_de_evento_retificado ||= {}
end

#arquivos_dataObject



74
75
76
# File 'lib/teodoro/empresa.rb', line 74

def arquivos_data
  @arquivos_data ||= ArquivosData.new(destino_dos_arquivos_data)
end

#cargos_geradosObject



94
95
96
# File 'lib/teodoro/empresa.rb', line 94

def cargos_gerados
  @cargos_gerados ||= CargosGerados.new(self)
end

#competencias_encerradasObject



78
79
80
# File 'lib/teodoro/empresa.rb', line 78

def competencias_encerradas
  @competencias_encerradas ||= []
end

#contratos_de_empregoObject



86
87
88
# File 'lib/teodoro/empresa.rb', line 86

def contratos_de_emprego
  @contratos_de_emprego ||= ContratosDeEmprego.new(trabalhadores)
end

#contratos_de_trabalho_sem_vinculoObject



90
91
92
# File 'lib/teodoro/empresa.rb', line 90

def contratos_de_trabalho_sem_vinculo
  @contratos_de_trabalho_sem_vinculo ||= ContratosDeTrabalhoSemVinculo.new(trabalhadores)
end

#destino_dos_arquivos_dataObject



70
71
72
# File 'lib/teodoro/empresa.rb', line 70

def destino_dos_arquivos_data
  @destino_dos_arquivos_data ||= File.join(destino, 'data')
end

#funcoes_geradasObject



98
99
100
# File 'lib/teodoro/empresa.rb', line 98

def funcoes_geradas
  @funcoes_geradas ||= FuncoesGeradas.new(self)
end

#inicios_de_afastamento_por_numero_do_reciboObject



102
103
104
# File 'lib/teodoro/empresa.rb', line 102

def inicios_de_afastamento_por_numero_do_recibo
  @inicios_de_afastamento_por_numero_do_recibo ||= {}
end

#processarObject

rubocop:disable Metrics/MethodLength



45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/teodoro/empresa.rb', line 45

def processar # rubocop:disable Metrics/MethodLength
  dar_feedback_para_o_usuario
  criar_diretorios_destino
  descompactar_arquivos_de_origem
  carregar_arquivos_xml
  classificar_arquivos_xml
  ordenar_arquivos_xml
  validar_que_primeiro_arquivo_xml_eh_s1000
  processar_arquivos_xml
  validar_que_nao_houve_evento_de_retificacao_sem_inclusao_correspondente
  salvar_arquivo_de_dados_gerais
  processar_cargos_gerados
  processar_funcoes_geradas
  setar_proximo_identificador_de_tabela_de_rubricas_nos_arquivos_data_emp
  ajustar_nome_do_ultimo_arquivo_emp_data
end

#qtd_de_arquivos_de_origemObject



62
63
64
# File 'lib/teodoro/empresa.rb', line 62

def qtd_de_arquivos_de_origem
  @qtd_de_arquivos_de_origem ||= caminhos_dos_arquivos_de_origem.size
end

#qtd_de_arquivos_xmlObject



66
67
68
# File 'lib/teodoro/empresa.rb', line 66

def qtd_de_arquivos_xml
  @qtd_de_arquivos_xml ||= arquivos_xml.size
end

#recibos_dos_eventos_excluidosObject



106
107
108
# File 'lib/teodoro/empresa.rb', line 106

def recibos_dos_eventos_excluidos
  @recibos_dos_eventos_excluidos ||= Set.new
end

#trabalhadoresObject



82
83
84
# File 'lib/teodoro/empresa.rb', line 82

def trabalhadores
  @trabalhadores ||= Trabalhadores.new
end