Files
dukang/杜康好客-v3-现状对照.md
T
2026-07-12 07:29:14 +08:00

15 KiB
Raw Blame History

杜康好客 · V3.0 现状对照表

对照基准:仅 杜康好客-v3-PRD.mdV3.0 产品事实源)
审计日期2026-07-11
说明V2 / preV1 手册不再作为需求依据;本表只回答「相对 V3.0 PRD,当前代码处于什么状态」。
工程口径:总部端 保持 apps/admin-webWebAdmin,不改为 H5;PRD 中「总部 H5」按 REQ-H 功能在 admin-web 实现 验收。
图例 已完成 · 🔶 部分完成 · ⚠️ 与 V3.0 冲突(需改造) · 未实现


0. 总览

维度 结论
整体完成度(粗估) Wave 1 约 45%Wave 2 约 10%Wave 3 约 5%
可跑通的主链路 登录 → 浏览商品 → 同城下单 Mock/微信支付 → 权益 1:1 → 扫码核销 → T+1 门店 payout 记录 → 总部确认打款
最大阻塞 端形态(无小程序 C 端)、规则常量冲突(TTL/Tab/SKU/佣金)、Wave 1 缺口(手机号核销/规则弹窗/试核销/自动推小飞侠)
冒烟覆盖 scripts/smoke-v3.mjs 仅覆盖窄 W1 切片,不等于 V3.0 ACC 全量

Wave 门禁状态

门禁 状态 一句话
W1-S1 下单+支付+权益 🔶 链路可跑,SKU/订单 Tab/TTL 不合规
W1-S2 门店核销双通道 🔶 扫码 ;手机号核销
W1-S3 合伙人子账号 CRUD + 推广员菜单裁剪已有
W1-S4 拓店→审核→C 端可见 🔶 三步录入有;试核销100/负责人复核/SOP 缺失
W2-S1~S5 提现/FIN/现场提货/多合伙人/门店子账号 基本未做
W3-S1~S4 代下单/弱网拍照/多仓/跨城履约/四类型工单/发票/问卷/热力图 基本未做

0.1 已确认的工程口径(非冲突)

PRD 原文 V3 工程决策
总部端形态 总部 H5 apps/admin-web(WebAdmin)为唯一交付端,不改为 H5
验收方式 REQ-H-* 功能在 admin-web 实现即可;不要求微信内 H5 或小程序总部端
mini-hq 非主交付;与 admin-web 重叠能力以 admin-web 补齐 为准

1. ⚠️ 冲突项(必须先改)

代码已存在,但与 V3.0 PRD 直接矛盾,继续开发会累积返工。

# V3.0 要求 当前实现 证据位置 改造建议
C1 C 端 = 微信小程序 apps/h5-user H5;无 mini-user apps/h5-user/ 新建小程序或明确 H5 为过渡并排迁移
C2 核销码 TTL 3 分钟 300 秒(5 分钟) packages/shared-types/src/enums.ts REDEEM_TOKEN_TTL_SECONDS=300apps/h5-user/src/pages/RedeemPage.tsx 文案 改常量为 180 + 全端文案
C3 短信验证码 3 分钟 Redis TTL 300 秒 server/dukang-api/src/integrations/sms/sms-code.store.ts CODE_TTL_SECONDS=180
C4 订单 Tab待付款 / 已付款 / 已完成 5 Tab(含待发货/待收货) apps/h5-user/src/pages/OrderListPage.tsxOrderTab enum 改 Tab 映射与列表 API
C5 订单状态机三态展示 9 态 OrderStatus packages/shared-types/src/enums.ts PRD 三 Tab 映射到细粒度状态,或收敛状态机
C6 4 款 酒祖杜康 + 锚点价 preV1 杜康系列 ¥3991299 server/dukang-api/prisma/seed-v31.ts 替换 seed + 商品管理数据
C7 默认佣金 0% 订单 + 3% 核销 seed 5% 订单佣金 seed-v31.ts orderCommissionRate: 0.05 改 seed 与开城默认
C8 一号多店(同号可多店主账号) StoreAccount.phone @unique;创建时拒绝重复手机 schema.prisma StoreAccountstore.service.ts partnerCheckStorePhone 改模型:主账号与门店多对多
C9 支付后自动推小飞侠(同城) 支付后 delivery MANUAL;总部手动推单 trade.service.tsadmin-xiaofeixia.service.ts 支付回调后接 xiaofeixia
C10 门店结算 = 门店主动提现W2 核销后自动生成 StorePayout settlement.service.ts createStorePayout 增加余额账本 + 提现申请流
C11 工单 四类型 enum 仅 3 类 REFUND/RESHIPMENT/ALERT schema.prisma TicketType 扩展 enum + 用户建单 UI
C12 配送类型含 现场提货 DeliveryTypeLOCAL/CROSS_CITY packages/shared-types/src/enums.ts 新增 ON_SITE_PICKUP
C13 多合伙人(全城/区域平级) 城市 partnerId 单合伙人 schema.prisma CommonCity.partnerId 新增合伙人管辖/区县/佣金快照模型
C14 文档/规则残留 5min、5 Tab apps/AGENTS.md、backend rules 仍写旧口径 .cursor/rules/apps/AGENTS.md 批量对齐 V3.0

