2023-07-26 14:47:20 (UTC-03:00)
Marcel Rodrigues <marcelgmr@gmail.com>
db: add priority, is_active, project color and ticket blocks
diff --git a/data.lua b/data.lua index 37a0300..1420b71 100644 --- a/data.lua +++ b/data.lua @@ -2,6 +2,12 @@ local lud = require "ludweb" local auth = require "auth" +--[[ +common data representations: + time INTEGER - unix timestamp + color INTEGER - 24-bits RGB; MSB is red, LSB is blue + priority INTEGER - no bounds; highest number <-> highest priority +]] local schema = [[ CREATE TABLE IF NOT EXISTS User ( id INTEGER PRIMARY KEY AUTOINCREMENT, @@ -17,8 +23,12 @@ CREATE TABLE IF NOT EXISTS Invite ( ); CREATE TABLE IF NOT EXISTS Project ( id INTEGER PRIMARY KEY AUTOINCREMENT, + time INTEGER NOT NULL, name TEXT NOT NULL UNIQUE, - desc TEXT + desc TEXT, + color INTEGER, + priority INTEGER NOT NULL, + is_active INTEGER NOT NULL ); CREATE TABLE IF NOT EXISTS Membership ( proj_id INTEGER REFERENCES Project(id), @@ -37,7 +47,14 @@ CREATE TABLE IF NOT EXISTS Ticket ( time INTEGER NOT NULL, code INTEGER NOT NULL, title TEXT NOT NULL, - desc TEXT + desc TEXT, + priority INTEGER NOT NULL, + is_active INTEGER NOT NULL +); +CREATE TABLE IF NOT EXISTS Block ( + blocked INTEGER REFERENCES Ticket(id), + blocker INTEGER REFERENCES Ticket(id), + PRIMARY KEY(blocked, blocker) ); CREATE TABLE IF NOT EXISTS Shift ( id INTEGER PRIMARY KEY AUTOINCREMENT,