Class: Teodoro::Leiaute::ArquivoS1040

Inherits:
Object
  • Object
show all
Includes:
ArquivoDeEventoDeTabela::DescritorDeArquivoData
Defined in:
lib/teodoro/leiaute/arquivo_s1040.rb

Instance Method Summary collapse

Methods included from ArquivoDeEventoDeTabela

#processar

Instance Method Details

#alertar_que_cbo_nao_foi_encontradoObject



53
54
55
# File 'lib/teodoro/leiaute/arquivo_s1040.rb', line 53

def alertar_que_cbo_nao_foi_encontrado
  puts "\n  #{Rainbow("CBO #{codigo_do_cbo} não encontrado").yellow}"
end

#codigo_da_funcaoObject



18
19
20
# File 'lib/teodoro/leiaute/arquivo_s1040.rb', line 18

def codigo_da_funcao
  @codigo_da_funcao ||= evento['infoFuncao/*/ideFuncao/codFuncao']
end

#codigo_do_cboObject



38
39
40
# File 'lib/teodoro/leiaute/arquivo_s1040.rb', line 38

def codigo_do_cbo
  @codigo_do_cbo ||= evento['infoFuncao/*/dadosFuncao/codCBO']
end

#codigo_e_titulo_do_cboObject



42
43
44
# File 'lib/teodoro/leiaute/arquivo_s1040.rb', line 42

def codigo_e_titulo_do_cbo
  @codigo_e_titulo_do_cbo ||= "#{codigo_do_cbo} - #{titulo_do_cbo}"
end

#identificacao_do_arquivo_dataObject



14
15
16
# File 'lib/teodoro/leiaute/arquivo_s1040.rb', line 14

def identificacao_do_arquivo_data
  ['FUN', codigo_da_funcao]
end

#itens_do_conteudo_do_arquivo_dataObject

rubocop:disable Metrics/MethodLength



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/teodoro/leiaute/arquivo_s1040.rb', line 22

def itens_do_conteudo_do_arquivo_data # rubocop:disable Metrics/MethodLength
  [
    ['CodigoFuncao', codigo_da_funcao],
    ['InicioValidade', inicio_da_validade, :mes_ano],
    ['FimValidade', fim_da_validade, :mes_ano],
    ['DadosFuncao_DescricaoFuncao', evento['infoFuncao/*/dadosFuncao/dscFuncao']],
    ['DadosFuncao_CodigoCBO', codigo_do_cbo],
    ['DadosFuncao_CodigoCBO_TEXT', codigo_e_titulo_do_cbo],
    ['DadosFuncao_DescricaoCBO', codigo_e_titulo_do_cbo],
    ['IdEventoXml', id_do_evento],
    ['NrReciboEventoOriginal', numero_do_recibo],
    ['DescricaoProcEmi', processo_de_emissao_do_evento],
    ['VerProc', versao_do_processo_de_emissao_do_evento]
  ]
end

#noh_de_identificacao_do_periodoObject



10
11
12
# File 'lib/teodoro/leiaute/arquivo_s1040.rb', line 10

def noh_de_identificacao_do_periodo
  'ideFuncao'
end

#noh_de_informacoes_do_eventoObject



6
7
8
# File 'lib/teodoro/leiaute/arquivo_s1040.rb', line 6

def noh_de_informacoes_do_evento
  'infoFuncao'
end

#titulo_do_cboObject



46
47
48
49
50
51
# File 'lib/teodoro/leiaute/arquivo_s1040.rb', line 46

def titulo_do_cbo
  CBOs[codigo_do_cbo] || begin
    alertar_que_cbo_nao_foi_encontrado
    codigo_do_cbo
  end
end