snglpi/src/scripts/database/maintenance_reset.sql
Rafael Lopes e129571812 FIX: Correções de sincronização SN<->GLPI
- feito ajuste de direção de status para respeitar source_last e evitar reabertura indevida

- feito tratamento de reabertura SN->GLPI após resolução, mantendo bloqueio para fechamento permanente

- feito ajuste de finalização GLPI->SN para propagar resolução/fechamento corretamente

- feito correção de runtime no processStatusController (uso de variável antes da inicialização)

- feito correção para não prender ticket em status transitório de comentários

- feito preservação de ordem cronológica e datas reais de comments/work_notes SN no GLPI

- feito normalização de autor (ex.: email/login para nome amigável)

- feito destaque visual para mensagens automáticas e encerramento no GLPI

- feito sanitização de justificativa na regra de fora de escopo

- feito padronização de variáveis de ambiente e remoção de inconsistências de config

- feito separação de SQL destrutivo para arquivo de manutenção dedicado
2026-02-24 17:42:33 -03:00

26 lines
827 B
PL/PgSQL

-- =============================================
-- MANUTENCAO / RESET CONTROLADO - SN <-> GLPI
-- =============================================
-- Use este arquivo apenas para manutencao operacional.
-- Nao execute em producao sem backup e janela aprovada.
BEGIN;
-- Diagnostico rapido
SELECT * FROM ticket_sync WHERE glpi_sync_status != 'ignored';
SELECT * FROM tickets_sn WHERE status != 'Encerrado' AND status != 'Encerrado - Omitido';
SELECT * FROM public.location_mapping;
-- Limpeza de tickets abertos (mantem chamados encerrados)
DELETE FROM tickets_sn
WHERE status != 'Encerrado'
AND status != 'Encerrado - Omitido';
-- Reinicia watermarks para reprocessar coleta completa
UPDATE sync_control
SET last_watermark = '1970-01-01 00:00:00+00',
last_run_status = 'manual_reset',
last_run_at = NOW();
COMMIT;