优化任务状态投影和部署文档

This commit is contained in:
yml
2026-05-28 11:12:40 +08:00
parent 9709643583
commit ccc350cfea
15 changed files with 759 additions and 55 deletions
@@ -75,6 +75,8 @@ CREATE TABLE IF NOT EXISTS orders (
CREATE INDEX IF NOT EXISTS idx_orders_platform_order_lookup
ON orders(provider, platform, platform_order_id, id DESC);
CREATE INDEX IF NOT EXISTS idx_orders_created_at_desc
ON orders(created_at DESC);
CREATE TABLE IF NOT EXISTS order_items (
id BIGSERIAL PRIMARY KEY,
@@ -127,6 +129,10 @@ CREATE TABLE IF NOT EXISTS fulfillment_tasks (
CREATE INDEX IF NOT EXISTS idx_fulfillment_tasks_status ON fulfillment_tasks(task_status, delivery_status);
CREATE INDEX IF NOT EXISTS idx_fulfillment_tasks_order ON fulfillment_tasks(order_id, order_item_id);
CREATE INDEX IF NOT EXISTS idx_fulfillment_tasks_claim_token ON fulfillment_tasks(claim_token);
CREATE INDEX IF NOT EXISTS idx_fulfillment_tasks_platform_order_lookup
ON fulfillment_tasks(provider, platform, platform_order_id, id DESC);
CREATE INDEX IF NOT EXISTS idx_fulfillment_tasks_created_at_desc
ON fulfillment_tasks(created_at DESC);
CREATE TABLE IF NOT EXISTS claim_tokens (
id BIGSERIAL PRIMARY KEY,
@@ -169,3 +175,28 @@ CREATE TABLE IF NOT EXISTS task_runtime_contexts (
created_at TIMESTAMPTZ NOT NULL,
updated_at TIMESTAMPTZ NOT NULL
);
CREATE TABLE IF NOT EXISTS kuaishou_cloud_task_states (
task_id BIGINT PRIMARY KEY REFERENCES fulfillment_tasks(id) ON DELETE CASCADE,
ticket_status TEXT NOT NULL DEFAULT 'pending',
ticket_code_masked TEXT NOT NULL DEFAULT '',
bind_url TEXT NOT NULL DEFAULT '',
vn_phone TEXT NOT NULL DEFAULT '',
role_name TEXT NOT NULL DEFAULT '',
role_id TEXT NOT NULL DEFAULT '',
dispatch_status TEXT NOT NULL DEFAULT 'pending',
consume_status TEXT NOT NULL DEFAULT 'pending',
source_key TEXT NOT NULL DEFAULT '',
updated_at TIMESTAMPTZ NOT NULL
);
CREATE INDEX IF NOT EXISTS idx_kuaishou_cloud_task_states_role_id
ON kuaishou_cloud_task_states(role_id);
CREATE INDEX IF NOT EXISTS idx_kuaishou_cloud_task_states_source_key
ON kuaishou_cloud_task_states(source_key);
CREATE INDEX IF NOT EXISTS idx_kuaishou_cloud_task_states_dispatch_status
ON kuaishou_cloud_task_states(dispatch_status);
CREATE INDEX IF NOT EXISTS idx_kuaishou_cloud_task_states_consume_status
ON kuaishou_cloud_task_states(consume_status);
CREATE INDEX IF NOT EXISTS idx_kuaishou_cloud_task_states_updated_at_desc
ON kuaishou_cloud_task_states(updated_at DESC);