重构:统一财务派生数据真源与重建

This commit is contained in:
yml2213
2026-11-08 19:44:27 +08:00
parent bae9a5ae5e
commit f8cbb645fe
14 changed files with 1011 additions and 541 deletions
+22 -12
View File
@@ -70,14 +70,14 @@ FROM (
-- 03 履约渠道/状态回填 -----------------------------------------------------
INSERT INTO _launch_checks
SELECT 3, '03', '履约渠道与状态合法(fulfillment_channel/status)',
SELECT 3, '03', '履约状态合法(fulfillments.status)',
v::text, '0',
CASE WHEN v = 0 THEN 'PASS' ELSE 'FAIL' END,
'存在非法状态:检查迁移 112 与渠道判定管道(channel_assign)'
'存在非法状态:检查迁移 163 与履约状态写入口'
FROM (
SELECT count(*) AS v
FROM order_items
WHERE fulfillment_status NOT IN ('pending', 'assigned', 'archived')
FROM fulfillments
WHERE status NOT IN ('pending', 'assigned', 'archived')
) s;
-- 04 履约渠道取值合法 ------------------------------------------------------
@@ -85,12 +85,17 @@ INSERT INTO _launch_checks
SELECT 4, '04', '履约渠道取值合法',
v::text, '0',
CASE WHEN v = 0 THEN 'PASS' ELSE 'FAIL' END,
'存在未知 fulfillment_channel,检查渠道规则与管道写入'
'存在未知 fulfillments.channel,检查渠道规则与履约状态写入口'
FROM (
SELECT count(*) AS v
FROM order_items
WHERE fulfillment_status = 'assigned'
AND fulfillment_channel NOT IN ('work_order', 'affiliate_dash', 'third_party_voucher', 'manual')
FROM fulfillments
WHERE status = 'assigned'
AND (
channel IS NULL
OR channel NOT IN (
'work_order', 'affiliate_dash', 'third_party_voucher', 'manual', 'on_account'
)
)
) s;
-- 05 商品目录 --------------------------------------------------------------
@@ -113,7 +118,7 @@ FROM (
(SELECT count(*) FROM cost_versions
WHERE status = 'active' AND (amount_fen > 0 OR rate_bps > 0)) AS priced_versions,
(SELECT count(*) FROM cost_snapshots
WHERE superseded_at IS NULL AND total_amount_fen > 0) AS positive_snapshots
WHERE superseded_at IS NULL AND reversed_at IS NULL AND total_amount_fen > 0) AS positive_snapshots
) s;
-- 07 客服备用金账户 --------------------------------------------------------
@@ -140,7 +145,7 @@ SELECT 8, '08', '上线后人工项已匹配履约配置',
'商品与成本 → 人工 SKU 配置 →「扫描」并逐项配置;保存后会自动回填近 30 天'
FROM (
SELECT count(*) AS v
FROM order_items oi
FROM v_order_item_current oi
WHERE oi.fulfillment_status = 'assigned'
AND oi.fulfillment_channel = 'manual'
AND oi.created_at >= :'launch_at'::timestamptz
@@ -155,7 +160,7 @@ SELECT 9, '09', '上线后人工项均已确认履约(关账门槛)',
'待办量:有未确认人工单就会 FAIL,不宜当日常健康检查;订单列表/详情 →「确认履约」后写 manual_case 快照并扣备用金/积分'
FROM (
SELECT count(*) AS v
FROM order_items oi
FROM v_order_item_current oi
WHERE oi.fulfillment_status = 'assigned'
AND oi.fulfillment_channel = 'manual'
AND oi.created_at >= :'launch_at'::timestamptz
@@ -164,6 +169,7 @@ FROM (
WHERE cs.subject_type = 'manual_case'
AND cs.order_item_id = oi.id
AND cs.superseded_at IS NULL
AND cs.reversed_at IS NULL
)
) s;
@@ -178,7 +184,10 @@ FROM (
FROM (
SELECT order_item_id
FROM cost_snapshots
WHERE subject_type = 'manual_case' AND superseded_at IS NULL
WHERE subject_type = 'manual_case'
AND superseded_at IS NULL
AND reversed_at IS NULL
AND subject_id > 0
GROUP BY 1
HAVING count(*) > 1
) dup
@@ -199,6 +208,7 @@ FROM (
ON me.id = NULLIF(cs.metadata_json->>'fundExpenseId', '')::bigint
WHERE cs.subject_type = 'manual_case'
AND cs.superseded_at IS NULL
AND cs.reversed_at IS NULL
AND cs.created_at >= :'launch_at'::timestamptz
AND cs.total_amount_fen <> me.amount_fen
) s;