2.8 KiB
2.8 KiB
name, description
| name | description |
|---|---|
| dukang-prev1 | Guides preV1 Mock integration phase for Dukang Haoke: H5 three-client setup, MOCK_SMS/MOCK_PAY/MOCK_DELIVERY flags, Seed data, and V2 upgrade path. Use when working on Mock providers, feature flags, preV1 task cards P1-*, or smoke tests — not for V2 WeChat/payment production integration. |
杜康好客 · preV1 Mock Skill
定位
preV1 = V2 之上的裁剪实现:不删表、不删 API 路径、不改字段语义。
权威文档:杜康好客-preV1编码手册.md
六条裁剪(必记)
- 无 HQ 小程序 →
admin-web内部替代;/admin/*保留,前端不暴露 AdminAuth 给 C/B/D 端 - 三端均 H5 →
USER_H5/SHOP_H5/PARTNER_H5 - 无微信登录 → 仅 SMS;wechat 路由返回 501 或 Flag 关闭
- 验证码 Mock →
123456,MOCK_SMS=true - 配送 Mock → BullMQ 自动推进或合伙人
mock-advance-delivery - 支付 Mock →
POST /trade/orders/:id/pay同步成功 + 真实发券
环境变量(.env.example)
MOCK_SMS=true
MOCK_SMS_CODE=123456
MOCK_PAY=true
MOCK_DELIVERY_AUTO=true
AUTO_APPROVE_STORE=true
配置加载:packages/shared-types/src/config.ts → loadAppConfig()
Mock 代码位置(禁止散落)
server/dukang-api/src/integrations/
├── sms/sms.interface.ts + sms.mock.provider.ts
├── pay/pay.interface.ts + pay.mock.provider.ts
└── delivery/delivery.interface.ts + delivery.mock.provider.ts
业务 Module 只 inject interface,由 Nest DI 切换 Mock/Real。
preV1 必做 vs 跳过
| 必做 | 跳过(V2 补) |
|---|---|
| 三端 SMS 登录 | 微信登录/支付/退款 |
| Mock 支付 + 真实发券 | 微信 prepay/回调验签 |
| 5 Tab 订单 | HQ 小程序 UI |
| Redis 核销码 + 门店核销 | 真实小飞侠/物流 |
| 合伙人录店 + AUTO_APPROVE | 总部人工审核 UI |
| 可选埋点 | 推广码 HQ UI、T+30 真实打款 |
HQ 能力替代(Seed)
| V2 HQ | preV1 |
|---|---|
| 开城/商品 CRUD | Seed 固定 + admin-web 或改 seed |
| 门店审核 | AUTO_APPROVE_STORE=true |
| 退款/客服 | 跳过 |
| 结算 | store_payout PENDING;可 Seed 演示账单 |
Seed:server/dukang-api/prisma/seed-v31.ts
测试账号
| 角色 | 手机号 |
|---|---|
| C 端 | 13800000001 |
| 门店 | 13900000001 |
| 合伙人 | 13700000001 |
冒烟
node scripts/smoke-prev1.mjs
preV1 → V2 切换检查
按 preV1 手册 §8.2 逐项关闭 Mock Flag,无需重构表结构。
边界提醒
- preV1 skill 不负责实现 V2 微信 SDK;遇到真实支付/短信需求 → 停止并切换 V2 手册 §九
- 改 Mock 行为时 仍须 遵守 OWNER 模块边界
- admin-web 是 preV1 内部工具,勿与 V2
pages/hq/原型混为一谈