iloom-flatten/migrations/20260530_002_update_share_links.sql
github-actions[bot] b6e2e526d9 sync: Add files via upload
重大版本更新 (A@029ab8fcd9c4f587ce7a2394252868172d8e5d79)
2026-06-04 13:57:36 +00:00

44 lines
1.7 KiB
SQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- 更新 share_links 表,添加新流程所需字段
-- 添加链接状态字段
ALTER TABLE share_links ADD COLUMN IF NOT EXISTS status TEXT NOT NULL DEFAULT 'pending';
-- pending: 待点击
-- clicked: 已点击
-- confirmed: 已确认
-- rejected: 已拒绝
-- expired: 已过期
-- cancelled: 已取消
-- 添加点击时间字段
ALTER TABLE share_links ADD COLUMN IF NOT EXISTS clicked_at TIMESTAMPTZ;
-- 添加工厂确认/拒绝时间
ALTER TABLE share_links ADD COLUMN IF NOT EXISTS responded_at TIMESTAMPTZ;
-- 添加工厂响应结果
ALTER TABLE share_links ADD COLUMN IF NOT EXISTS response_result TEXT;
-- confirmed: 确认合作
-- rejected: 拒绝合作
-- 添加拒绝原因
ALTER TABLE share_links ADD COLUMN IF NOT EXISTS reject_reason TEXT;
-- 添加过期时间改为30分钟
ALTER TABLE share_links ADD COLUMN IF NOT EXISTS expires_at TIMESTAMPTZ;
-- 更新现有数据设置默认过期时间为创建后30分钟
UPDATE share_links
SET expires_at = COALESCE(expires_at, created_at + INTERVAL '30 minutes')
WHERE expires_at IS NULL;
-- 添加注释
COMMENT ON COLUMN share_links.status IS '链接状态pending-待点击, clicked-已点击, confirmed-已确认, rejected-已拒绝, expired-已过期, cancelled-已取消';
COMMENT ON COLUMN share_links.clicked_at IS '工厂点击链接的时间';
COMMENT ON COLUMN share_links.responded_at IS '工厂确认/拒绝的时间';
COMMENT ON COLUMN share_links.response_result IS '工厂响应结果confirmed-确认, rejected-拒绝';
COMMENT ON COLUMN share_links.reject_reason IS '拒绝原因';
-- 创建索引
CREATE INDEX IF NOT EXISTS idx_share_links_status ON share_links(status);
CREATE INDEX IF NOT EXISTS idx_share_links_expires ON share_links(expires_at);