13 lines
578 B
SQL
13 lines
578 B
SQL
-- Ensure GM has all module permissions
|
|
-- Run: npx prisma db execute --file prisma/ensure-gm-permissions.sql
|
|
|
|
INSERT INTO position_permissions (id, "positionId", module, resource, actions, "createdAt", "updatedAt")
|
|
SELECT gen_random_uuid(), p.id, m.module, '*', '["*"]', NOW(), NOW()
|
|
FROM positions p
|
|
CROSS JOIN (VALUES ('contacts'), ('crm'), ('inventory'), ('projects'), ('hr'), ('marketing'), ('admin')) AS m(module)
|
|
WHERE p.code = 'GM'
|
|
AND NOT EXISTS (
|
|
SELECT 1 FROM position_permissions pp
|
|
WHERE pp."positionId" = p.id AND pp.module = m.module AND pp.resource = '*'
|
|
);
|