当前失败重试需要进入任务详情进行一次性重新采购授权,再返回 SYB 商品列表重新查找、勾选和创建任务。服务端对未创建订单的失败任务本来允许直接新建任务,现有页面流程多余且容易误解。
目标是在采购管理列表内完成批量失败重试:保留旧失败任务和执行记录,为每条可重试失败记录创建新的待执行任务,使采购员不必返回 SYB 页面。
failed
pending
order_result_unknown
requestId
taskIds
purchase_task.status=pending
order_submit_started
预计修改文件:
prototypes/58/v1/index.html
web/src/views/goauto/purchase-tasks/index.vue
web/src/api/goauto/purchase-tasks.js
server/app/goauto/purchase/
server/app/goauto/router.go
Business-Rules-and-Glossary
Architecture-and-Code-Map
gitea.env
index.html
git diff --check
0d13ed4
main
go test ./app/goauto/purchase/...
python dev_scripts/harness.py sync --check
python dev_scripts/harness.py check --strict
01d8520
POST /api/admin/v1/purchase-tasks/batch-retry
cd1b56cf3edd6a6a88b2de0c9a174136a3c90132
86f5a5432ee1683b466e87d127768239d3492b54
b4df395f7194542f4b3a64bbe57fde69835dc6f4
0d13ed4 docs(#58): add batch retry prototype
验证结果:
git diff --cached --check
限制:当前会话没有可用 QuantUX MCP,也没有可连接的浏览器实例,因此没有把浏览器真实点击检查标记为通过。请直接打开本地 HTML 审核;原型确认前不会编写 server/web 生产代码。
用户已于 2026-08-21 确认 prototypes/58/v1/index.html 原型。#58 解除生产编码门禁,开始按已确认范围实施;不执行真实 PDD 订单或付款。
#58 已完成实现并进入待验收。
go test ./app/goauto/purchase
.\scripts\verify.ps1 -Component server
go test ./...
go build
.\scripts\verify.ps1 -Component web
python dev_scripts/harness.py sync --verify
check --strict
sync --check
提交:01d8520,已推送 main。没有数据库迁移、Android 改动、真实下单或支付操作。请按已确认 v1 原型验收采购管理列表批量重试。
任务归档已补全实现、验收、测试、未验证项和提交信息,并在线回读确认;最新 revision:b4df395f7194542f4b3a64bbe57fde69835dc6f4。
用户于 2026-08-29 明确确认本工单通过验收。验收结论已记录,现关闭工单。没有新的长期事实变化,本次不重复同步 Wiki。
No dependencies set.
The note is not visible to the blocked user.
基本信息
依赖与并行
子项目影响
原始需求
要解决什么
当前失败重试需要进入任务详情进行一次性重新采购授权,再返回 SYB 商品列表重新查找、勾选和创建任务。服务端对未创建订单的失败任务本来允许直接新建任务,现有页面流程多余且容易误解。
目标是在采购管理列表内完成批量失败重试:保留旧失败任务和执行记录,为每条可重试失败记录创建新的待执行任务,使采购员不必返回 SYB 页面。
做什么 / 不做什么
failed且服务端判定可重试的任务允许勾选;表头全选只选择当前页可重试项。pending采购任务。order_result_unknown;必须先人工核对。已确认方案
requestId和原失败任务taskIds,服务端逐项锁定、校验、幂等创建新任务并返回部分成功结果。purchase_task.status=pending,不新增数据库表;预计不需要数据库迁移。order_submit_started、order_result_unknown、已有订单号/下单时间或其他订单事实的记录禁止走失败重试。预计修改文件:
prototypes/58/v1/index.htmlweb/src/views/goauto/purchase-tasks/index.vueweb/src/api/goauto/purchase-tasks.jsserver/app/goauto/purchase/下批量重试、查询和测试文件server/app/goauto/router.go(如需注册新路由)Business-Rules-and-Glossary、Architecture-and-Code-Map(实现阶段)需求变化记录
设计与原型门禁
gitea.env配置的 Gitea API。当前会话没有可用 QuantUX MCP,使用等效本地 HTML 审核方案。prototypes/58/v1/index.htmlindex.html,全部资源内嵌;DOCTYPE、语言、必需组件、禁用原因、页面状态、唯一 ID、自包含资源、JavaScript 语法和git diff --check均通过。当前会话没有可用浏览器实例,真实点击检查待用户本地审核0d13ed4,已推送main文档影响
交付文档影响
验收标准
pending任务,保留旧任务,并返回新任务编号。order_result_unknown、已创建订单和已支付订单不能通过本入口重试。验证方式
go test ./app/goauto/purchase/...;Web lint/生产构建;python dev_scripts/harness.py sync --check;python dev_scripts/harness.py check --strict;git diff --check。风险和回退
实施结果
01d8520(已推送main)POST /api/admin/v1/purchase-tasks/batch-retry、可重试资格字段、逐项幂等创建与部分成功;旧失败任务保留。cd1b56cf3edd6a6a88b2de0c9a174136a3c90132;Architecture revision86f5a5432ee1683b466e87d127768239d3492b54。b4df395f7194542f4b3a64bbe57fde69835dc6f4。#58 原型 v1 已提交,等待审核
prototypes/58/v1/index.html0d13ed4 docs(#58): add batch retry prototypemainpending;订单结果未知不可重试;不自动换机;原型不创建订单、不支付。验证结果:
python dev_scripts/harness.py sync --check:PASSpython dev_scripts/harness.py check --strict:PASSgit diff --cached --check:PASS限制:当前会话没有可用 QuantUX MCP,也没有可连接的浏览器实例,因此没有把浏览器真实点击检查标记为通过。请直接打开本地 HTML 审核;原型确认前不会编写 server/web 生产代码。
用户已于 2026-08-21 确认
prototypes/58/v1/index.html原型。#58 解除生产编码门禁,开始按已确认范围实施;不执行真实 PDD 订单或付款。#58 已完成实现并进入待验收。
验证结果:
go test ./app/goauto/purchase:通过(含新建任务/保留旧失败、幂等重放、部分成功、订单事实拒绝、离线/忙碌原设备、旧任务失效和权限边界).\scripts\verify.ps1 -Component server:通过(go test ./...+go build).\scripts\verify.ps1 -Component web:通过(Lint 0 error,30 条仓库既有 warning;生产构建通过,保留既有 CSS/大包 warning)python dev_scripts/harness.py sync --verify、check --strict、最终sync --check:通过git diff --check:通过提交:
01d8520,已推送main。没有数据库迁移、Android 改动、真实下单或支付操作。请按已确认 v1 原型验收采购管理列表批量重试。任务归档已补全实现、验收、测试、未验证项和提交信息,并在线回读确认;最新 revision:
b4df395f7194542f4b3a64bbe57fde69835dc6f4。用户于 2026-08-29 明确确认本工单通过验收。验收结论已记录,现关闭工单。没有新的长期事实变化,本次不重复同步 Wiki。