add now features
This commit is contained in:
30
backend/src/database/migrations/012_create_ausbildung.sql
Normal file
30
backend/src/database/migrations/012_create_ausbildung.sql
Normal file
@@ -0,0 +1,30 @@
|
||||
-- Add FDISK Standesbuch-Nr to mitglieder_profile for sync matching
|
||||
ALTER TABLE mitglieder_profile
|
||||
ADD COLUMN IF NOT EXISTS fdisk_standesbuch_nr VARCHAR(32) UNIQUE;
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_mitglieder_fdisk_standesbuch_nr
|
||||
ON mitglieder_profile(fdisk_standesbuch_nr);
|
||||
|
||||
-- Qualifications synced from FDISK
|
||||
CREATE TABLE IF NOT EXISTS ausbildung (
|
||||
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
user_id UUID NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
||||
kursname VARCHAR(255) NOT NULL,
|
||||
kurs_datum DATE,
|
||||
ablaufdatum DATE,
|
||||
ort VARCHAR(255),
|
||||
status VARCHAR(32) NOT NULL DEFAULT 'abgeschlossen' CHECK (status IN (
|
||||
'abgeschlossen', 'in_bearbeitung', 'abgelaufen'
|
||||
)),
|
||||
-- Composite key from FDISK to prevent duplicates on re-sync
|
||||
fdisk_sync_key VARCHAR(255),
|
||||
bemerkung TEXT,
|
||||
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
|
||||
updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
|
||||
CONSTRAINT uq_ausbildung_user_fdisk_key UNIQUE (user_id, fdisk_sync_key)
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_ausbildung_user_id ON ausbildung(user_id);
|
||||
|
||||
CREATE TRIGGER update_ausbildung_updated_at BEFORE UPDATE ON ausbildung
|
||||
FOR EACH ROW EXECUTE FUNCTION update_updated_at_column();
|
||||
@@ -0,0 +1,6 @@
|
||||
-- Migration 013: Add Nextcloud credentials to users
|
||||
-- Stores per-user Nextcloud login name and app password for Nextcloud API access.
|
||||
|
||||
ALTER TABLE users
|
||||
ADD COLUMN IF NOT EXISTS nextcloud_login_name VARCHAR(255),
|
||||
ADD COLUMN IF NOT EXISTS nextcloud_app_password TEXT;
|
||||
Reference in New Issue
Block a user