Módulo Persona

Persona

Como obter dados de um Colaborador

Os dados do Colaborador podem ser obtidos por meio de uma série de métodos da classe {@link Persona.Persona.default}. Estes métodos retornam um objeto do tipo IColaborador, contendo os dados do colaborador em si.

Por padrão, apenas os dados básicos do colaborador são retornados, mas é possível passar parâmetros para incluir mais dados.

Por CPF

Neste exemplo, vamos obter um dado do colaborador pelo CPF, e imprimir o nome na tela:

persona = Aria("username", "password").get_persona()
colaborador = persona.get_colaborador(cpf=3064686119)

print(colaborador["nomePessoa"])

Por login

Neste exemplo, obteremos o colaborador pelo login, e imprimiremos seu nome na tela:

persona = Aria("username", "password").get_persona()
colaborador = persona.get_colaborador(login="igor.a.costa")

print(colaborador["nomePessoa"])

Por unidade de lotação

Vamos pegar todos os colaboradores lotados diretamente na unidade 73084, ou seja, COSIS.

persona = Aria("username", "password").get_persona()
colaboradores = persona.get_colaboradores(id_uorg=73084)

for colaborador in colaboradores:
    print(colaborador["nomePessoa"])

Agora, vamos pegar todos os colaboradores lotados na unidade, ou seja, COSIS, ou em suas filhas.

persona = Aria("username", "password").get_persona()
colaboradores = persona.get_colaboradores(id_uorg=73084, inclui_subuorgs=True)

for colaborador in colaboradores:
    print(colaborador["nomePessoa"])

Obtendo as funções de um colaborador

Utilize qualquer uma das fuções anteriores para obter dados do colaborador, e adicione o parâmetro inclui_funcoes:

persona = Aria("username", "password").get_persona()
colaborador = persona.get_colaborador(login="igor.a.costa", inclui_funcoes=True)

funcoes = colaborador["funcoes"]

for funcao in funcoes:
    print(funcao.get("codigo"))
    print(funcao.get("idUorg"))
    print(funcao.get("inicio"))
    print(funcao.get("fim"))

Obtendo as substituições de um colaborador

Utilize qualquer uma das fuções anteriores para obter dados do colaborador, e adicione o parâmetro inclui_substituicoes:

persona = Aria("username", "password").get_persona()
colaborador = persona.get_colaborador(login="diego.c.souza", inclui_substituicoes=True)

substituicoes = colaborador["substituicoes"]

for substituicao in substituicoes:
    print(substituicao.get("funcao"))
    print(substituicao.get("idUorg"))
    print(substituicao.get("siglaUorg"))
    print(substituicao.get("inicio"))
    print(substituicao.get("fim"))

Obtendo os dados de frequência de um colaborador

Utilize qualquer uma das fuções anteriores para obter dados do colaborador, e adicione os parâmetros inclui_frequencia e data_frequencia:

persona = Aria("username", "password").get_persona()
colaborador = persona.get_colaborador(login="igor.a.costa", inclui_frequencia=True, data_frequencia="01/2019")

frequencias = colaborador["frequencias"]

for frequencia in frequencias:
    print(frequencia.get("situacao"))
    print(frequencia.get("data"))
    print(frequencia.get("dataAprovacao"))
    print(frequencia.get("dataConclusao"))
    print(frequencia.get("dataFechamento"))

    folha = frequencia.get("folha")

    for dia in folha:
        print(dia.get("data"))
        print(dia.get("entradaPrimeiroPeriodo"))
        print(dia.get("saidaPrimeiroPeriodo"))
        print(dia.get("entradaSegundoPeriodo"))
        print(dia.get("saidaPrimeiroPeriodo"))

Obtendo os dados de ocorrências de um colaborador

Utilize qualquer uma das fuções anteriores para obter dados do colaborador, e adicione os parâmetros inclui_ocorrencias e data_ocorrencias:

persona = Aria("username", "password").get_persona()
colaborador = persona.get_colaborador(login="igor.a.costa", inclui_ocorrencias=True, data_ocorrencias="01/2022")

ocorrencias = colaborador["ocorrencias"]

for ocorrencia in ocorrencias:
    print(ocorrencia.get("codigo"))
    print(ocorrencia.get("nome"))
    print(ocorrencia.get("descricao"))
    print(ocorrencia.get("duracaoDia"))
    print(ocorrencia.get("inicio"))
    print(ocorrencia.get("fim"))
    print(ocorrencia.get("debitaPeriodoAquisitivo"))
    print(ocorrencia.get("parcial"))
    print(ocorrencia.get("suspenseEfetivacaoSubst"))
    print(ocorrencia.get("validada"))

