Initial commit: Apothecary v0.4.0
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
CREATE TABLE IF NOT EXISTS shops (
|
||||
id TEXT PRIMARY KEY,
|
||||
name TEXT NOT NULL,
|
||||
location TEXT
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS brands (
|
||||
id TEXT PRIMARY KEY,
|
||||
name TEXT NOT NULL UNIQUE
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS bins (
|
||||
id TEXT PRIMARY KEY,
|
||||
name TEXT NOT NULL,
|
||||
location TEXT,
|
||||
capacity INTEGER NOT NULL DEFAULT 10
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS strains (
|
||||
id TEXT PRIMARY KEY,
|
||||
name TEXT NOT NULL,
|
||||
brand_id TEXT REFERENCES brands(id),
|
||||
type TEXT NOT NULL,
|
||||
default_thc REAL,
|
||||
default_cbd REAL,
|
||||
default_total_cannabinoids REAL,
|
||||
notes TEXT,
|
||||
created_at TEXT NOT NULL,
|
||||
UNIQUE(name, brand_id, type)
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_strains_brand_type ON strains(brand_id, type);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS products (
|
||||
id TEXT PRIMARY KEY,
|
||||
sku TEXT NOT NULL,
|
||||
asset_tag TEXT,
|
||||
name TEXT NOT NULL,
|
||||
brand_id TEXT REFERENCES brands(id),
|
||||
shop_id TEXT REFERENCES shops(id),
|
||||
bin_id TEXT REFERENCES bins(id),
|
||||
type TEXT NOT NULL,
|
||||
kind TEXT NOT NULL,
|
||||
weight REAL DEFAULT 0,
|
||||
last_audit_weight REAL,
|
||||
count_original INTEGER DEFAULT 0,
|
||||
count_last_audit INTEGER,
|
||||
unit_weight REAL DEFAULT 0,
|
||||
price REAL NOT NULL,
|
||||
thc REAL DEFAULT 0,
|
||||
cbd REAL DEFAULT 0,
|
||||
total_cannabinoids REAL DEFAULT 0,
|
||||
purchase_date TEXT NOT NULL,
|
||||
status TEXT NOT NULL DEFAULT 'active',
|
||||
consumed_date TEXT,
|
||||
gone_date TEXT,
|
||||
rating INTEGER,
|
||||
notes TEXT
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS audits (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
product_id TEXT NOT NULL REFERENCES products(id) ON DELETE CASCADE,
|
||||
date TEXT NOT NULL,
|
||||
mode TEXT NOT NULL,
|
||||
value REAL NOT NULL,
|
||||
prev_value REAL,
|
||||
confirmed_by TEXT
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_products_status ON products(status);
|
||||
CREATE INDEX IF NOT EXISTS idx_audits_product ON audits(product_id, date);
|
||||
Reference in New Issue
Block a user