<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[insoft-escala-jornadas-api]]></title><description><![CDATA[<p dir="auto">A insoft-escala-jornadas-api é uma aplicação responsável pela integração com o sistema Escala Jornadas.</p>
<h3>Jobs</h3>
<p dir="auto">A aplicação possui 3 jobs que rodam periódicamente:</p>
<ol>
<li>
<p dir="auto"><strong>Envio de cargos e funcionários:</strong></p>
<ul>
<li><strong>Frequência de execução:</strong> A cada 1 minuto</li>
<li><strong>Comportamento</strong>: Primeiro, o envio de cargos é realizado consultando a <code>ponteiros_cargos_escalas</code>, em seguida são enviados os funcionários consultando a <code>ponteiros_funcionarios_escalas</code>. Em ambas tabelas os registros devem estar na situação <strong>liberado</strong>.</li>
</ul>
</li>
<li>
<p dir="auto"><strong>Envio de saldos de banco de horas:</strong></p>
<ul>
<li><strong>Frequência de execução:</strong> Todo dia às 12:00</li>
<li><strong>Comportamento</strong>: Primeiro é feito o bloqueio dos registros da <code>ponteiros_saldos_escalas</code> que estiverem com a situação de <strong>liberado</strong> ou <strong>erro</strong>. Após o bloqueio dos registros antigos, são enviados os saldos de banco de horas consultando a view <code>v_saldos_bancos_escalas</code>, os envios que tiverem erro serão registrados na <code>ponteiros_saldos_escalas</code> para visualização e reprocessamento.</li>
</ul>
</li>
<li>
<p dir="auto"><strong>Reenvio de saldos de banco de horas:</strong></p>
<ul>
<li><strong>Frequência de execução:</strong> A cada 1 minuto</li>
<li><strong>Comportamento</strong>: O reenvio dos saldos é feito com a consulta da <code>ponteiros_saldos_escalas</code> onde a situação for <strong>liberado</strong>.</li>
</ul>
</li>
</ol>
<h3>Endpoints</h3>
<p dir="auto">A API possui o endpoint <code>/v1/sincronizacao/funcionarios</code> que pode ser acessado pelo navegador para sincronizar os funcionários já cadastrados no sistema externo.</p>
<h2>Instruções para desenvolvimento</h2>
<h3>Requisitos</h3>
<ul>
<li>Tomcat 9</li>
<li>Java 11</li>
</ul>
<h3>Instalação</h3>
<ol>
<li>
<p dir="auto">Criar arquivo de configuração da aplicação:</p>
<p dir="auto"><strong>Opção 1:</strong></p>
<p dir="auto">Criar arquivo de configuração na home do usuário com a seguinte estrutura de pastas:</p>
<pre><code>$HOME/.grails/insoft-escala-jornadas-apiConfig/application.yml
</code></pre>
<p dir="auto"><strong>Opção 2:</strong></p>
<p dir="auto">Definir o parâmetro da JVM <code>app.base.config.directory</code> indicando o diretório base de configuração:</p>
<pre><code>-Dapp.base.config.directory=/home/username/configs
</code></pre>
<p dir="auto">No exemplo acima, a aplicação irá carregar o arquivo de configuração no caminho:</p>
<pre><code>/home/username/configs/insoft-escala-jornadas-apiConfig/application.yml
</code></pre>
</li>
<li>
<p dir="auto">Definir conexão com o banco de dados no <code>application.yml</code>:</p>
<pre><code>dataSource:
    url: jdbc:oracle:thin:@localhost:1521:pdb01
    username: 'ponto7'
    password: 'ponto7'
</code></pre>
</li>
<li>
<p dir="auto">Configurar token de autenticação do Escala Jornadas:</p>
<pre><code>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'
</code></pre>
</li>
</ol>
]]></description><link>http://insoft-docker1:4567/topic/336/insoft-escala-jornadas-api</link><generator>RSS for Node</generator><lastBuildDate>Fri, 23 Oct 2026 07:26:24 GMT</lastBuildDate><atom:link href="http://insoft-docker1:4567/topic/336.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 30 Oct 2024 17:55:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to insoft-escala-jornadas-api on Tue, 25 Nov 2025 11:58:37 GMT]]></title><description><![CDATA[<p dir="auto">A partir da versão <strong>1.3.0</strong> foi adicionada a integração de eventos entre os sistemas.</p>
<h3>JOBS</h3>
<ol>
<li><strong>Envio de eventos</strong>
<ul>
<li><strong>Frequência de execução:</strong> A cada 1 minuto</li>
<li><strong>Comportamento:</strong> Envia os eventos da <code>ponteiros_eventos_escalas</code> que estão com a <code>situacao</code> = <code>1</code> (<strong>LIBERADO</strong>) e <code>origem</code> = <code>P</code> (<strong>PONTOSOFT</strong>), o banco atualiza a <code>situacao</code> dos registros a cada 10 envios, envios bem sucedidos irão registrar o id do evento na coluna <code>id_evento_escala</code>.</li>
</ul>
</li>
</ol>
<h3>ENDPOINTS</h3>
<p dir="auto">Foi criado o endpoint de callback <code>/v1/evento</code> para o recebimento de eventos adjacentes do sistema Escala Jornadas.</p>
<h3>CONFIGURAÇÃO</h3>
<p dir="auto">O novo endpoint de callback possui uma validação de segurança através de <strong>Bearer token</strong>, é necessário configurar o token na aplicação para o correto funcionamento:</p>
<pre><code class="language-sh">api.bearerToken: 019a7d1c-3681-7623-8a74-603594d050c3
</code></pre>
<h3>REQUISITOS</h3>
<ol>
<li>Externalizar somente o endpoint <code>/v1/evento</code> através de um proxy reverso</li>
<li>Configurar o token</li>
<li>O cliente deve repassar a url e token para o sistema externo efetuar a integração</li>
</ol>
]]></description><link>http://insoft-docker1:4567/post/598</link><guid isPermaLink="true">http://insoft-docker1:4567/post/598</guid><dc:creator><![CDATA[mateusroerig]]></dc:creator><pubDate>Tue, 25 Nov 2025 11:58:37 GMT</pubDate></item></channel></rss>