Obter os dados dos dependentes do colaborador

Utilize qualquer uma das fuções anteriores para obter dados do colaborador, e adicione o parâmetro inclui_dependentes:

persona = Aria("username", "password").get_persona()
colaborador = persona.get_colaborador(login="igor.a.costa", inclui_dependentes=True)

dependentes = colaborador["dependentes"]

for dependente in dependentes:
    print(dependente.get("cpf"))
    print(dependente.get("grauParentesco"))
    print(dependente.get("nome"))

Obter os dados dos exercícios (lotações) do colaborador

Utilize qualquer uma das fuções anteriores para obter dados do colaborador, e adicione o parâmetro inclui_exercicios:

persona = Aria("username", "password").get_persona()
colaborador = persona.get_colaborador(login="igor.a.costa", inclui_exercicios=True)

exercicios = colaborador["exercicios"]

for exercicio in exercicios:
    print(exercicio.get("inicio"))
    print(exercicio.get("fim"))
    print(exercicio.get("idUorg"))
    print(exercicio.get("sigla"))
    print(exercicio.get("movimentacao"))

Obter os dados das jornadas de trabalho do colaborador

Utilize qualquer uma das fuções anteriores para obter dados do colaborador, e adicione o parâmetro inclui_jornada_trabalho:

persona = Aria("username", "password").get_persona()
colaborador = persona.get_colaborador(login="igor.a.costa", inclui_jornada_trabalho=True)

jornadas = colaborador["jornadasTrabalho"]

for jornada in jornadas:
    print(jornada.get("inicio"))
    print(jornada.get("fim"))
    print(jornada.get("entradaPrimeiroPeriodo"))
    print(jornada.get("saidaPrimeiroPeriodo"))
    print(jornada.get("entradaSegundoPeriodo"))
    print(jornada.get("saidaSegundoPeriodo"))
    print(jornada.get("tipoHorario"))

Obter telefones do colaborador

Utilize qualquer uma das fuções anteriores para obter dados do colaborador, e adicione o parâmetro inclui_telefones:

persona = Aria("username", "password").get_persona()
colaborador = persona.get_colaborador(login="igor.a.costa", inclui_telefones=True)

telefones = colaborador["telefones"]

for telefone in telefones:
    print(telefone.get("tipo"))
    print(telefone.get("ddd"))
    print(telefone.get("numero"))
}

Como obter dados de UORGs

Os dados da uorg podem ser obtidos por métodos na classe Aria.

Por ID da Uorg

Vamos pegar a Uorg de ID = 73084 e imprimir seu nome na tela:

persona = Aria("username", "password").get_persona()
uorg = persona.get_uorg(id_uorg=73084)
print(uorg["nome"])

Pela sigla

É necessário informar a sigla do pai no caso de uorgs homônimas.

Um exemplo é o seguinte:

persona = Aria("username", "password").get_persona()
uorg = persona.get_uorg(sigla="COSIS", sigla_pai="SUCOP")
print(uorg["nome"])

Obter toda a hierarquia da STN e percorrê-la

Neste exemplo, obtenho a hierarquia da STN e imprimo todos os filhos recursivamente.

persona = Aria("username", "password").get_persona()
uorgs = persona.get_uorgs_stn()

sub_uorgs = uorgs.get("subUorgs")

def print_sub_uorgs(sub_uorgs):
    for sub_uorg in sub_uorgs:
        print(sub_uorg["sigla"] + " - " + sub_uorg["nome"])

        if sub_uorg.get("subUorgs") != None:
            print_sub_uorgs(sub_uorg.get("subUorgs"))

print_sub_uorgs(sub_uorgs)

Obter as Uorgs por nível

Neste exemplo, pegamos todas as Uorgs no nível «Órgão», que é o número 1, e printamos o seu nome.

persona = Aria("username", "password").get_persona()
uorgs = persona.get_uorgs(id_nivel=1)

for uorg in uorgs:
    print(uorg["sigla"] + " - " + uorg["nome"])

Obter as UORGs filhas de uma unidade

Neste exemplo, obtenho as uorgs filhas da COSIS e imprimo em tela

persona = Aria("username", "password").get_persona()
uorgs = persona.get_uorgs(id_uorg_pai=73084)

for uorg in uorgs:
    print(uorg["sigla"] + " - " + uorg["nome"])

Obter as sub-uorgs de uma uorg

É possível obter todas as sub-uorgs de uma uorg específica, e as sub-uorgs dessas sub-uorgs também. Para isso, incluir o parâmetro inclui_subuorgs.

persona = Aria("username", "password").get_persona()
uorgs = persona.get_uorgs(id_uorg_pai=73084, inclui_subuorgs=True)