2. 已完成(与 V3.0 对齐或基本对齐)

2.1 用户端 apps/h5-user

REQ 功能 证据 备注
REQ-U-001 四 Tab 导航 src/layouts/TabLayout.tsx 形态为 H5 非小程序
REQ-U-002 登录 + 下单强制手机号 OrderConfirmPage.tsxPhoneVerifiedGuard
REQ-U-003 微信支付 pay-wechat.ts + 后端 callback Mock/真实均有
REQ-U-004 定位/开城 HomePage.tsxwechat-location.ts 🔶 H5 定位 API
REQ-U-005~006 商品列表/详情 HomePage.tsxProductDetailPage.tsx ⚠️ SKU 数据见 C7
REQ-U-007 同城 ≥2 瓶 packages/domain + trade.service.ts
REQ-U-010 锁单写入 30min trade.service.ts payExpireAt 🔶 无自动取消 job
REQ-U-011 权益 1:1 benefit.service.ts
REQ-U-012 客服入口 CustomerServicePage.tsx 🔶 Mock 对话
REQ-U-013~014 门店列表/详情 StoreListPage.tsx 仅 OPEN
REQ-U-015 出码核销 RedeemPage.tsx ⚠️ TTL 见 C3
REQ-U-017 核销后评价 RedeemSuccessPage.tsx
REQ-U-018 权益页 Tab BenefitPage.tsx
REQ-U-019 个人中心 MinePage.tsx
REQ-U-024~025 推广码/分享(部分) lib/promo.tsWechatShareBootstrap.tsx 🔶 Wave 2 完整归因

2.2 门店端 apps/h5-shop

REQ 功能 证据
REQ-S-001 三/四 Tab 导航 App.tsx
REQ-S-002 登录 + 7 天 session lib/api.ts
REQ-S-004 扫码核销 HomePage.tsx + JSSDK
REQ-S-007 今日汇总 HomePage.tsx dashboard
REQ-S-009 核销记录 + ×60% RecordsPage.tsx
REQ-S-010~011 营业状态/门店信息 StatusPage.tsxMinePage.tsx

2.3 合伙人端 apps/h5-partner

REQ 功能 证据
REQ-P-001 导航 PartnerAppRoutes.tsx
REQ-P-002 7 天免登 auth.service.ts refresh 7d
REQ-P-003 推广员菜单裁剪 partnerAccess.tsSubAccountLayout
REQ-P-005 合伙人子账号 StaffListPage.tsxpartner-staff.service.ts
REQ-P-009 拓店三步(简化版) StoreCreatePage.tsxstoreDraft.ts
REQ-P-013~017 首页/排行/订单 HomePage.tsxOrderListPage.tsx
REQ-P-020 合伙人账单列表 SettlementPage.tsx + settlement API

2.4 总部端 apps/admin-webWebAdmin

交付口径:总部 = WebAdmin不改为 H5。REQ-H 功能在本端验收;mini-hq 仅作参考或非阻塞补充。

