优化:补充半自动履约开发 Mock 与内置 Connector

This commit is contained in:
yml2213
2026-11-09 16:02:52 +08:00
parent cb9538a775
commit b0b8e983ba
12 changed files with 1188 additions and 8 deletions
+28
View File
@@ -179,6 +179,34 @@ cp .env.server.example .env
| `SEMI_AUTO_CONNECTOR_API_KEY` | order_site 与 Connector 的内部鉴权密钥 |
| `SEMI_AUTO_CONNECTOR_TIMEOUT_MS` | Connector 请求超时,默认 15000 毫秒 |
### 本地半自动履约 Mock
`docker-compose.dev.yml` 默认把 Connector 指向 order_site 自带的开发 Mock:
```text
http://127.0.0.1:3000/api/v1/dev-mock/connector
```
本地验证流程:
1. 打开后台 `/admin/dev-mock`,在“半自动履约测试单”中生成订单。
2. 打开客户链接,点击获取登录二维码;Mock 会在两次轮询后自动模拟登录成功。
3. 页面自动创建绑定二维码,轮询后识别测试角色,点击确认绑定。
4. 打开后台“任务 → 半自动履约”,领取任务并生成浏览器注入票据。
5. 完成履约,核对任务、履约、成本快照和财务确认。
需要接真实 Connector 时,显式覆盖 `SEMI_AUTO_CONNECTOR_BASE_URL`,例如
`http://host.docker.internal:8800`。开发 Mock 路由在非开发环境返回 404。
半自动履约真实 PostgreSQL 集成测试需要独立库,避免写入生产 dump:
```bash
cd apps/backend
DATABASE_URL=postgres://postgres:postgres@127.0.0.1:5432/order_site_it npm run db:migrate
SEMI_AUTO_TASK_TEST_DATABASE_URL=postgres://postgres:postgres@127.0.0.1:5432/order_site_it \
npx tsx --test src/services/semi-auto/semi-auto-task.integration.test.ts
```
## 运行数据
| 环境 | 路径 / Volume |