def print_sub_uorgs(sub_uorgs):
    for sub_uorg in sub_uorgs:
        print(sub_uorg["sigla"] + " - " + sub_uorg["nome"])

        if sub_uorg.get("subUorgs") != None:
            print_sub_uorgs(sub_uorg.get("subUorgs"))

print_sub_uorgs(uorgs)

Obter as listas das funções de uma uorg e seus ocupantes

Podemos obter a lista das funções de uma uorg e seus ocupantes usando qualquer uma das funções para obter uorg, e usando o parâmetro inclui_funcoes.

persona = Aria("username", "password").get_persona()
uorg = persona.get_uorg(id_uorg=73084, inclui_funcoes=True)
funcoes = uorg.get("funcoes")

for funcao in funcoes:
    print(funcao.get("idFuncao"))
    print(funcao.get("idFuncaoUnidade"))
    print(funcao.get("codigo"))
    print(funcao.get("inicio"))
    print(funcao.get("fim"))
    print(funcao.get("legislacao"))
    print(funcao.get("tipo"))
    print(funcao.get("funcaoStn"))
    print(funcao.get("ativo"))

    for ocupante in funcao.get("ocupantes"):
        print(ocupante.get("login"))
        print(ocupante.get("nome"))
        print(ocupante.get("cpf"))
        print(ocupante.get("idColaborador"))
        print(ocupante.get("idPessoa"))
        print(ocupante.get("inicio"))
        print(ocupante.get("fim"))

    for substituicao in funcao.get("substituicoes"):
        print(substituicao.get("login"))
        print(substituicao.get("nome"))
        print(substituicao.get("cpf"))
        print(substituicao.get("idColaborador"))
        print(substituicao.get("idPessoa"))
        print(substituicao.get("inicio"))
        print(substituicao.get("fim"))

Module contents —————s

class pyarialib.persona.Persona(aria)[código fonte]

Bases: object

get_colaborador(id=None, cpf=None, login=None, inclui_funcoes=False, inclui_frequencia=False, data_frequencia=None, inclui_ocorrencias=False, data_ocorrencias=None, inclui_dependentes=False, inclui_exercicios=False, inclui_jornada_trabalho=False, inclui_telefones=False, inclui_substituicoes=False)[código fonte]

Obtém dados de um colaborador.

Parâmetros:
  • id (string, optional) – Busca pelo ID do Colaborador. Defaults to None.

  • cpf (number, optional) – Busca pelo CPF do Colaborador. Defaults to None.

  • login (string, optional) – Busca pelo login do Colaborador. Defaults to None.

  • inclui_funcoes (bool, optional) – inclui no atributo «funcoes» a lista de funções que o usuário possui. Defaults to False.

  • inclui_frequencia (bool, optional) – inclui no atributo «folhas» a lista de folhas de frequência do colaborador. Defaults to False.

  • data_frequencia (string, optional) – Obtém apenas as ocorrências de uma determinada data ou período. Este atributo pode ter 3 tipos de formatos: «<ano>», para obter todas as ocorrências de um determinado ano. «<mes>/<ano>», para obter todas as ocorrências de um determinado mês. E «<dia>/<mes>/<ano>», para obter as folhas de um dia específico. Defaults to None.

  • inclui_ocorrencias (bool, optional) – se inclui no atributo «ocorrencias» a lista de ocorrências registradas pelo colaborador. Defaults to False.

  • data_ocorrencias (string, optional) – obtém apenas as ocorrências de uma determinada data ou período. Este atributo pode ter 3 tipos de formatos: «<ano>», para obter todas as ocorrências de um determinado ano. «<mes>/<ano>», para obter todas as ocorrências de um determinado mês. E «<dia>/<mes>/<ano>», para obter as folhas de um dia específico. Defaults to None.

  • inclui_dependentes (bool, optional) – se inclui no atributo «dependentes» uma lista de dependentes. Defaults to False.

  • inclui_exercicios (bool, optional) – se inclui no atributo «exercicios» uma lista de uorgs em que o usuário esteve lotado. Defaults to False.

  • inclui_jornada_trabalho (bool, optional) – se inclui no atributo «jornadaTrabalho» informações históricas sobre a jornada de trabalho do colaborador. Defaults to False.

  • inclui_telefones (bool, optional) – se inclui no atributo «telefones» uma lista de telefones cadastrados do colaborador. Defaults to False.

  • inclui_substituicoes (bool, optional) – se inclui uma lista de substituições de funções do colaborador. Defaults to False.

Retorno:

Um dict do colaborador.

Tipo de retorno:

dict