REQ 功能 证据 备注
REQ-H-001 登录 admin-web/LoginPage.tsx
REQ-H-002 商品 CRUD ProductsPage.tsx
REQ-H-004 开城 CitiesPage.tsx
REQ-H-005~006 门店管理/状态 StoresPage.tsx 🔶 非完整 SOP 审核 UI
REQ-H-008 全量订单 OrdersPage.tsx
REQ-H-009 权益 BenefitCouponsPage.tsx
REQ-H-010 工单(部分) TicketsPage.tsx 🔶 仅 REFUND/RESHIPMENT
REQ-H-013~014 门店结算打款 StoreBillsPage.tsx 🔶 非 PRD 提现流
REQ-H-015 合伙人账单 PartnerBillsPage.tsx
REQ-H-017 推广码 mini-hq/pages/promo/(参考) admin-web 缺页,需在 WebAdmin 补齐

2.5 后端与集成

证据 备注
模块骨架 iam/trade/benefit/catalog/store/redeem/settlement/ops/analytics server/dukang-api/src/modules/
核销 → 自动创建 StorePayout(×60% redeem.service.tssettlement.service.ts ⚠️ 模式见 C11
Prisma v3.1 schema28+ 模型) prisma/schema.prisma ⚠️ 缺多合伙人/仓库/提现等
domain 起购/权益规则 packages/domain/src/index.ts
微信支付 mock + 真实 integrations/pay/callbacks/wechat-pay
短信 mock + 阿里云 integrations/sms/ ⚠️ TTL 见 C4
小飞侠集成层 integrations/courier/xiaofeixia/ 🔶 未支付后自动推单
腾讯逆地理 integrations/map/tencent-lbs 🔶 无热力图
JWT 7 天 iam.module.ts

3. 未实现 / 重大缺口

3.1 Wave 1 缺口(7.10 门禁相关)

REQ / 能力 说明
REQ-S-005 OPT-007 手机号核销通道 门店端仅扫码;无「查余额→用户收验证码→门店输入」全流程
REQ-U-016 OPT-011 核销规则弹窗 出码前无附件一/规则弹窗
REQ-P-011 OPT-009 试核销 100 元 无「待试核销」状态与固定 100 元试核逻辑
REQ-P-024 负责人复核 创建后直接 PENDING 或 auto-approve,无「待负责人复核」
REQ-P-023 / REQ-U-026 附件一结构化 无菜品/酒水/服务费等可核销勾选
REQ-P-012 OPT-008 入驻成功短信 未见正式入驻短信模板发送
支付后自动推小飞侠 见冲突 C10
待付款 30min 自动取消 仅写 payExpireAt,无 cancel job
核销成功短信 NFR-003 redeem.service 无 SMS 通知
NFR-009 送达 24h 自动完成 Mock delivery 快速推进,非 24h 逻辑

