feat(prototype): redesign procurement task workbench
This commit is contained in:
+16
-4
@@ -12,7 +12,7 @@
|
||||
v
|
||||
┌─────────────────────────────────────────┐
|
||||
│ web 端(Go 单二进制) │
|
||||
│ · 建单与任务生命周期 │
|
||||
│ · 建单、批量开始试选与任务生命周期 │
|
||||
│ · 候选确认与下单授权(唯一决策权威) │
|
||||
│ · 证据存储与审计 │
|
||||
│ · 管理 Web(服务端渲染) │
|
||||
@@ -87,8 +87,14 @@
|
||||
这是本项目最核心的结构决策。**MVP 只做 A 路径(任务自带商品链接),分两趟跑完。**
|
||||
|
||||
```text
|
||||
┌──────────── web 端开始第一趟 ────────────┐
|
||||
│ 新任务先保存为 DRAFT │
|
||||
│ 管理员在任务表格勾选一条或多条 │
|
||||
│ 原子转为 PENDING,只进入试选队列 │
|
||||
└────────────────────┬─────────────────────┘
|
||||
v
|
||||
┌──────────────── 第一趟:试选 ────────────────┐
|
||||
│ desk 端轮询领取待执行任务 │
|
||||
│ desk 端轮询领取 PENDING 任务 │
|
||||
│ 1. open_product(url) │
|
||||
│ 2. 打开规格面板 │
|
||||
│ 3. 按维度精确勾选颜色分类、尺码 │
|
||||
@@ -301,10 +307,11 @@ MVP 的授权没有「选择理由 / 拒绝理由」——那是从多个候选
|
||||
|
||||
### 5.2 状态机
|
||||
|
||||
任务状态(web 端权威)。两趟执行对应两次 `CLAIMED → RUNNING`:
|
||||
任务状态(web 端权威)。创建与开始试选分离;两趟执行对应两次 `CLAIMED → RUNNING`:
|
||||
|
||||
```text
|
||||
PENDING / PENDING_RETRIAL ─claim→ CLAIMED ─start→ RUNNING(TRIAL)
|
||||
DRAFT ─start trial→ PENDING ─┐
|
||||
PENDING_RETRIAL ─────────────┴─claim→ CLAIMED ─start→ RUNNING(TRIAL)
|
||||
↑ │ ├→ NEEDS_MANUAL
|
||||
└────────release──────┘ └→ WAITING_CONFIRMATION
|
||||
├→ CANCELED
|
||||
@@ -320,6 +327,7 @@ PENDING / PENDING_RETRIAL ─claim→ CLAIMED ─start→ RUNNING(TRIAL)
|
||||
|
||||
| 状态 | 含义 |
|
||||
| --- | --- |
|
||||
| `DRAFT` | 已保存、等待管理员开始试选;设备不可领取,也不存在下单授权 |
|
||||
| `RUNNING(TRIAL)` | 第一趟试选中:正在勾选规格、读价、截图 |
|
||||
| `WAITING_CONFIRMATION` | 试选已回传,**等人确认机器选对了没** |
|
||||
| `PENDING_RETRIAL` | 旧授权已过期或在围栏前被放弃,必须重新跑第一趟取得新价格 |
|
||||
@@ -333,6 +341,10 @@ PENDING / PENDING_RETRIAL ─claim→ CLAIMED ─start→ RUNNING(TRIAL)
|
||||
授权状态:`PENDING_DELIVERY → DELIVERED → ACKNOWLEDGED → EXECUTING → FENCED → CONSUMED`。
|
||||
人退回或重新确认时旧授权转 `SUPERSEDED`;超时转 `EXPIRED`。
|
||||
|
||||
`DRAFT → PENDING` 只能由管理端“开始试选”动作触发。批量开始在一个事务中校验全部任务仍为
|
||||
`DRAFT` 且版本一致后统一流转;任一冲突时整批不变,避免用户误以为选中的任务都已开始。
|
||||
这个动作只开放第一趟领取资格,不创建 `order_authorizations` 或 `order_submissions`。
|
||||
|
||||
### 5.3 授权超时(MVP 必做,不得推后)
|
||||
|
||||
> **前序项目的教训**:曾出现 `EXECUTING` 授权永不推进,导致确认表单被永久隐藏、任务
|
||||
|
||||
Reference in New Issue
Block a user