feat: enhance watchlist workflow
This commit is contained in:
21
apps/api/migrations/202606240004_watchlist_enhancements.sql
Normal file
21
apps/api/migrations/202606240004_watchlist_enhancements.sql
Normal file
@@ -0,0 +1,21 @@
|
||||
ALTER TABLE app.watchlist_items
|
||||
ADD COLUMN IF NOT EXISTS label TEXT NOT NULL DEFAULT 'general',
|
||||
ADD COLUMN IF NOT EXISTS priority TEXT NOT NULL DEFAULT 'medium',
|
||||
ADD COLUMN IF NOT EXISTS trigger_operator TEXT NOT NULL DEFAULT 'lte',
|
||||
ADD COLUMN IF NOT EXISTS trigger_price_psm DOUBLE PRECISION CHECK (trigger_price_psm >= 0),
|
||||
ADD COLUMN IF NOT EXISTS last_reviewed_at TIMESTAMPTZ;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS app.watchlist_events (
|
||||
event_id BIGSERIAL PRIMARY KEY,
|
||||
watchlist_item_id BIGINT NOT NULL REFERENCES app.watchlist_items(watchlist_item_id) ON DELETE CASCADE,
|
||||
event_type TEXT NOT NULL,
|
||||
summary TEXT NOT NULL,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT now()
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_watchlist_items_label
|
||||
ON app.watchlist_items(label);
|
||||
CREATE INDEX IF NOT EXISTS idx_watchlist_items_priority
|
||||
ON app.watchlist_items(priority);
|
||||
CREATE INDEX IF NOT EXISTS idx_watchlist_events_item_created
|
||||
ON app.watchlist_events(watchlist_item_id, created_at DESC);
|
||||
Reference in New Issue
Block a user