95 lines
2.8 KiB
Markdown
95 lines
2.8 KiB
Markdown
---
|
||
name: dukang-prev1
|
||
description: >-
|
||
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`](../../杜康好客-preV1编码手册.md)
|
||
|
||
## 六条裁剪(必记)
|
||
|
||
1. **无 HQ 小程序** → `admin-web` 内部替代;`/admin/*` 保留,前端不暴露 AdminAuth 给 C/B/D 端
|
||
2. **三端均 H5** → `USER_H5` / `SHOP_H5` / `PARTNER_H5`
|
||
3. **无微信登录** → 仅 SMS;wechat 路由返回 501 或 Flag 关闭
|
||
4. **验证码 Mock** → `123456`,`MOCK_SMS=true`
|
||
5. **配送 Mock** → BullMQ 自动推进或合伙人 `mock-advance-delivery`
|
||
6. **支付 Mock** → `POST /trade/orders/:id/pay` 同步成功 + **真实发券**
|
||
|
||
## 环境变量(`.env.example`)
|
||
|
||
```bash
|
||
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 |
|
||
|
||
## 冒烟
|
||
|
||
```bash
|
||
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/` 原型混为一谈
|