feat: batch update - gift card breakdown spec, backend APIs, miniprogram pages, ETL finance recharge, docs & migrations

This commit is contained in:
Neo
2026-03-20 01:43:48 +08:00
parent 075caf067f
commit 79f9a0e1da
437 changed files with 118603 additions and 976 deletions

View File

@@ -1,5 +1,8 @@
---
inclusion: always
inclusion: fileMatch
fileMatchPattern: "**/tasks/**,**/loaders/**,**/scd/**,**/dws/**,**/dwd/**,**/quality/**,**/business-rules/**,**/schemas/**,**/routers/**,**/financial*,**/settlement*,**/consume*,**/accounting*,**/salary*,**/assistant*,**/member*,**/index*,**/winback*,**/newconv*,**/relation_index*,**/spending*,**/stock*,**/finance_*,**/income_*,**/discount_*,**/order_contribution*,**/cfg_*,**/orchestration/**,**/config/**"
name: dwd-doc-authority
description: DWD-DOC 标杆文档强制规则。涉及 ETL 任务/财务/结算/消费/助教/会员/指数/统计/配置相关文件时自动加载。
---
# DWD-DOC 标杆文档(权威数据源,强制优先参考)
@@ -31,25 +34,11 @@ inclusion: always
7. **现金流互斥**`cash_inflow_total``platform_settlement_amount``groupbuy_pay_amount` 互斥
8. **废单判断**:使用 `dwd_assistant_service_log_ex.is_trash``dwd_assistant_trash_event` 已废弃2026-02-22 DROP
9. **储值卡字段命名**DWS 层使用 `balance_pay`(总额)、`recharge_card_pay`(现金充值卡)、`gift_card_pay`(赠送卡);`recharge_card_consume`(财务日报)
10. **会员字段断档DQ-6**`settlement_head.member_phone/member_name` 自 2025-12 起全为 NULL(上游不再下发)。需要会员手机号/昵称时,必须通过 `member_id` LEFT JOIN `dwd.dim_member`字段 `mobile`/`nickname`,取 `scd2_is_current=1`),禁止直接使用 `member_phone`
11. **会员卡字段断档DQ-7**`settlement_head.member_card_type_name` 自 2025-07-21 起全为 NULL`member_card_account_id` 全为 0。需要会员卡类型时,必须通过 `member_id` LEFT JOIN `dwd.dim_member_card_account`关联 `tenant_member_id = member_id`,取 `scd2_is_current=1`),禁止直接使用 `member_card_type_name`。通用规则:结算单上所有会员相关冗余字段均不可靠,一律通过 ID 关联维度表获取
## 使用场景
- 编写或修改 ETL 任务代码DWD/DWS 层)
- 编写或修改后端 API 涉及金额计算的逻辑
- 编写或修改小程序/管理后台涉及财务数据展示的页面
- 编写 SQL 查询涉及结算、支付、消费金额
- 编写或审阅 BD 手册、SPEC 文档中的字段口径描述
- 前置调研(`pre-change-research.md`)中涉及财务/账务模块时
10. **会员字段断档DQ-6**`settlement_head.member_phone/member_name` 自 2025-12 起全为 NULL。需要会员信息时通过 `member_id` LEFT JOIN `dwd.dim_member``scd2_is_current=1`
11. **会员卡字段断档DQ-7**`settlement_head.member_card_type_name` 自 2025-07-21 起全为 NULL。需要会员卡类型时通过 `member_id` LEFT JOIN `dwd.dim_member_card_account``scd2_is_current=1`。通用规则:结算单上所有会员相关冗余字段均不可靠,一律通过 ID 关联维度表获取
## 与其他文档的优先级
以下文档与 DWD-DOC 标杆文档冲突时,以 DWD-DOC 为准
- BD 手册(`apps/etl/connectors/feiqiu/docs/database/`
- ETL 任务文档(`apps/etl/connectors/feiqiu/docs/etl_tasks/`
- 业务规则文档(`apps/etl/connectors/feiqiu/docs/business-rules/`
- SPEC 文档(`docs/prd/specs/`
- DDL 注释(`docs/database/ddl/`
BD 手册、ETL 任务文档、业务规则文档、SPEC 文档、DDL 注释与 DWD-DOC 冲突时,以 DWD-DOC 为准
> 标杆文档基于 2026-03-06 对 test_etl_feiqiu 数据库的实际数据验证,公式和比例关系具有权威性。