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.



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

def inicio_da_validade
  @inicio_da_validade
end

Instance Method Details

#arquivo_xml_por_recibo_de_evento_retificadoObject



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

def arquivo_xml_por_recibo_de_evento_retificado
  @arquivo_xml_por_recibo_de_evento_retificado ||= {}
end

#arquivos_dataObject



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

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

#cargos_geradosObject



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

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

#competencias_encerradasObject



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

def competencias_encerradas
  @competencias_encerradas ||= []
end

#contratos_de_empregoObject



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

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

#contratos_de_trabalho_sem_vinculoObject



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

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

#destino_dos_arquivos_dataObject



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

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

#funcoes_geradasObject



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

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

#inicios_de_afastamento_por_numero_do_reciboObject



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

def inicios_de_afastamento_por_numero_do_recibo
  @inicios_de_afastamento_por_numero_do_recibo ||= {}
end

#processarObject

rubocop:disable Metrics/MethodLength



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

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



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

def qtd_de_arquivos_de_origem
  @qtd_de_arquivos_de_origem ||= caminhos_dos_arquivos_de_origem.size
end

#qtd_de_arquivos_xmlObject



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

def qtd_de_arquivos_xml
  @qtd_de_arquivos_xml ||= arquivos_xml.size
end

#recibos_dos_eventos_excluidosObject



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

def recibos_dos_eventos_excluidos
  @recibos_dos_eventos_excluidos ||= Set.new
end

#trabalhadoresObject



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

def trabalhadores
  @trabalhadores ||= Trabalhadores.new
end