Class: ArquivoAtestadoDeSaudeOcupacional

Inherits:
Object
  • Object
show all
Includes:
ArquivoData
Defined in:
lib/odorico/arquivo_atestado_de_saude_ocupacional.rb

Constant Summary collapse

ATRIBUTOS =
{
  descricao_proc_emi: { key: 'procEmi', type: Types.Values(*%w[1 2 3 4 22]) },
  cpf_do_trabalhador: { key: 'cpfTrab', type: Types::String },
  matricula_do_trabalhador: { key: 'matricula', type: Types::String.optional },
  categoria_do_trabalhador: { key: 'codCateg', type: Types::CategoriaTrabalhadorTsv.optional },
  data_de_emissao: { key: 'dtAso', type: Types::Date },
  tipo: { key: 'tpExameOcup', type: Types.Values(*%w[0 1 2 3 4 9]) },
  medico_nome: { key: 'medico/nmMed', type: Types::String },
  medico_crm_numero: { key: 'medico/nrCRM', type: Types::String },
  medico_crm_uf: { key: 'medico/ufCRM', type: Types::String },
  medico_pcmso_nome: { key: 'respMonit/nmResp', type: Types::String },
  medico_pcmso_crm_numero: { key: 'respMonit/nrCRM', type: Types::String },
  medico_pcmso_crm_uf: { key: 'respMonit/ufCRM', type: Types::String },
  e_social_recibo: { key: 'nrRecibo', type: Types::String },
  exames: { key: 'exame', attributes: {
    data: { key: 'dtExm', type: Types::Date },
    procedimento_diagnostico_e_social_codigo: { key: 'procRealizado', type: Types::String },
    observacao: { key: 'obsProc', type: Types::String.optional },
    ordem: { key: 'ordExame', type: Types.Values(*%w[1 2]).optional }
  } }
}.freeze
ATRIBUTOS_IGNORADOS =
%w[
  Id
  verProc
  ideEmpregador/tpInsc
  ideEmpregador/nrInsc
  resAso
  respMonit/cpfResp
].freeze
ATRIBUTOS_NAO_SUPORTADOS =
{}.freeze
ATRIBUTOS_DESCARTADOS =
{}.freeze

Method Summary

Methods included from ArquivoData

#alertas, #atributos, #erros, #processar