snglpi/src/controllers/processTicketsController.js
Rafael Lopes 35b4a1fef9 FIX/FEATURE: Ajustes de fluxo SN<->GLPI e documentação operacional
- feito ajuste do fluxo GLPI->SN para tratar status 5 (resolve no SN) e status 6 (aviso definitivo e retirada de monitoramento)
- feito ajuste de reabertura SN->GLPI quando ticket estiver solved no GLPI
- feito ajuste de data/hora de comments/worknotes para evitar inversão de data
- feito ajuste de vínculo Ticket Externo no SN com validação de persistência e retry idempotente
- feito ajuste de filtro de journals para ignorar SOTHIS.CAOA e admin.caoa por configuração
- feito inclusão de monitor dedicado de encerramento definitivo (processGlpiClosureController)
- feito atualização de flags de controle (ENABLE_STATUS_SYNC, ENABLE_GLPI_CLOSE_CRON, ENABLE_GLPI_WEBHOOK)
- feito atualização da documentação (README, docs/regrasdenegocio.md, docs/fluxo.md, docs/casosdeuso.md, docs/checklist.md)
2026-03-04 16:37:04 -03:00

23 lines
846 B
JavaScript

const { syncTicketsToGlpi } = require('../services/glpiTicketService');
const { processSyncController } = require('./processSyncController');
const { processPendingExternalTicketLinks } = require('../services/servicenowService');
const processTicketsController = async () => {
await processSyncController();
await syncTicketsToGlpi();
await processPendingExternalTicketLinks();
}
module.exports = {
processTicketsController
}
/**
* @file processTicketsController.js
* @description Este controlador gerencia o fluxo inicial de criação de tickets.
* Ele primeiro invoca o `processSyncController` para buscar e salvar localmente os tickets do ServiceNow.
* Em seguida, chama o serviço `syncTicketsToGlpi` para processar esses tickets locais e criá-los no GLPI,
* estabelecendo a ligação inicial entre os sistemas.
*/