CONTEÚDO
- Visão Geral
- Menu
- Integração
- Atualização/Dicionário
- Informações Técnicas APIs
- Documentos Relacionados
Desenvolvimento da interface no POUI e das APIs para integrar as informações dos funcionários e afastamentos ao sistema Ahgora.
Importante
Requisito para a rotina funcionar:
- Ativação do servidor REST na porta multiprotocolo, pelo uso da chave app_environment.
- A integração depende da aplicação da atualização liberada no pacote de expedição do módulo RH a partir de 04/10/2024 e da execução do UPDDISTR com o dicionário diferencial para os releases iguais ou superiores a versão 12.1.033;
- Configuração dos parâmetros MV_AHGORA1 e MV_AHGORA2, com o usuário e senha do integrador, esses dados serão disponibilizados pela Ahgora;
- Habilitar o parâmetro MV_RHAHGOR, para gerar inclusões e alterações geradas no Protheus na tabela de integração.
Cadastros Básicos para integração
Antes da integração, é necessário que existam cadastros básicos no sistema da Ahgora:
- Centro de Custo - Tabela CTT;
- Sindicato - Tabela RCE;
- Turno de trabalho - Tabela SR6;
- Tipos de afastamentos - Tabela RCM;
- Verbas - Tabela SRV; - Obs: As verbas serão usadas nos resultados enviados pela Ahgora para o protheus - Ahgora: API - Resultados
Os códigos deverão ser enviados concatenados com empresa/filial(Quando for exclusiva) e código do registro.
Observação
Os cadastros básicos serão realizados pela equipe de implantação. Quem estiver responsável pela implantação deverá extrair os dados do Protheus e concatenar os códigos correspondentes de cada empresa/filial antes de importá-los no sistema Ahgora.
Para essa extração no protheus, pode ser usada a consulta genérica.
Documentação: RH - Linha Protheus - GPE - Consulta de informações em arquivos por Consulta Genérica
Exemplo de extração de dados no protheus:
Meu cadastro de sindicato é compartilhado entre filiais, ou seja, o campo filial está vazio
Tabela RCE de sindicatos com o campo filial vazio:
O código da empresa que vou utilizar é 01:
Recomendamos gerar a tabela pela rotina 'Consulta Génerica'
Caminho no menu: Consultas > Cadastros > Genéricos;
Filtramos a tabela RCE de sindicatos e clicamos duas vezes em cima do nome da tabela:
Ao abrir a tabela, é possível ver que a filial está vazia, logo, é uma tabela compartilhada entre filiais.
Você pode escolher quais campos quer exportar, após isso, pode gerar o arquivo .CSV
O arquivo deverá ser editado para concatenação da empresa + código do sindicato conforme esperado pela Ahgora.
Para o código desse exemplo deverá ficar 0100, 0101, 0102. Onde 01 é o código da empresa seguido pelo código do sindicato.
Exemplo de uma tabela exclusiva por filial. SR6 - Turno de trabalho
Veja que ao abrir a consulta genérica dessa tabela, é mostrado o campo filial, logo, o código nesse caso será Empresa + Filial + Código do turno = 0101001
Foi efetuado a criação de parâmetros no dicionário SX6, conforme estrutura abaixo:
X6_VAR | X6_TIPO | X6_DESCRIC | Exemplo de preenchimento | Observações |
---|---|---|---|---|
MV_RHAHGOR | L | Habilita a integração de dados do Protheus com do sistema da Ahgora | .T. ou .F. | Para gerar informações na tabela RUM a partir das inclusões e alterações dos cadastros dos funcionários e afastamentos do GPE, este parâmetro deve ser habilitado |
MV_AHGORA1 | C | Usuário de acesso do ambiente de integração do sistema da Ahgora | User de integração do sistema Ahgora disponibilizado pela Ahgora | Para abrir a tela em POUI para integração, este parâmetro deve ser preenchido |
MV_AHGORA2 | C | Senha de acesso do ambiente de integração do sistema da Ahgora | Senha de integração do sistema Ahgora disponibilizado pela Ahgora | Para abrir a tela em POUI para integração, este parâmetro deve ser preenchido |
Observação
As informações de acesso ao ambiente da Ahgora devem ser solicitadas ao responsável do contrato da Ahgora.
Foi efetuado a criação de tabelas no dicionário SX2, conforme estrutura abaixo:
X2_CHAVE | X2_NOME | X2_MODO | X2_MODOUN | X2_MODOEMP |
---|---|---|---|---|
RUM | Lote de integração Ahgora | C | C | C |
Foi efetuado a criação de campos no dicionário SX3 conforme estrutura abaixo:
X3_ARQUIVO | X3_ORDEM | X3_CAMPO | X3_TIPO | X3_TAMANHO | X3_TITULO | X3_DESCRIC |
---|---|---|---|---|---|---|
RUM | 01 | RUM_FILIAL | C | 2 | Filial | Filial |
RUM | 02 | RUM_FIL | C | 2 | Filial Reg | Filial do Registro |
RUM | 03 | RUM_MAT | C | 6 | Matrícula | Matrícula |
RUM | 04 | RUM_CODINT | C | 40 | Código Inte. | Código Interno |
RUM | 05 | RUM_UNIQUE | C | 15 | Unique ID | Código do processamento |
RUM | 06 | RUM_SUBUNQ | C | 15 | Sub Unique | Código Sub Unique |
RUM | 07 | RUM_TIPO | C | 1 | Tipo API | Tipo API |
RUM | 08 | RUM_STATUS | C | 1 | Status | Status da integração |
RUM | 09 | RUM_TAB | C | 3 | Tabela | Tabela que foi manipulada |
RUM | 10 | RUM_KEY | C | 200 | Chave Reg. | Chave do Registro |
RUM | 11 | RUM_OPER | C | 1 | Operação | Operação |
RUM | 12 | RUM_TPINT | C | 1 | Tp. Integra. | Tipo de integração |
RUM | 13 | RUM_DATINT | D | 8 | Data Integ. | Data Integração |
RUM | 14 | RUM_HORINT | C | 8 | Hora Integ. | Hora da integração |
RUM | 15 | RUM_LOTE | M | 10 | Lote | Lote da integração |
RUM | 16 | RUM_RETORN | M | 10 | Lote Retorno | Lote de retorno |
RUM | 17 | RUM_STAMSN | M | 10 | Msn. Status | Mensagem do Status |
RUM | 18 | RUM_SEQAFA | C | 3 | Sequencia | Sequencia Afastamento |
RUM | 19 | RUM_DATAIN | D | 8 | Dt. Ini. Afa | Data Afastamento |
RUM | 20 | RUM_DATFUN | D | 8 | Dt. Alt. Fun | Data alteração da Função |
RUM | 21 | RUM_DATTUR | D | 8 | Dt.Alt Turno | Data alteração do turno |
RUM | 22 | RUM_DATTRA | D | 8 | Dt. Alt CNPJ | Data alteração CNPJ |
RUM | 23 | RUM_DATMOV | D | 8 | Dt Movimento | Data do movimento |
RUM | 24 | RUM_USER | C | 40 | Usuário | Usuário logado |
Foi efetuado a criação de índices no dicionário SIX conforme estrutura abaixo:
INDICE | ORDEM | CHAVE |
---|---|---|
RUM | 01 | RUM_FILIAL+RUM_TIPO+RUM_TPINT+RUM_CODINT |
RUM | 02 | RUM_FILIAL+RUM_TIPO+RUM_UNIQUE+RUM_SUBUNQ |
RUM | 03 | RUM_FILIAL+RUM_FIL+RUM_MAT+RUM_TIPO+RUM_CODINT |
RUM | 04 | RUM_FILIAL+RUM_TAB+RUM_OPER+RUM_KEY |
RUM | 05 | RUM_FILIAL+RUM_TIPO+RUM_SUBUNQ+RUM_UNIQUE |
RUM | 06 | RUM_FILIAL+RUM_KEY |
RUM | 07 | RUM_FILIAL+RUM_FIL+RUM_MAT+DTOS(RUM_DATINT)+RUM_HORINT+RUM_CODINT |
RUM | 08 | RUM_FILIAL+RUM_TIPO+RUM_OPER+DTOS(RUM_DATMOV)+RUM_CODINT |
RUM | 09 | RUM_FILIAL+RUM_OPER+DTOS(RUM_DATAIN)+RUM_CODINT |
Foi efetuado a criação de relacionamento no dicionário SX9 conforme estrutura abaixo:
X9_DOM | X9_IDENT | X9_CDOM | X9_EXPDOM | X9_EXPCDOM |
---|---|---|---|---|
SRA | 001 | RUM | RA_MAT | RUM_MAT |
Importante
- A integração depende da aplicação da atualização liberada no pacote de expedição do módulo RH a partir de 04/10/2024 e da execução do UPDDISTR com o dicionário diferencial para os releases iguais ou superiores a versão 12.1.033;
Informações Técnicas da API
Este detalhamento tem como objetivo registrar os endpoints da interface da integração com Ahgora, desenvolvida utilizando PO-UI.
Objetivo: Busca dos dados para listagem dos funcionários e envio dos funcionários selecionados para o back-end.
Tipo de requisição: GET/POST
Endpoint: /api/rh/v1/ahgora/funcionarios
Get:
Query Params:
Nome |
Descrição |
Tipo |
Obrigatório |
Exemplo |
page |
Número da página |
number | Sim |
1 |
pageSize |
Tamanho da página |
number | Sim |
100 |
dataAdmissaoDe |
Data de Admissão De |
string |
Sim |
"2023-01-02T16:37:02-03:00" |
dataAdmissaoAte |
Data de demissão do funcionário Até |
string |
Não |
"2024-01-02T16:37:02-03:00" |
branchCode |
Filial (Multi Valores separados por vírgula) |
string |
Sim |
“D MG 01,D MG 02” |
matCode |
Matrícula De |
string |
Não |
000001 |
matCodeAte |
Matrícula Até |
string |
Não |
000004 |
situacao |
Situação do funcionário (Multi Valores separados por vírgula) |
string |
Não |
N,A |
categoria |
Categoria do funcionário (Multi Valores separados por vírgula) |
string |
Não |
M,E |
tipostatus |
Tipo do status (Multi Valores separados por vírgula) |
string |
Não |
0-Não Integrados; 3-Com Inconsistências; 4-Aguardando Retorno; 6-Integrados; |
codCC |
Centro de custo De |
string |
Não |
001 |
codCCAte |
Centro de Custo Até |
string |
Não |
001 |
codFuncao |
Função De |
string |
Não |
001 |
codFuncaoAte |
Função Até |
string |
Não |
001 |
codDepto |
Departamento De |
string |
Não |
000000061 |
codDeptoAte |
Departamento Até |
string |
Não |
000000061 |
turnoCode |
Turno De |
string |
Não |
001 |
turnoCodeAte |
Turno Até |
string |
Não |
001 |
Estrutura de Retorno:
Campo |
Tipo |
Exemplo |
statusAhgora(obrigatório) |
string |
NI(Não Integrado), IN(Integrado), CI(Com inconsistência), AR(Aguardando retorno) |
matricula(obrigatório) |
string |
0101000001 |
dataAdmissao(obrigatório) |
string |
2024-01-01 |
dataDemissao |
string |
"" |
escala_padrao |
string |
001 |
cargo |
string |
001 - BIOMEDICO ASSIST. II |
departamento |
string |
001 - Departamento RH |
centroCusto |
string |
001 - CC Tecnologia |
codInterno(obrigatório) |
string |
01|01|040924 |
tpMovimento(obrigatório) |
string |
I(Inclusão), A(Alteração) |
dtMovimento(obrigatório) |
string |
2024-09-05 |
Exemplo de Requisição:
GET: api/rh/v1/ahgora/funcionarios?page=1&pageSize=100&dataAdmissaoDe=2024-01-01T17:29:41-03:00&dataAdmissaoAte=2024-09-05T17:29:41-03:00&branchCode=01,02&situacao=
N,A&categoria=M,E&tipostatus=0,6&codCC=001%20%20%20%20%20%20&codCCAte=001%20%20%20%20%20%20&codFuncao=001%20%20&codFuncaoAte=001%20%20&turnoCode=001&turnoCodeAte=001
Se atentar com a paginação.
Post: /api/rh/v1/ahgora/funcionarios
Nome |
Descrição |
Tipo |
Obrigatório |
Exemplo |
codInterno |
Código interno do funcionário |
string | Sim |
01|01|210824 |
dtMovimento |
Data do movimento |
string | Sim |
2024-09-05 |
tpMovimento |
Tipo do movimento |
string |
Sim |
I(Inclusão) |
A partir do filtro realizado, ao clicar em integrar funcionário, os dados serão enviados para o back-end.
Com os dados postados, o back-end se encarregará de montar o body para requisição de envio para o Ahgora: https://api.ahgora.com.br/people
Retorno do código unique e do subunique de processamento retornado pela Ahgora
Devolver o retorno para o POUI com o status da integração para que seja atualizado a lista, nesse caso 'AR' (Aguardando retorno), pois ainda não foi feita a consulta do subunique.
Estrutura de Retorno:
Campo |
Tipo |
Exemplo |
codInterno |
string |
01|01|210824 |
statusAhgora |
string |
AR |
Importante
Com o código unique em mãos, será necessário consultar o status do processamento na Ahgora. Pode ser feito após o envio antes do retorno para o POUI ou através do botão 'Atualizar Status' que está disponível na tela
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Busca dos dados para listagem dos afastamentos e envio dos afastamentos selecionados para o back-end.
Tipo de requisição: GET/POST
Endpoint: /api/rh/v1/ahgora/afastamentos
Get:
Query Params:
Nome |
Descrição |
Tipo |
Obrigatório |
Exemplo |
page |
Número da página |
number | Sim |
1 |
pageSize |
Tamanho da página |
number | Sim |
100 |
dataAfastDe |
Data Afastamento De |
string |
Sim |
"2019-01-02T16:37:02-03:00" |
dataAfastAte |
Data Afastamento Até |
string |
Não |
"2024-01-02T16:37:02-03:00" |
branchCode |
Filial (Multi Valores separados por vírgula) |
string |
Sim |
"01,02" |
matCode |
Matrícula De |
string |
Não |
000004 |
matCodeAte |
Matrícula Até |
string |
Não |
000004 |
situacao |
Situação do funcionário (Multi Valores separados por vírgula) |
string |
Não |
N,A |
categoria |
Categoria do funcionário (Multi Valores separados por vírgula) |
string |
Não |
M,E |
tipostatus |
Tipo do status (Multi Valores separados por vírgula) |
string |
Não |
0,6 |
codCC |
Centro de custo De |
string |
Não |
001 |
codCCAte |
Centro de Custo Até |
string |
Não |
001 |
codFuncao |
Função De |
string |
Não |
001 |
codFuncaoAte |
Função Até |
string |
Não |
001 |
codDepto |
Departamento De |
string |
Não |
000000061 |
codDeptoAte |
Departamento Até |
string |
Não |
000000061 |
turnoCode |
Turno De |
string |
Não |
001 |
turnoCodeAte |
Turno Até |
string |
Não |
001 |
Estrutura de Retorno:
Campo |
Tipo |
Exemplo |
statusAhgora(obrigatório) |
string |
NI(Não Integrado), IN(Integrado), CI(Com inconsistência), AR(Aguardando retorno) |
matricula(obrigatório) |
string |
0101000001 |
nome |
string |
John Doe |
motivo |
string |
004 - Afastamento Temporário por Doença |
inicio |
string |
2019-01-01 |
fim |
string |
2019-01-02 |
cod_interno(obrigatório) |
string |
01.01.000004.001 |
tpMovimento(obrigatório) |
string |
I(Inclusão) |
dtMovimento(obrigatório) |
string |
2024-09-06 |
Exemplo de Requisição:
GET: api/rh/v1/ahgora/afastamentos?page=1&pageSize=100&dataAfastDe=2000-01-01T08:39:02-03:00&dataAfastAte=2024-09-06T08:39:02-03:00&branchCode=01&
matCode=&matCodeAte=&situacao=&categoria=&tipostatus=&codCC=&codCCAte=&codFuncao=&codFuncaoAte=&codDepto=&codDeptoAte=&turnoCode=&turnoCodeAte=
Se atentar com a paginação.
Post: /api/rh/v1/ahgora/afastamentos
Nome |
Descrição |
Tipo |
Obrigatório |
Exemplo |
cod_interno |
Código interno do afastamento |
string | Sim |
01.01.000004.001 |
dtMovimento |
Data do movimento |
string | Sim |
2024-09-06 |
tpMovimento |
Tipo do movimento |
string |
Sim |
I(Inclusão) |
A partir do filtro realizado, ao clicar em integrar afastamento, os dados serão enviados para o back-end.
Com os dados postados, o back-end se encarregará de montar o body para requisição de envio para o Ahgora: https://api.ahgora.com.br/absences
Obs* Caso não exista data fim, enviar uma fictícia, exemplo: 31/12/2099
Retorno do código unique e o subunique de processamento retornado pela Ahgora
Devolver o retorno para o POUI com o status da integração para que seja atualizado a lista, nesse caso 'AR' (Aguardando retorno), pois ainda não foi feita a consulta do subunique.
Estrutura de Retorno:
Campo |
Tipo |
Exemplo |
codInterno |
string |
01.01.000004.001 |
statusAhgora |
string |
AR |
Importante
Com o código unique em mãos, será necessário consultar o status do processamento na Ahgora. Pode ser feito após o envio antes do retorno para o POUI ou através do botão 'Atualizar Status' que está disponível na tela
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Busca dos dados para listagem dos afastamentos excluídos e envio dos afastamentos excluídos selecionados para o back-end.
Tipo de requisição: GET/POST
Endpoint: /api/rh/v1/ahgora/afastamentos/exclusao
Get:
Query Params:
Nome |
Descrição |
Tipo |
Obrigatório |
Exemplo |
page |
Número da página |
number | Sim |
1 |
pageSize |
Tamanho da página |
number | Sim |
100 |
dataExcDe |
Data Exclusão De |
string |
Sim |
"2019-01-02T16:37:02-03:00" |
dataExcAte |
Data Exclusão Até |
string |
Não |
"2024-01-02T16:37:02-03:00" |
branchCode |
Filial (Multi Valores separados por vírgula) |
string |
Sim |
"01,02" |
matCode |
Matrícula De |
string |
Não |
000002 |
matCodeAte |
Matrícula Até |
string |
Não |
000002 |
situacao |
Situação do funcionário (Multi Valores separados por vírgula) |
string |
Não |
N,A |
categoria |
Categoria do funcionário (Multi Valores separados por vírgula) |
string |
Não |
M,E |
tipostatus |
Tipo do status (Multi Valores separados por vírgula) |
string |
Não |
0,6 |
codCC |
Centro de custo De |
string |
Não |
001 |
codCCAte |
Centro de Custo Até |
string |
Não |
001 |
codFuncao |
Função De |
string |
Não |
001 |
codFuncaoAte |
Função Até |
string |
Não |
001 |
codDepto |
Departamento De |
string |
Não |
000000061 |
codDeptoAte |
Departamento Até |
string |
Não |
000000061 |
turnoCode |
Turno De |
string |
Não |
001 |
turnoCodeAte |
Turno Até |
string |
Não |
001 |
Estrutura de Retorno:
Campo |
Tipo |
Exemplo |
statusAhgora(obrigatório) |
string |
NI(Não Integrado), IN(Integrado), CI(Com inconsistência), AR(Aguardando retorno) |
matricula(obrigatório) |
string |
0101000001 |
nome |
string |
John Doe |
motivo |
string |
004 - Afastamento Temporário por Doença |
inicio |
string |
2019-01-01 |
fim |
string |
2019-01-02 |
cod_interno(obrigatório) |
string |
01.01.000004.001 |
tpMovimento(obrigatório) |
string |
E(Inclusão) |
dtMovimento(obrigatório) |
string |
2024-09-06 |
Exemplo de Requisição:
GET: api/rh/v1/ahgora/afastamentos/exclusao?page=1&pageSize=100&dataExcDe=2000-01-01T09:03:57-03:00&dataExcAte=2024-09-06T09:03:57-03:00&
branchCode=01&matCode=&matCodeAte=&situacao=&categoria=&tipostatus=&codCC=&codCCAte=&codFuncao=&codFuncaoAte=&codDepto=&codDeptoAte=&turnoCode=&turnoCodeAte=
Se atentar com a paginação.
Post: /api/rh/v1/ahgora/afastamentos/exclusao
Nome |
Descrição |
Tipo |
Obrigatório |
Exemplo |
cod_interno |
Código interno do afastamento |
string | Sim |
01.01.000002.001 |
dtMovimento |
Data do movimento |
string | Sim |
2024-08-29 |
tpMovimento |
Tipo do movimento |
string |
Sim |
E(Exclusão) |
A partir do filtro realizado, ao clicar em integrar afastamento, os dados serão enviados para o back-end.
Com os dados postados, o back-end se encarregará de montar o body para requisição de envio para o Ahgora: https://api.ahgora.com.br/absences
Retorno do código unique e do subunique de processamento retornado pela Ahgora
Devolver o retorno para o POUI com o status da integração para que seja atualizado a lista, nesse caso 'AR' (Aguardando retorno), pois ainda não foi feita a consulta do subunique.
Estrutura de Retorno:
Campo |
Tipo |
Exemplo |
codInterno |
string |
01.01.000002.001 |
statusAhgora |
string |
AR |
Importante
Com o código unique em mãos, será necessário consultar o status do processamento na Ahgora. Pode ser feito após o envio antes do retorno para o POUI ou através do botão 'Atualizar Status' que está disponível na tela
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Obter o status da integração
Tipo de requisição: POST
Endpoint: /api/rh/v1/ahgora/status/
Query Params:
Campo |
Descrição |
Tipo |
Obrigatório |
Exemplo |
cApi |
Tipo da API: 1-People; 2-Absences; |
string |
SIM |
1 |
Ao selecionar os registros com status 'Aguardando retorno' e clicar no botão atualizar Status, os registros serão enviados para o back-end.
Exemplo de Requisição:
POST: api/rh/v1/ahgora/status/?cApi=1
POST: api/rh/v1/ahgora/status/?cApi=2
Com o código interno em mãos, será necessário encontrar o código subunique gravado anteriormente para fazer o get na API da Ahgora: https://api.ahgora.com.br/process/?subunique=1837fb40
Retorno do status da Ahgora para o subunique pesquisado.
Veja que nesse caso o retorno veio com 2 erros, que devem ser gravados para posterior consulta na tela.
Os erros precisam ser gravados separados por pipe quando existir mais de um, exemplo: Centro de custo inválido | CNPJ inválido
Estrutura de Retorno para o POUI:
Campo |
Tipo |
codInterno |
string |
statusAhgora |
string |
Como o retorno está com inconsistência, devolvo com status 'CI'
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Consulta status do registro com inconsistência posicionado na linha
Tipo de requisição: GET
Endpoint: /api/rh/v1/ahgora/status/:codInterno
Query Params:
Campo |
Descrição |
Tipo |
Obrigatório |
Exemplo |
cApi |
Tipo da API: 1-People; 2-Absences; |
string |
SIM |
1 |
Estrutura de Retorno:
Campo |
Tipo |
status |
string |
Exemplo de Requisição:
GET: api/rh/v1/ahgora/status/010100004?cApi=1
Buscamos o status do registro com inconsistência, no retorno da Ahgora caso exista mais de um erro deve ser separado por pipe conforme explicado na seção 'Atualizar Status'
O pipe é necessário para a quebra de linha e visualização em tela conforme imagem abaixo.
Obs* A numeração é feita pelo POUI.
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Consulta do lote de envio
Tipo de requisição: GET
Endpoint: /api/rh/v1/ahgora/lote/:codInterno
Query Params:
Campo |
Descrição |
Tipo |
Obrigatório |
Exemplo |
cApi |
Tipo da API: 1-People; 2-Absences; |
string |
SIM |
2 |
Estrutura de Retorno:
Campo |
Tipo |
lote |
string |
data |
string |
hora |
string |
Exemplo de Requisição:
GET: api/rh/v1/ahgora/lote/01.01.125803.001?cApi=2
Passamos o código interno do funcionário e o tipo da API para que possam encontrar o lote salvo anteriormente para o registro.
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Listagem de Filiais
Tipo de requisição: GET
Endpoint: /api/rh/v1/ahgora/branches
Query Params:
Campo |
Descrição |
Tipo |
Obrigatório |
Exemplo |
page |
Número da página |
number |
SIM |
1 |
pageSize |
Tamanho da página |
numer |
SIM |
50 |
filter |
Campo automático do lookup. Pode filtrar o código ou nome da filial |
string |
Não |
“Filial X” |
Estrutura de Retorno:
Para conseguirmos abranger todas as áreas, utilizamos a nomenclatura abaixo.
Campo |
Tipo |
branchCode |
string |
branchName |
string |
Exemplo de Requisição:
GET: api/rh/v1/ahgora/branches?filter=&page=1&pageSize=50
É possível também digitar no campo sem entrar no lookup para buscar uma filial.
Get: api/rh/v1/ahgora/branches/01
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Listagem das Matrículas
Tipo de requisição: GET
Endpoint: /api/rh/v1/ahgora/matricula
Query Params:
Campo |
Descrição |
Tipo |
Obrigatório |
Exemplo |
page |
Número da página |
number |
SIM |
1 |
pageSize |
Tamanho da página |
numer |
SIM |
50 |
filter |
Campo automático do lookup. Pode filtrar a matrícula |
string |
Não |
“Matrícula X” |
branchCode |
Código da filial que está no filtro |
string |
Não |
04 |
Obs* O filtro da filial é obrigatório, ele vai estar no filtro da matrícula caso queira retornar apenas as matrículas das filiais selecionadas.
Estrutura de Retorno:
Para conseguirmos abranger todas as áreas, utilizamos a nomenclatura abaixo.
Campo |
Tipo |
branchCode |
string |
branchName |
string |
Exemplo de Requisição:
GET: api/rh/v1/ahgora/matricula?filter=&page=1&pageSize=50&branchCode=04
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Listagem dos Turnos
Tipo de requisição: GET
Endpoint: /api/rh/v1/ahgora/turno
Query Params:
Campo |
Descrição |
Tipo |
Obrigatório |
Exemplo |
page |
Número da página |
number |
SIM |
1 |
pageSize |
Tamanho da página |
numer |
SIM |
50 |
filter |
Campo automático do lookup. Pode filtrar o turno |
string |
Não |
“Turno X” |
branchCode |
Código da filial que está no filtro |
string |
Não |
02 |
Obs* O filtro da filial é obrigatório, ele vai estar no filtro do turno caso queira retornar apenas os turnos das filiais selecionadas.
Estrutura de Retorno:
Campo |
Tipo |
filTurno |
string |
turnoCode |
string |
turnoDesc |
string |
Exemplo de Requisição:
GET: api/rh/v1/ahgora/turno?filter=&page=1&pageSize=50&branchCode=02
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Listagem dos Centros de Custo
Tipo de requisição: GET
Endpoint: /api/rh/v1/ahgora/ccusto
Query Params:
Campo |
Descrição |
Tipo |
Obrigatório |
Exemplo |
page |
Número da página |
number |
SIM |
1 |
pageSize |
Tamanho da página |
numer |
SIM |
50 |
filter |
Campo automático do lookup. Pode filtrar o C.Custo |
string |
Não |
“CCusto X” |
branchCode |
Código da filial que está no filtro |
string |
Não |
02 |
Obs* O filtro da filial é obrigatório, ele vai estar no filtro do centro de custo caso queira retornar apenas os centros de custo das filiais selecionadas.
Estrutura de Retorno:
Campo |
Tipo |
filCC |
string |
codCC |
string |
ccDesc |
string |
Exemplo de Requisição:
GET: api/rh/v1/ahgora/ccusto?filter=&page=1&pageSize=10&branchCode=02
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Listagem das Funções
Tipo de requisição: GET
Endpoint: /api/rh/v1/ahgora/funcao
Query Params:
Campo |
Descrição |
Tipo |
Obrigatório |
Exemplo |
page |
Número da página |
number |
SIM |
1 |
pageSize |
Tamanho da página |
numer |
SIM |
50 |
filter |
Campo automático do lookup. Pode filtrar o C.Custo |
string |
Não |
“Funcao X” |
branchCode |
Código da filial que está no filtro |
string |
Não |
02 |
Obs* O filtro da filial é obrigatório, ele vai estar no filtro da função caso queira retornar apenas as funções das filiais selecionadas.
Estrutura de Retorno:
Campo |
Tipo |
filFuncao |
string |
codFuncao |
string |
funcaoDesc |
string |
Exemplo de Requisição:
GET: api/rh/v1/ahgora/funcao?filter=&page=1&pageSize=10&branchCode=02
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Listagem dos Departamentos
Tipo de requisição: GET
Endpoint: /api/rh/v1/ahgora/departamento
Query Params:
Campo |
Descrição |
Tipo |
Obrigatório |
Exemplo |
page |
Número da página |
number |
SIM |
1 |
pageSize |
Tamanho da página |
numer |
SIM |
50 |
filter |
Campo automático do lookup. Pode filtrar o C.Custo |
string |
Não |
“Departamento X” |
branchCode |
Código da filial que está no filtro |
string |
Não |
02 |
Obs* O filtro da filial é obrigatório, ele vai estar no filtro da função caso queira retornar apenas os departamentos das filiais selecionadas.
Estrutura de Retorno:
Campo |
Tipo |
filDepto |
string |
codDepto |
string |
deptoDesc |
string |
Exemplo de Requisição:
GET: api/rh/v1/ahgora/departamento?filter=&page=1&pageSize=10&branchCode=02
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |
Objetivo: Listagem da situação do funcionário e categoria
Tipo de requisição: GET
Endpoint: /api/rh/v1/ahgora/opcoes
Obs* Sempre será retornado os dois conjuntos de dados na requisição, após a primeira requisição, os dois conjuntos ficaram em memória para consulta;
Estrutura de Retorno:
Para o retorno, utilizamos a forma abaixo.
Campo |
Tipo |
label |
string |
value |
string |
Exemplo de Requisição:
GET: /api/rh/v1/ahgora/opcoes
O retorno precisa ser uma lista com a propriedade 'items', com os dois arrays 'SitOptions' para a situação e 'catOptions' para as categorias.
Para o retorno de erro, seguir a estrutura abaixo.
Campo |
Tipo |
code |
number |
message |
string |
detailedMessage |
string |
type |
string (“error”, “warning”, “success”) |