feat: gift card breakdown - migrations, fdw queries, finance recharge task, board-finance page updates
This commit is contained in:
53
scripts/ops/verify_gift_card_breakdown.sql
Normal file
53
scripts/ops/verify_gift_card_breakdown.sql
Normal file
@@ -0,0 +1,53 @@
|
||||
-- ============================================================
|
||||
-- 赠送卡细分数据一致性验证脚本
|
||||
-- 用途:ETL 跑数完成后,验证 DWS 层赠送卡细分字段的数据正确性
|
||||
-- 关联需求:Requirements 10.1, 10.2, 10.3
|
||||
-- ============================================================
|
||||
|
||||
-- ------------------------------------------------------------
|
||||
-- 1. 验证余额恒等式 (Requirement 10.3)
|
||||
-- gift_card_balance = gift_liquor_balance + gift_table_fee_balance + gift_voucher_balance
|
||||
-- 预期结果:空集(无违反恒等式的记录)
|
||||
-- ------------------------------------------------------------
|
||||
SELECT site_id, stat_date,
|
||||
gift_card_balance,
|
||||
gift_liquor_balance + gift_table_fee_balance + gift_voucher_balance AS sum_breakdown,
|
||||
gift_card_balance - (gift_liquor_balance + gift_table_fee_balance + gift_voucher_balance) AS diff
|
||||
FROM dws.dws_finance_recharge_summary
|
||||
WHERE gift_card_balance != gift_liquor_balance + gift_table_fee_balance + gift_voucher_balance;
|
||||
|
||||
-- ------------------------------------------------------------
|
||||
-- 2. 验证新增恒等式 (Requirement 10.2 隐含)
|
||||
-- recharge_gift = gift_liquor_recharge + gift_table_fee_recharge + gift_voucher_recharge
|
||||
-- 预期结果:空集(无违反恒等式的记录)
|
||||
-- ------------------------------------------------------------
|
||||
SELECT site_id, stat_date,
|
||||
recharge_gift,
|
||||
gift_liquor_recharge + gift_table_fee_recharge + gift_voucher_recharge AS sum_breakdown,
|
||||
recharge_gift - (gift_liquor_recharge + gift_table_fee_recharge + gift_voucher_recharge) AS diff
|
||||
FROM dws.dws_finance_recharge_summary
|
||||
WHERE recharge_gift != gift_liquor_recharge + gift_table_fee_recharge + gift_voucher_recharge;
|
||||
|
||||
-- ------------------------------------------------------------
|
||||
-- 3. 验证 DWS 与 DWD 源数据一致 (Requirement 10.1)
|
||||
-- DWS 各类型余额 = DWD dim_member_card_account 对应 card_type_id 的 balance 之和
|
||||
-- 预期结果:DWS 行与 DWD 行的 liquor/table_fee/voucher 数值一致
|
||||
-- card_type_id 映射:
|
||||
-- 2794699703437125 → 酒水卡 (liquor)
|
||||
-- 2791990152417157 → 台费卡 (table_fee)
|
||||
-- 2793266846533445 → 抵用券 (voucher)
|
||||
-- ------------------------------------------------------------
|
||||
SELECT 'DWS' AS source,
|
||||
SUM(gift_liquor_balance) AS liquor,
|
||||
SUM(gift_table_fee_balance) AS table_fee,
|
||||
SUM(gift_voucher_balance) AS voucher
|
||||
FROM dws.dws_finance_recharge_summary
|
||||
WHERE stat_date = CURRENT_DATE
|
||||
UNION ALL
|
||||
SELECT 'DWD',
|
||||
SUM(CASE WHEN card_type_id = 2794699703437125 THEN balance ELSE 0 END),
|
||||
SUM(CASE WHEN card_type_id = 2791990152417157 THEN balance ELSE 0 END),
|
||||
SUM(CASE WHEN card_type_id = 2793266846533445 THEN balance ELSE 0 END)
|
||||
FROM dwd.dim_member_card_account
|
||||
WHERE scd2_is_current = 1 AND COALESCE(is_delete, 0) = 0
|
||||
AND card_type_id IN (2794699703437125, 2791990152417157, 2793266846533445);
|
||||
Reference in New Issue
Block a user