Files
junhong_cmp_fiber/migrations/archive/000069_add_order_expiration.up.sql

25 lines
883 B
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.
-- 添加订单过期时间字段和复合索引
DO $$
BEGIN
-- 添加 expires_at 字段订单过期时间NULL 表示不过期)
IF NOT EXISTS (
SELECT 1 FROM information_schema.columns
WHERE table_name='tb_order'
AND column_name='expires_at'
) THEN
ALTER TABLE tb_order ADD COLUMN expires_at TIMESTAMPTZ;
COMMENT ON COLUMN tb_order.expires_at IS '订单过期时间NULL表示不过期待支付订单默认30分钟后过期';
END IF;
-- 创建复合索引:用于定时任务扫描超时待支付订单
IF NOT EXISTS (
SELECT 1 FROM pg_indexes
WHERE tablename='tb_order'
AND indexname='idx_order_expires'
) THEN
CREATE INDEX idx_order_expires ON tb_order (expires_at, payment_status)
WHERE expires_at IS NOT NULL AND deleted_at IS NULL;
END IF;
END
$$;