Fix resource deletion

This commit is contained in:
Abhishek Shroff
2024-03-05 12:50:56 +05:30
parent ebfcbf095a
commit 00b7586fcb
6 changed files with 73 additions and 6 deletions
+13
View File
@@ -56,4 +56,17 @@ WITH RECURSIVE nodes(id, parent) AS (
UPDATE resources
SET deleted = NOW()
WHERE id in (SELECT id FROM nodes)
RETURNING *;
-- name: HardDeleteRecursive :many
WITH RECURSIVE nodes(id, parent) AS (
SELECT r.id, r.parent
FROM resources r WHERE r.id = @id::uuid
UNION ALL
SELECT r.id, r.parent
FROM resources r JOIN nodes n on r.parent = n.id
WHERE deleted IS NULL
)
DELETE FROM resources
WHERE id in (SELECT id FROM nodes)
RETURNING *;