insoft-escala-jornadas-api
-
A insoft-escala-jornadas-api é uma aplicação responsável pela integração com o sistema Escala Jornadas.
Jobs
A aplicação possui 3 jobs que rodam periódicamente:
-
Envio de cargos e funcionários:
- Frequência de execução: A cada 1 minuto
- Comportamento: Primeiro, o envio de cargos é realizado consultando a
ponteiros_cargos_escalas, em seguida são enviados os funcionários consultando aponteiros_funcionarios_escalas. Em ambas tabelas os registros devem estar na situação liberado.
-
Envio de saldos de banco de horas:
- Frequência de execução: Todo dia às 12:00
- Comportamento: Primeiro é feito o bloqueio dos registros da
ponteiros_saldos_escalasque estiverem com a situação de liberado ou erro. Após o bloqueio dos registros antigos, são enviados os saldos de banco de horas consultando a viewv_saldos_bancos_escalas, os envios que tiverem erro serão registrados naponteiros_saldos_escalaspara visualização e reprocessamento.
-
Reenvio de saldos de banco de horas:
- Frequência de execução: A cada 1 minuto
- Comportamento: O reenvio dos saldos é feito com a consulta da
ponteiros_saldos_escalasonde a situação for liberado.
Endpoints
A API possui o endpoint
/v1/sincronizacao/funcionariosque pode ser acessado pelo navegador para sincronizar os funcionários já cadastrados no sistema externo.Instruções para desenvolvimento
Requisitos
- Tomcat 9
- Java 11
Instalação
-
Criar arquivo de configuração da aplicação:
Opção 1:
Criar arquivo de configuração na home do usuário com a seguinte estrutura de pastas:
$HOME/.grails/insoft-escala-jornadas-apiConfig/application.ymlOpção 2:
Definir o parâmetro da JVM
app.base.config.directoryindicando o diretório base de configuração:-Dapp.base.config.directory=/home/username/configsNo exemplo acima, a aplicação irá carregar o arquivo de configuração no caminho:
/home/username/configs/insoft-escala-jornadas-apiConfig/application.yml -
Definir conexão com o banco de dados no
application.yml:dataSource: url: jdbc:oracle:thin:@localhost:1521:pdb01 username: 'ponto7' password: 'ponto7' -
Configurar token de autenticação do Escala Jornadas:
escala: url: https://jornadas-dev.escala.app/api/v2 # para HML # url: https://jornadas.escala.app/api/v2 # para PROD # token: '9e9b44b7-0095-4990-a516-dfdb7f82c93d' # para HML token: 'token'
-
-
A partir da versão 1.3.0 foi adicionada a integração de eventos entre os sistemas.
JOBS
- Envio de eventos
- Frequência de execução: A cada 1 minuto
- Comportamento: Envia os eventos da
ponteiros_eventos_escalasque estão com asituacao=1(LIBERADO) eorigem=P(PONTOSOFT), o banco atualiza asituacaodos registros a cada 10 envios, envios bem sucedidos irão registrar o id do evento na colunaid_evento_escala.
ENDPOINTS
Foi criado o endpoint de callback
/v1/eventopara o recebimento de eventos adjacentes do sistema Escala Jornadas.CONFIGURAÇÃO
O novo endpoint de callback possui uma validação de segurança através de Bearer token, é necessário configurar o token na aplicação para o correto funcionamento:
api.bearerToken: 019a7d1c-3681-7623-8a74-603594d050c3REQUISITOS
- Externalizar somente o endpoint
/v1/eventoatravés de um proxy reverso - Configurar o token
- O cliente deve repassar a url e token para o sistema externo efetuar a integração
- Envio de eventos