mirror of
https://git.meshkee.com/Meshkee/backend.git
synced 2026-08-12 06:40:58 +04:30
Initial commit: Meshkee CMS API
NestJS backend with Prisma, Docker Compose for Postgres/Redis, and deploy docs for the production VM.
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
-- Meshkee CMS — curated store specials (e.g. special sale, best sellers)
|
||||
|
||||
CREATE TABLE store_specials (
|
||||
id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
|
||||
business_id BIGINT NOT NULL,
|
||||
title VARCHAR(255) NOT NULL,
|
||||
sort_order INTEGER NOT NULL DEFAULT 0,
|
||||
is_active BOOLEAN NOT NULL DEFAULT TRUE,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
|
||||
CONSTRAINT store_specials_business_id_fkey
|
||||
FOREIGN KEY (business_id) REFERENCES businesses (id) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
CREATE INDEX idx_store_specials_business_id ON store_specials (business_id);
|
||||
|
||||
CREATE TRIGGER store_specials_set_updated_at
|
||||
BEFORE UPDATE ON store_specials
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION set_updated_at();
|
||||
|
||||
CREATE TABLE store_special_items (
|
||||
id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
|
||||
special_id BIGINT NOT NULL,
|
||||
store_item_id BIGINT NOT NULL,
|
||||
sort_order INTEGER NOT NULL DEFAULT 0,
|
||||
|
||||
CONSTRAINT store_special_items_special_id_fkey
|
||||
FOREIGN KEY (special_id) REFERENCES store_specials (id) ON DELETE CASCADE,
|
||||
CONSTRAINT store_special_items_store_item_id_fkey
|
||||
FOREIGN KEY (store_item_id) REFERENCES store_items (id) ON DELETE CASCADE,
|
||||
CONSTRAINT store_special_items_unique UNIQUE (special_id, store_item_id)
|
||||
);
|
||||
|
||||
CREATE INDEX idx_store_special_items_special_id ON store_special_items (special_id);
|
||||
CREATE INDEX idx_store_special_items_store_item_id ON store_special_items (store_item_id);
|
||||
Reference in New Issue
Block a user