Completed db rewrite

This commit is contained in:
Manuel Forcén Muñoz 2025-04-16 23:24:23 +02:00
parent 54d7d14ef9
commit cf4b8e0119
19 changed files with 481 additions and 276 deletions

47
base.sql Normal file
View file

@ -0,0 +1,47 @@
CREATE TABLE users (
username TEXT PRIMARY KEY,
password TEXT NOT NULL
);
CREATE TABLE plans (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
owner TEXT REFERENCES users(username) NOT NULL,
description TEXT DEFAULT '',
join_code TEXT NOT NULL
);
CREATE TABLE members (
id INTEGER PRIMARY KEY AUTOINCREMENT,
plan_id INTEGER REFERENCES plans(id) NOT NULL,
name TEXT NOT NULL,
user_id TEXT REFERENCES users(username)
);
CREATE TABLE polls (
id INTEGER PRIMARY KEY AUTOINCREMENT,
plan_id INTEGER REFERENCES plans(id) NOT NULL,
options TEXT DEFAULT ''
);
CREATE TABLE votes (
poll_id INTEGER REFERENCES polls(id),
member_id INTEGER REFERENCES members(id),
value text,
PRIMARY KEY (poll_id,member_id)
);
CREATE TABLE expenses (
id INTEGER PRIMARY KEY AUTOINCREMENT,
plan_id INTEGER REFERENCES plans(id) NOT NULL,
payer_id INTEGER REFERENCES members(id) NOT NULL,
amount DECIMAL NOT NULL
);
CREATE TABLE debts (
expense_id INTEGER REFERENCES expenses(id) NOT NULL,
debtor_id INTEGER REFERENCES members(id) NOT NULL,
amount DECIMAL NOT NULL,
paid DECIMAL,
PRIMARY KEY (expense_id,debtor_id)
);