Files
cg_api_secure-webshare/migrations/003_forward_system.sql

38 lines
1.4 KiB
SQL

CREATE TABLE forward_definitions (
id INTEGER PRIMARY KEY AUTOINCREMENT,
creator_user_id INTEGER NOT NULL,
source_chat_id INTEGER NOT NULL,
destination_chat_id INTEGER NOT NULL,
review_group_id INTEGER NOT NULL,
forward_message TEXT NOT NULL DEFAULT '',
code TEXT NOT NULL UNIQUE,
share_mode TEXT NOT NULL DEFAULT 'b',
revoked_at TEXT,
created_at TEXT NOT NULL DEFAULT (datetime('now'))
);
CREATE INDEX idx_forward_code ON forward_definitions(code);
CREATE INDEX idx_forward_source ON forward_definitions(source_chat_id);
CREATE TABLE forward_submissions (
id INTEGER PRIMARY KEY AUTOINCREMENT,
forward_id INTEGER NOT NULL REFERENCES forward_definitions(id),
user_id INTEGER NOT NULL,
content_id TEXT NOT NULL REFERENCES contents(id),
status TEXT NOT NULL DEFAULT 'pending',
review_message_id INTEGER,
created_at TEXT NOT NULL DEFAULT (datetime('now')),
resolved_at TEXT,
resolver_id INTEGER
);
CREATE INDEX idx_fwd_sub_forward ON forward_submissions(forward_id);
CREATE INDEX idx_fwd_sub_user ON forward_submissions(user_id);
CREATE INDEX idx_fwd_sub_status ON forward_submissions(status);
CREATE TABLE forward_lists (
forward_id INTEGER NOT NULL REFERENCES forward_definitions(id),
user_id INTEGER NOT NULL,
list_type TEXT NOT NULL,
created_at TEXT NOT NULL DEFAULT (datetime('now')),
PRIMARY KEY (forward_id, user_id, list_type)
);