Files
Neo-ZQYY/docs/prd/specs/P2-etl-dws-miniapp-extensions.md
Neo b25308c3f4 feat: P1-P3 全栈集成 — 数据库基础 + DWS 扩展 + 小程序鉴权 + 工程化体系
## P1 数据库基础
- zqyy_app: 创建 auth/biz schema、FDW 连接 etl_feiqiu
- etl_feiqiu: 创建 app schema RLS 视图、商品库存预警表
- 清理 assistant_abolish 残留数据

## P2 ETL/DWS 扩展
- 新增 DWS 助教订单贡献度表 (dws.assistant_order_contribution)
- 新增 assistant_order_contribution_task 任务及 RLS 视图
- member_consumption 增加充值字段、assistant_daily 增加处罚字段
- 更新 ODS/DWD/DWS 任务文档及业务规则文档
- 更新 consistency_checker、flow_runner、task_registry 等核心模块

## P3 小程序鉴权系统
- 新增 xcx_auth 路由/schema(微信登录 + JWT)
- 新增 wechat/role/matching/application 服务层
- zqyy_app 鉴权表迁移 + 角色权限种子数据
- auth/dependencies.py 支持小程序 JWT 鉴权

## 文档与审计
- 新增 DOCUMENTATION-MAP 文档导航
- 新增 7 份 BD_Manual 数据库变更文档
- 更新 DDL 基线快照(etl_feiqiu 6 schema + zqyy_app auth)
- 新增全栈集成审计记录、部署检查清单更新
- 新增 BACKLOG 路线图、FDW→Core 迁移计划

## Kiro 工程化
- 新增 5 个 Spec(P1/P2/P3/全栈集成/核心业务)
- 新增审计自动化脚本(agent_on_stop/build_audit_context/compliance_prescan)
- 新增 6 个 Hook(合规检查/会话日志/提交审计等)
- 新增 doc-map steering 文件

## 运维与测试
- 新增 ops 脚本:迁移验证/API 健康检查/ETL 监控/集成报告
- 新增属性测试:test_dws_contribution / test_auth_system
- 清理过期 export 报告文件
- 更新 .gitignore 排除规则
2026-02-26 08:03:53 +08:00

3.5 KiB
Raw Blame History

P2ETL 扩展层 — etl-dws-miniapp-extensions

优先级P2依赖 P1 预估工作量:大


需求Requirements

用户故事

  1. 作为产品经理,我需要 SPI 消费力指数来评估客户消费层级,替代现有的 customer_tier 分层。
  2. 作为产品经理,我需要助教订单流水四项统计(订单总流水/订单净流水/时效贡献流水/时效净贡献),以便评估助教个人能力。
  3. 作为产品经理,我需要客户 30/60/90 天充值次数和金额、次均消费,以便在客户看板中展示。
  4. 作为产品经理,我需要定档折算惩罚数据,以便在绩效页面展示折算详情。

验收标准

  • AC1dws_member_spending_power_index 表存在SPI 展示分 0-10 分布合理
  • AC2dws_assistant_order_contribution 表存在,四项统计数值可对照 PRD 示例验算
  • AC3dws_member_consumption_summary 新增字段有值(recharge_count_30d/60d/90drecharge_amount_30d/60d/90davg_ticket_amount
  • AC4dws_assistant_daily_detail 新增字段在符合惩罚条件的订单上正确填充
  • AC5新表的 RLS 视图和 FDW 映射已同步创建
  • AC6cfg_index_parameters 中新增 SPI 类型的配置行 已完成26 个参数effective_from=2026-02-23

设计要点

SPI 指数

  • 完整算法见 docs/prd/SPI 消费力指数.md
  • 新建 ETL 任务 SpendingPowerIndexTask,继承 BaseIndexTask
  • 粒度:(site_id, member_id),每日计算

助教订单流水四项统计

  • 新建 ETL 任务 AssistantOrderContributionTask
  • 粒度:(site_id, assistant_id, stat_date)
  • 计算逻辑见 PRD "新增统计"节

命名方案

中文名 字段名 含义
订单总流水 order_gross_revenue 助教参与订单的全部流水
订单净流水 order_net_revenue 总流水 - 助教服务分成
时效贡献流水 time_weighted_revenue 按服务时长折算的个人贡献
时效净贡献 time_weighted_net_revenue 时效贡献 - 助教服务分成

定档折算惩罚

  • 扩展 dws_assistant_daily_detailpenalty_minutespenalty_reasonis_exemptper_hour_contribution
  • 检测逻辑:同一台桌同一时段 >2 名助教 → 计算单人贡献流水 → <24 元则按比例折算
  • 豁免标记:在订单级别打标(is_exempt 字段)
  • 每日 ETL 自动计算

任务清单

  • T1设计并创建 dws_member_spending_power_index已完成24 字段 + 2 索引,迁移脚本 2026-02-23_create_dws_member_spending_power_index.sql测试库已建表0 行待跑数)
  • T2实现 SpendingPowerIndexTask(含 Level/Speed/Stability 子分)(已完成,代码 tasks/dws/index/spending_power_index_task.py,已注册 task_registry含单元测试 + 属性测试 + BD_Manual 文档)
  • T3cfg_index_parameters 中插入 SPI 默认参数 已完成27 个参数含 Level/Speed/Stability 权重、压缩基数、窗口天数等)
  • T4设计并创建 dws_assistant_order_contribution
  • T5实现 AssistantOrderContributionTask
  • T6扩展 dws_member_consumption_summary(充值窗口 + 次均消费字段)
  • T7修改 MemberConsumptionSummaryTask 填充新字段
  • T8扩展 dws_assistant_daily_detail(定档折算惩罚字段)
  • T9实现定档折算惩罚检测与计算逻辑
  • T10为新表创建 RLS 视图 + FDW 映射
  • T11影子跑数验证SPI 分布、流水统计对账)