rework internal order system

This commit is contained in:
Matthias Hochmeister
2026-03-24 08:11:32 +01:00
parent 742c37b8de
commit 99f02b8425
11 changed files with 792 additions and 397 deletions

View File

@@ -0,0 +1,26 @@
-- Migration 047: Update Ausrüstungsanfrage (Internal Orders) system
-- - Add bezeichnung column to ausruestung_anfragen
-- - Rename permissions: approve_requests → approve, view_overview → view_all
-- - Add new permission: ausruestungsanfrage:edit
-- 1. Add bezeichnung column to anfragen table
ALTER TABLE ausruestung_anfragen ADD COLUMN IF NOT EXISTS bezeichnung TEXT;
-- 2. Rename permissions
UPDATE permissions SET name = 'ausruestungsanfrage:approve'
WHERE name = 'ausruestungsanfrage:approve_requests';
UPDATE permissions SET name = 'ausruestungsanfrage:view_all'
WHERE name = 'ausruestungsanfrage:view_overview';
-- 3. Add new edit permission
INSERT INTO permissions (name, beschreibung, feature_group)
VALUES ('ausruestungsanfrage:edit', 'Alle Anfragen bearbeiten (unabhängig von Status/Besitzer)', 'ausruestungsanfrage')
ON CONFLICT (name) DO NOTHING;
-- 4. Grant new edit permission to groups that had approve_requests (now approve)
INSERT INTO group_permissions (group_name, permission_name)
SELECT gp.group_name, 'ausruestungsanfrage:edit'
FROM group_permissions gp
WHERE gp.permission_name = 'ausruestungsanfrage:approve'
ON CONFLICT DO NOTHING;