feat(backend): implement task creation and admin web

This commit is contained in:
QiuSW
2026-07-26 14:03:32 +08:00
parent 2b265c92fc
commit c5d3b215ff
58 changed files with 8773 additions and 83 deletions
+10 -9
View File
@@ -6,7 +6,7 @@
| 项 | 当前事实 |
| --- | --- |
| 任务来源 | 其他管理后台或本项目管理 Web 采集商品标题、描述、图片、数量和预算。 |
| 任务来源 | 其他管理后台或本项目管理 Web 采集商品标题、SKU、描述、图片、数量和预算。 |
| 第一层样本来源 | 本机目录中的蝦皮订单文本和参考图;二者以蝦皮订单号作为同名文件名。 |
| 执行方式 | 采购人员使用 Android App 操作拼多多;需求提取、动态词搜索、最多 5 个候选证据采集、匹配建议和人工确认停止点已可运行。 |
| 核心痛点 | 人工把图片和描述转成搜索词、逐条比较商品并记录结果,耗时且不一致。 |
@@ -25,7 +25,7 @@
| ID | 功能 | 用户结果 | 优先级 | 用户故事 |
| --- | --- | --- | --- | --- |
| F-001 | 创建采购任务 | 管理员提交标题、描述、图片、数量和可选预算,获得任务编号。 | P0 | US-001 |
| F-001 | 创建采购任务 | 管理员提交标题、SKU、描述、图片、数量和可选预算,获得任务编号。 | P0 | US-001 |
| F-002 | 查看任务状态 | 管理员看到任务阶段、候选摘要、截图和失败原因。 | P0 | US-002 |
| F-003 | 手动领取任务 | 空闲且就绪的 App 点击后只领取一条待处理任务。 | P0 | US-003 |
| F-004 | 解析采购需求 | 系统从图片和文字提取搜索词、属性及约束,并保留原始输入。 | P0 | US-004 |
@@ -46,9 +46,10 @@
## 五、业务规则
1. 标题、描述和图片至少满足“标题或描述不为空,且图片存在”。
2. 数量必须是正整数;最高预算如填写,必须大于零。
3. 数量和最高预算以管理员输入为准,模型不得更改。
1. 标题、SKU 和图片必填,描述可为空。
2. 数量必须是正整数;最高商品总预算如填写,必须大于零。总预算表示当前任务全部
数量的商品金额上限,不包含尚无法可靠确认的运费、优惠或支付金额。
3. SKU、数量和最高商品总预算以管理员输入为准,模型不得更改。
4. 一台设备同一时间最多有一条 `CLAIMED` 或 `RUNNING` 任务。
5. 一条任务同一时间只能被一台设备持有;重复点击不能产生重复领取。
6. App 未就绪时不能开始:无障碍未授权、拼多多未安装、设备离线或已有运行任务都
@@ -95,11 +96,11 @@ T-004 已固定首版规则:推荐私有目录为被 Git 忽略的 `private-fi
### 单任务验收
- F-001/US-001/IX-001:合法输入创建后出现唯一任务编号和 `PENDING` 状态;非法
数量、预算或缺失图片时在原表单显示可修复错误。
- F-002/US-002/IX-002:状态变化后管理页面能看到最新阶段、时间、设备、候选摘要
- F-001/US-001/IX-002:合法输入创建后出现唯一任务编号和 `PENDING` 状态;非法
标题、SKU、数量、预算或缺失图片时在原表单显示可修复错误。
- F-002/US-002/IX-003:状态变化后管理页面能看到最新阶段、时间、设备、候选摘要
或结构化错误;无权限用户不可访问。
- F-003/US-003/IX-004:App 点击“获取任务”后原子领取一条任务;重复点击或多请求
- F-003/US-003/IX-005:App 点击“获取任务”后原子领取一条任务;重复点击或多请求
不得领取第二条或把同一任务分配两次。
- F-004/US-004/IX-006:解析结果包含搜索词、识别属性、预算、数量、置信度和警告;
原始输入保留,硬约束与输入一致。T-103 已实现版本化 schema、0.75 置信阈值、