Class: ArquivoTrabalhadorSemVinculo

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

Constant Summary collapse

ATRIBUTOS =
{
  cpf: { key: 'EventoAdmissao_InfoTrabalhador_Cpf', type: Types::String.optional },
  nis: { key: 'EventoAdmissao_InfoTrabalhador_Nis', type: Types::String.optional },
  nome: { key: 'EventoAdmissao_InfoTrabalhador_Nome', type: Types::String },
  sexo: { key: 'EventoAdmissao_InfoTrabalhador_Sexo', type: Types::String },
  codigo_categoria: { key: 'EventoAdmissao_InformacoesInicio_CodigoCategoria', type: Types::CategoriaTrabalhadorTsv },
  nr_recibo_evento_original: { key: 'NrReciboEventoOriginal', type: Types::String },
  data_inicio: { key: 'EventoAdmissao_InformacoesInicio_DataInicio', type: Types::Date },
  raca_cor: { key: 'EventoAdmissao_InfoTrabalhador_RacaCor', type: Types::Integer },
  deficiencia_auditiva: { key: 'EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaAuditiva',
                          type: Types::SNBool.optional },
  deficiencia_fisica: { key: 'EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaFisica',
                        type: Types::SNBool.optional },
  deficiencia_intelectual: { key: 'EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaIntelectual',
                             type: Types::SNBool.optional },
  deficiencia_mental: { key: 'EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaMental',
                        type: Types::SNBool.optional },
  deficiencia_visual: { key: 'EventoAdmissao_InfoTrabalhador_Deficiencia_DeficienciaVisual',
                        type: Types::SNBool.optional },
  deficiencia_reabilitado_ou_readaptado: { key: 'EventoAdmissao_InfoTrabalhador_Deficiencia_ReabilitadoOuReadaptado',
                                           type: Types::SNBool.optional },
  grau_instrucao: { key: 'EventoAdmissao_InfoTrabalhador_GrauInstrucao', type: Types::String },
  endereco_br_bairro: { key: 'EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Bairro',
                        type: Types::String.optional },
  endereco_br_cep: { key: 'EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Cep',
                     type: Types::String.optional },
  endereco_br_codigo_municipio: {
    key: 'EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_CodigoMunicipio',
    type: Types::String.optional
  },
  endereco_br_complemento: { key: 'EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Complemento',
                             type: Types::String.optional },
  endereco_br_descricao_logradouro: {
    key: 'EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_DescricaoLogradouro',
    type: Types::String.optional
  },
  endereco_br_numero_logradouro: {
    key: 'EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_NumeroLogradouro',
    type: Types::String.optional
  },
  data_de_nascimento: { key: 'EventoAdmissao_InfoTrabalhador_Nascimento_DataNascimento', type: Types::Date },
  nascimento_pais_codigo: { key: 'EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento', type: Types::String },
  nacionalidade_pais_codigo: { key: 'EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade',
                               type: Types::String },
  nome_mae: { key: 'EventoAdmissao_InfoTrabalhador_Nascimento_NomeMae', type: Types::String.optional },
  cargo_codigo: { key: 'EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoCargo',
                  type: Types::String.optional },
  valor_salario_fixo: {
    key: 'EventoAdmissao_InformacoesInicio_InformacoesComplementares_Remuneracao_ValorSalarioFixo',
    type: Types::Decimal.optional
  },
  natureza_da_atividade: { key: 'EventoAdmissao_InformacoesInicio_NaturezaAtividade', type: Types::String.optional },

  estagiario_natureza_estagio: {
    key: 'EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NaturezaEstagio',
    type: Types::String.optional
  },
  estagiario_nivel_estagio: {
    key: 'EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NivelEstagio',
    type: Types::String.optional
  },
  estagiario_dt_prevista_termino: {
    key: 'EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_DtPrevistaTermino',
    type: Types::String.optional
  },
  estagiario_info_inst_ensino_cnpj: {
    key: 'EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Cnpj',
    type: Types::String.optional
  },
  estagiario_valor_bolsa: {
    key: 'EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_ValorBolsa',
    type: Types::Decimal.optional
  },
  cbo: { key: 'CodigoCBO', type: Types::String.optional },
  matricula: { key: 'EventoAdmissao_InformacoesInicio_Matricula', type: Types::String.optional },
  estrangeiro_data_de_chegada_ao_brasil: { key: 'EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_DataChegada',
                                           type: Types::Date.optional },
  estrangeiro_classificacao_do_ingresso_no_brasil: {
    key: 'EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao', type: Types::Integer.optional
  },
  estrangeiro_casado_com_brasileiro: {
    key: 'EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_CasadoComBrasileiro', type: Types::SNBool.optional
  },
  estrangeiro_tem_filhos_brasileiros: {
    key: 'EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_FilhosBrasileiros', type: Types::SNBool.optional
  },
  descricao_proc_emi: { key: 'DescricaoProcEmi', type: Types::String.optional },
  dependentes: { key: 'EventoAdmissao_InfoTrabalhador_Dependente', attributes: {
    dependente_de_IRRF: { key: 'DependenteIRRF', type: Types::SNBool }
  } }
}.freeze
ATRIBUTOS_DESCARTADOS =
{
  Nascimento: %w[
    EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio
    EventoAdmissao_InfoTrabalhador_Nascimento_Uf
    EventoAdmissao_InfoTrabalhador_Nascimento_NomePai
  ],
  'Estado civil': %w[
    EventoAdmissao_InfoTrabalhador_EstadoCivil
  ],
  'Nome Social': %w[
    EventoAdmissao_InfoTrabalhador_NomeSocial
  ],
  Identidade: %w[
    EventoAdmissao_InfoTrabalhador_Documentos_Rg_DataExpedicao
    EventoAdmissao_InfoTrabalhador_Documentos_Rg_NumeroRg
    EventoAdmissao_InfoTrabalhador_Documentos_Rg_OrgaoEmissor
  ],
  CNH: %w[
    EventoAdmissao_InfoTrabalhador_Documentos_Cnh_NumeroCnh
    EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataExpedicao
    EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataPrimeiraHabilitacao
    EventoAdmissao_InfoTrabalhador_Documentos_Cnh_DataValidade
    EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh
    EventoAdmissao_InfoTrabalhador_Documentos_Cnh_UfCnh_TEXT
    EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh
    EventoAdmissao_InfoTrabalhador_Documentos_Cnh_CategoriaCnh_TEXT
  ],
  'Orgão de Classe': %w[
    EventoAdmissao_InfoTrabalhador_Documentos_Oc_NumeroOc
    EventoAdmissao_InfoTrabalhador_Documentos_Oc_OrgaoEmissor
    EventoAdmissao_InfoTrabalhador_Documentos_Oc_DataExpedicao
  ],
  RNE: %w[
    EventoAdmissao_InfoTrabalhador_Documentos_Rne_NumerorRne
    EventoAdmissao_InfoTrabalhador_Documentos_Rne_OrgaoEmissor
    EventoAdmissao_InfoTrabalhador_Documentos_Rne_DataExpedicao
  ],
  CTPS: %w[
    EventoAdmissao_InfoTrabalhador_Documentos_Ctps_NumeroCtps
    EventoAdmissao_InfoTrabalhador_Documentos_Ctps_SerieCtps
    EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps
  ],
  'contato do trabalhador': %w[
    EventoAdmissao_InfoTrabalhador_Contato_TelefonePrincipal
  ],
  'supervisor de estágio': %w[
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoSupervisorEstagio_Cpf
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoSupervisorEstagio_Nome
  ],
  'agente de integração': %w[
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Cnpj
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_RazaoSocial
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Cep
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_DescricaoLogradouro
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_NumeroLogradouro
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Bairro
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Uf
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_CodigoMunicipio
  ],
  'instituição de ensino de estágio': %w[
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Uf
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_CodigoMunicipio
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Cep
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Bairro
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_DescricaoLogradouro
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_NumeroLogradouro
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_RazaoSocial
  ],
  estágio: %w[
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NrApoliceSeguro
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_AreaAtuacao
  ],
  função: %w[
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoFuncao
  ],
  remuneração: %w[
    EventoAdmissao_InformacoesInicio_InformacoesComplementares_Remuneracao_DescricaoSalarioVariavel
  ]
}.freeze
ATRIBUTOS_NAO_SUPORTADOS =
{}.freeze
ATRIBUTOS_IGNORADOS =
%w[
  IdEventoXml
  EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_TipoLogradouro
  EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Uf
  EventoAdmissao_InformacoesInicio_IndicativoCadastramentoInicial
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoFgts_OptanteFGTS
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoFgts_DataOpcaoFGTS
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_Remuneracao_UnidadeSalarioFixo
  ESX_CATEGORIA
  ESX_CPF
  ESX_DATAADMISSAO
  ESX_SEMVINCULO
  EventoAdmissao_InfoTrabalhador_EstadoCivil_TEXT
  EventoAdmissao_InfoTrabalhador_GrauInstrucao_TEXT
  EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_TipoLogradouro_TEXT
  EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_CodigoMunicipio_TEXT
  EventoAdmissao_InfoTrabalhador_InfoEndereco_EnderecoResidencialBR_Uf_TEXT
  EventoAdmissao_InfoTrabalhador_Nascimento_CodigoMunicipio_TEXT
  EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade_TEXT
  EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento_TEXT
  EventoAdmissao_InfoTrabalhador_Nascimento_Uf_TEXT
  EventoAdmissao_InfoTrabalhador_RacaCor_TEXT
  EventoAdmissao_InfoTrabalhador_Sexo_TEXT
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_Remuneracao_UnidadeSalarioFixo_TEXT
  EventoAdmissao_InformacoesInicio_CodigoCategoria_TEXT
  EventoAdmissao_InformacoesInicio_IndicativoCadastramentoInicial_TEXT
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoFgts_OptanteFGTS_TEXT
  EventoAdmissao_InfoTrabalhador_TrabalhadorEstrangeiro_ClassificacaoCondicao_TEXT
  FiltroCargo
  IdContratoReferenciado
  IdEvento
  ResideExterior
  SemNumeroLogradouroEnderecoBR
  SemNumeroLogradouroEnderecoEX
  SomenteLeitura
  VerProc
  autocomplete_EventoAdmissao_InfoTrabalhador_Nascimento_PaisNacionalidade
  autocomplete_EventoAdmissao_InfoTrabalhador_Nascimento_PaisNascimento
  autocomplete_EventoAdmissao_InformacoesInicio_CodigoCategoria
  checkbox_preencher_grupo0
  checkbox_preencher_grupo1
  checkbox_preencher_grupo10
  checkbox_preencher_grupo11
  checkbox_preencher_grupo12
  checkbox_preencher_grupo13
  checkbox_preencher_grupo14
  checkbox_preencher_grupo2
  checkbox_preencher_grupo3
  checkbox_preencher_grupo4
  checkbox_preencher_grupo5
  checkbox_preencher_grupo6
  checkbox_preencher_grupo8
  checkbox_preencher_grupo9
  checkbox_preencher_grupo10
  checkbox_preencher_grupo11
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_NomeFuncao
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoCBOFuncao
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoCBOFuncao_TEXT
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NaturezaEstagio_TEXT
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_NivelEstagio_TEXT
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_Uf_TEXT
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoInstEnsino_CodigoMunicipio_TEXT
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_Uf_TEXT
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoEstagiario_InfoAgenteIntegracao_CodigoMunicipio_TEXT
  EventoAdmissao_InfoTrabalhador_Documentos_Ctps_UfCtps_TEXT
  EventoAdmissao_NrRecibo
  CheckModoCompleto
  EventoAdmissao_InfoTrabalhador_Contato_TelefoneAlternativo
  EventoAdmissao_InfoTrabalhador_Contato_EmailPrincipal
  EventoAdmissao_InfoTrabalhador_Contato_EmailAlternativo
  EventoAdmissao_InformacoesInicio_NaturezaAtividade_TEXT
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_NomeCargo
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoCBOCargo
  EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoCBOCargo_TEXT
  autocomplete_EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoCBOCargo
  autocomplete_EventoAdmissao_InformacoesInicio_InformacoesComplementares_InfoCargoFuncao_CodigoCBOFuncao
  FiltroFuncao
].freeze

Method Summary

Methods included from ArquivoData

#alertas, #atributos, #erros, #processar