From 68af1da97e4affe5b8ce52a8599f35344f12a3fe Mon Sep 17 00:00:00 2001 From: Dicken Date: Tue, 26 May 2026 15:52:10 +0200 Subject: [PATCH] Dateien nach "backend/src" hochladen --- backend/src/db.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/backend/src/db.js b/backend/src/db.js index 3de512c..306a4be 100644 --- a/backend/src/db.js +++ b/backend/src/db.js @@ -40,6 +40,29 @@ db.exec(` ); -- Tool: 3D-Kalkulator + CREATE TABLE IF NOT EXISTS calendar_feeds ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE, + name TEXT NOT NULL, + url TEXT NOT NULL, + color TEXT NOT NULL DEFAULT '#4ecdc4', + created_at DATETIME DEFAULT CURRENT_TIMESTAMP + ); + CREATE TABLE IF NOT EXISTS folders ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE, + name TEXT NOT NULL, + parent_id INTEGER REFERENCES folders(id) ON DELETE CASCADE, + created_at DATETIME DEFAULT CURRENT_TIMESTAMP + ); + CREATE TABLE IF NOT EXISTS folder_shares ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + folder_id INTEGER NOT NULL REFERENCES folders(id) ON DELETE CASCADE, + shared_by INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE, + shared_with INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE, + UNIQUE(folder_id, shared_with) + ); + CREATE TABLE IF NOT EXISTS files ( id INTEGER PRIMARY KEY AUTOINCREMENT, user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE, @@ -133,6 +156,10 @@ if (!ordCols.includes('bezahlt')) db.exec("ALTER TABLE orders ADD COLUMN beza if (!ordCols.includes('bezahlt_am')) db.exec("ALTER TABLE orders ADD COLUMN bezahlt_am DATETIME"); // Migrationen order_items +// files migrations +const fileCols = db.prepare("PRAGMA table_info(files)").all().map(r => r.name); +if (!fileCols.includes('folder_id')) db.exec("ALTER TABLE files ADD COLUMN folder_id INTEGER REFERENCES folders(id) ON DELETE SET NULL"); + const oiCols = db.prepare("PRAGMA table_info(order_items)").all().map(r => r.name); if (!oiCols.includes('stunden')) db.exec("ALTER TABLE order_items ADD COLUMN stunden REAL NOT NULL DEFAULT 0"); if (!oiCols.includes('custom_price')) db.exec("ALTER TABLE order_items ADD COLUMN custom_price REAL");