get_colaboradores(id_uorg=None, inclui_subuorgs=False, inclui_funcoes=False, inclui_frequencia=False, data_frequencia=None, inclui_ocorrencias=False, data_ocorrencias=None, inclui_dependentes=False, inclui_exercicios=False, inclui_jornada_trabalho=False, inclui_telefones=False, inclui_substituicoes=False)[código fonte]

Obtém um array de colaboradores.

Parâmetros:
  • id_uorg (number, optional) – Busca pelo ID da Uorg. Defaults to None.

  • inclui_subuorgs (bool, optional) – Inclui as uorgs filho na propriedade «subuorgs». Defaults to False.

  • inclui_funcoes (bool, optional) – inclui no atributo «funcoes» a lista de funções que o usuário possui. Defaults to False.

  • inclui_frequencia (bool, optional) – inclui no atributo «folhas» a lista de folhas de frequência do colaborador. Defaults to False.

  • data_frequencia (string, optional) – Obtém apenas as ocorrências de uma determinada data ou período. Este atributo pode ter 3 tipos de formatos: «<ano>», para obter todas as ocorrências de um determinado ano. «<mes>/<ano>», para obter todas as ocorrências de um determinado mês. E «<dia>/<mes>/<ano>», para obter as folhas de um dia específico. Defaults to None.

  • inclui_ocorrencias (bool, optional) – se inclui no atributo «ocorrencias» a lista de ocorrências registradas pelo colaborador. Defaults to False.

  • data_ocorrencias (string, optional) – obtém apenas as ocorrências de uma determinada data ou período. Este atributo pode ter 3 tipos de formatos: «<ano>», para obter todas as ocorrências de um determinado ano. «<mes>/<ano>», para obter todas as ocorrências de um determinado mês. E «<dia>/<mes>/<ano>», para obter as folhas de um dia específico. Defaults to None.

  • inclui_dependentes (bool, optional) – se inclui no atributo «dependentes» uma lista de dependentes. Defaults to False.

  • inclui_exercicios (bool, optional) – se inclui no atributo «exercicios» uma lista de uorgs em que o usuário esteve lotado. Defaults to False.

  • inclui_jornada_trabalho (bool, optional) – se inclui no atributo «jornadaTrabalho» informações históricas sobre a jornada de trabalho do colaborador. Defaults to False.

  • inclui_telefones (bool, optional) – se inclui no atributo «telefones» uma lista de telefones cadastrados do colaborador. Defaults to False.

  • inclui_substituicoes (bool, optional) – se inclui uma lista de substituições de funções do colaborador. Defaults to False.

Retorno:

Array de dicts de colaboradores.

Tipo de retorno:

dict

get_uorg(id_uorg=None, sigla=None, sigla_pai=None, inclui_funcoes=False, inclui_inativas=False, inclui_subuorgs=False)[código fonte]

Obtém dados da Uorg.

Parâmetros:
  • id_uorg (_type_, optional) – Buscar pelo ID da Uorg. Defaults to None.

  • sigla (_type_, optional) – Buscar pela sigla da Uorg. Defaults to None.

  • sigla_pai (_type_, optional) – Buscar pela sigla pai da Uorg. Defaults to None.

  • inclui_funcoes (bool, optional) – se inclui as funções e os colaboradores que ocuparam as funções da uorg. Defaults to False.

  • inclui_inativas (bool, optional) – se inclui unidades inativas no resultado. Defaults to False.

  • inclui_subuorgs (bool, optional) – traz não somente a uorg em questão, mas também todas as suas subUorgs, no atributo subUorgs. Defaults to False.

Retorno:

Dicts de dados da Uorg.

Tipo de retorno:

dict

get_uorgs(id_nivel=None, id_uorg_pai=None, inclui_funcoes=False, inclui_inativas=False, inclui_subuorgs=False)[código fonte]

Obtém dados de várias uorgs.

Parâmetros:
  • id_nivel (_type_, optional) – Busca pelo nível da Uorg. Defaults to None.

  • id_uorg_pai (_type_, optional) – Busca pelo ID da Uorg. Defaults to None.

  • inclui_funcoes (bool, optional) – se inclui as funções e os colaboradores que ocuparam as funções da uorg. Defaults to False.

  • inclui_inativas (bool, optional) – se inclui unidades inativas no resultado. Defaults to False.

  • inclui_subuorgs (bool, optional) – traz não somente a uorg em questão, mas também todas as suas subUorgs, no atributo subUorgs. Defaults to False.

Retorno:

Dicts de dados da Uorg.

Tipo de retorno:

dict

get_uorgs_stn()[código fonte]

Obtém toda a hierarquia de uorgs da STN.

Retorno:

Dict contendo a Uorg STN + todas as subuorgs na propriedade subUorgs.

Tipo de retorno:

dict