diff --git a/backend/src/database/migrations/055_fix_wissen_bestellungen_permissions.sql b/backend/src/database/migrations/055_fix_wissen_bestellungen_permissions.sql index f9ac491..12fd114 100644 --- a/backend/src/database/migrations/055_fix_wissen_bestellungen_permissions.sql +++ b/backend/src/database/migrations/055_fix_wissen_bestellungen_permissions.sql @@ -2,6 +2,21 @@ -- Re-seeds permissions that may be missing due to migration ordering or cascade deletes. -- Uses ON CONFLICT DO NOTHING — safe to run multiple times. +-- 1. Ensure feature groups exist +INSERT INTO feature_groups (id, label, sort_order) VALUES + ('wissen', 'Wissen', 7), + ('bestellungen','Bestellungen',11) +ON CONFLICT (id) DO NOTHING; + +-- 2. Ensure the permissions themselves exist +INSERT INTO permissions (id, feature_group_id, label, description, sort_order) VALUES + ('wissen:view', 'wissen', 'Ansehen', 'Wissen-Seite anzeigen', 1), + ('wissen:widget_recent', 'wissen', 'Widget: Letzte', 'Dashboard-Widget letzte Seiten', 2), + ('wissen:widget_search', 'wissen', 'Widget: Suche', 'Dashboard-Widget für BookStack-Suche', 3), + ('bestellungen:view', 'bestellungen', 'Ansehen', 'Bestellungen einsehen', 1) +ON CONFLICT (id) DO NOTHING; + +-- 3. Seed these permissions for all dashboard_ groups that have any permissions DO $$ DECLARE grp TEXT;