3.2 Wave 2 缺口(7.15

REQ / 能力 说明
REQ-U-008 OPT-005 现场提货 无隐藏入口、无支付即完成
REQ-S-012~016 OPT-010 未出账提现 + FIN-001~003 无提现申请、白名单、单日上限
REQ-H-014a 提现白名单配置
REQ-S-017~019 门店子账号 + 多店选店 无店员角色、无选店列表
REQ-P-008 一号多店确认弹窗 当前直接拒绝(见 C9
REQ-H-004a / REQ-H-007 多合伙人管辖与佣金 无全城/区域、区县互斥、佣金快照
ACC-P21~P28 多合伙人全套 数据模型与 UI 均未做
推广码完整归因(W2 门禁) 后端有部分 APIadmin-web 缺推广码管理页
合伙人 T+30 独立确认打款 有 bill generate;合伙人确认/打款流不完整

3.3 Wave 3 缺口(7.22

REQ / 能力 说明
REQ-P-021 / REQ-H-012 代下单
REQ-S-008a / REQ-S-020 / REQ-H-020a 弱网 5 次拍照兜底 无待处理核销单模型与 UI
REQ-H-004b / REQ-P-026 一城多仓 + 管仓合伙人 schema 无 warehouse
REQ-U-009 + SC-03 跨城完整履约 后端有 CROSS_CITY 检测;总部物流 UX/佣金归总部未闭环
REQ-U-021 OPT-001 发票 无模块
REQ-U-022 四类型工单用户端 仅 refund-request
REQ-U-023 OPT-004 成交问卷
REQ-H-016 / REQ-H-023 热力图 无看板
REQ-H-018~019 问卷/评价总部看板 评价有 DB;总部看板无
REQ-H-021 OPT-012 话术对齐 无运营文档交付机制

4. 按端汇总矩阵

已完成 ⚠️ 冲突 未实现 粗估完成率
用户端 登录、商品、下单、权益、扫码、门店、评价 端形态、Tab、TTL、SKU 现场提货、规则弹窗、发票、四类型工单、问卷 ~50%
门店端 扫码核销、记录、营业状态 结算模式 手机号核销、提现、子账号、多店、弱网兜底 ~35%
合伙人端 子账号、拓店三步、订单/账单 一号多店、佣金模型 试核销、负责人复核、附件一、代下单、管仓 ~40%
总部端(WebAdmin 商品、开城、订单、部分工单/结算 佣金默认 多合伙人、提现审、发票、热力图、推广码页、补核销审 ~35%
后端 主模块、支付、权益、扫码核销、payout TTL、状态机、佣金、账号模型 自动取消、自动推单、提现、多仓、快照 ~40%
集成 微信/短信/xiaofeixia 骨架 验证码 TTL 支付后自动推单、热力图、核销短信 ~35%

5. 场景闭环 SC-01 ~ SC-09

场景 状态 说明
SC-01 同城购酒 🔶 下单支付权益 ;小飞侠自动推单 24h 自动完成
SC-02 现场提货 全链路未做
SC-03 跨城购酒 🔶 起购校验有;总部物流到付履约
SC-04 门店核销 🔶 扫码 ;手机号 ;短信通知
SC-05 拓店入驻 🔶 三步录入 ;复核/试核销100/SOP
SC-06 售后工单 🔶 总部处理 REFUND 有;四类型
SC-07 代下单 Wave 3
SC-08 问卷+评价 🔶 评价 ;问卷
SC-09 推广归因 🔶 touch API 有;现场提货归码

6. 建议改造顺序(仅 V3.0 视角)

P0 — 消除冲突(1~2 天)

  1. C2/C3:核销码 + 短信 TTL → 3 分钟
  2. C6/C7seed SKU + 佣金默认值
  3. C4/C5:订单三 Tab 与 API 映射
  4. C14:更新 apps/AGENTS.md.cursor/rules 残留旧口径

P1 — 补齐 Wave 1 门禁(3~5 天)

  1. REQ-S-005 手机号核销全链路
  2. REQ-U-016 核销规则弹窗
  3. REQ-P-011 试核销 100 + REQ-P-024 负责人复核
  4. C9 支付后自动推小飞侠
  5. 待付款 30min 自动取消 job
  6. 核销成功短信

P2 — Wave 2(按 PRD 7.15

提现+FIN、现场提货、推广码闭环、多合伙人 schema、门店子账号/多店

P3 — Wave 3(按 PRD 7.22

代下单、弱网拍照、多仓、跨城履约、四类型工单、发票、问卷、热力图

平台决策(需产品确认)

  • C1h5-user 过渡 vs 立即建 mini-user
  • 总部端:已确认保持 WebAdmin,不改为 H5

7. 审计方法

  • 需求源:仅 杜康好客-v3-PRD.md + @dukang-v3 reference
  • 代码:apps/*server/dukang-api/src/modules/*packages/*prisma/schema.prismaseed-v31.ts
  • 验证脚本:scripts/smoke-v3.mjs(窄路径)
  • 未使用 V2 / preV1 手册作为需求对照

8. 变更记录

日期 说明
2026-07-12 明确总部端保持 WebAdmin,不改为 H5;移除原 C2 端形态冲突
2026-07-11 首版:V3.0 PRD 全量对照当前 monorepo