feat: finish back-end work (untested)

This commit is contained in:
2025-11-12 12:58:21 -07:00
parent b6a08573f3
commit 8b351524b8
18 changed files with 300 additions and 27 deletions

View File

@@ -1,8 +1,15 @@
CREATE TABLE IF NOT EXISTS ordr_position (
id SERIAL NOT NULL PRIMARY KEY,
position_name TEXT NOT NULL
);
INSERT INTO ordr_position VALUES (0, 'Unassigned');
CREATE TABLE IF NOT EXISTS ordr_user (
id SERIAL NOT NULL PRIMARY KEY,
sub_id TEXT UNIQUE NOT NULL,
user_name TEXT NOT NULL,
position TEXT DEFAULT "",
position INTEGER NOT NULL DEFAULT 0 REFERENCES ordr_position ON DELETE SET NULL,
active BOOLEAN NOT NULL DEFAULT TRUE,
is_admin BOOLEAN NOT NULL DEFAULT FALSE
);
@@ -25,7 +32,7 @@ CREATE TABLE IF NOT EXISTS item (
);
CREATE TABLE IF NOT EXISTS item_price_history (
item_id INTEGER NOT NULL REFERENCES item(id),
item_id INTEGER NOT NULL REFERENCES item(id) ON DELETE CASCADE,
price REAL NOT NULL,
valid_from TIMESTAMP NOT NULL DEFAULT now(),
valid_to TIMESTAMP,
@@ -33,8 +40,8 @@ CREATE TABLE IF NOT EXISTS item_price_history (
);
CREATE TABLE IF NOT EXISTS order_item (
item_id INTEGER NOT NULL REFERENCES item(id),
order_id INTEGER NOT NULL REFERENCES order_record(id),
item_id INTEGER NOT NULL REFERENCES item(id) ON DELETE CASCADE,
order_id INTEGER NOT NULL REFERENCES order_record(id) ON DELETE CASCADE,
quantity INTEGER NOT NULL,
made INTEGER NOT NULL DEFAULT 0,
created_at TIMESTAMP NOT NULL DEFAULT now(),
@@ -48,6 +55,6 @@ CREATE TABLE IF NOT EXISTS label (
);
CREATE TABLE IF NOT EXISTS order_label (
order_id INTEGER NOT NULL REFERENCES order_record(id),
label_id INTEGER NOT NULL REFERENCES label(id)
);
order_id INTEGER NOT NULL REFERENCES order_record(id) ON DELETE CASCADE,
label_id INTEGER NOT NULL REFERENCES label(id) ON DELETE CASCADE
);