Files
aiform_prod/docs/SQL_MARK_FORM_APPROVED.sql

42 lines
1.3 KiB
MySQL
Raw Normal View History

-- SQL скрипт для n8n: Отметка формы как подтвержденной после получения данных из Redis канала
-- Используется после обработки события из канала clientright:webform:approve
--
-- Параметры:
-- $1 = claim_id (UUID или текст)
--
-- Обновляет:
-- - status_code = 'approved' (отмечает форму как подтвержденную)
-- - is_confirmed = true (дополнительный флаг подтверждения)
-- - updated_at = now() (время обновления)
--
-- После этого запись больше не будет показываться в списке черновиков
WITH claim_lookup AS (
SELECT
c.id,
c.payload,
c.status_code,
c.is_confirmed
FROM clpr_claims c
WHERE c.id::text = $1::text
OR c.payload->>'claim_id' = $1::text
ORDER BY
CASE WHEN c.id::text = $1::text THEN 1 ELSE 2 END,
c.updated_at DESC
LIMIT 1
)
UPDATE clpr_claims c
SET
status_code = 'approved',
is_confirmed = true,
updated_at = now()
FROM claim_lookup cl
WHERE c.id = cl.id
RETURNING
c.id,
c.payload->>'claim_id' AS claim_id,
c.status_code,
c.is_confirmed,
c.updated_at;