Clone
6
Task 32 procurement closed loop prototype
QiuSW edited this page 2026-09-21 16:13:32 +08:00
This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

32 采购闭环数据关系与交互原型

  • 类型:需求 / 高风险采购流程设计
  • 所属 Epic:无(采购 MVP 建立后补充)
  • 所属 MVP / 版本:PDD 自动采购 MVP(不属于当前采集 MVP)
  • 状态:已完成(Stage A 原型验收通过)
  • 日期:2026-08-18
  • Gitea 工单:#32
  • Wiki 页面:Task-32-procurement-closed-loop-prototype
  • Wiki revision:以页面当前 revision 为准

背景与目标

货运宝 ERP 货运单包含多个 Shopee 商品采购明细。系统需要关联 Shopee 商品与 PDD 商品、派发 Android 采购任务、在 PDD App 选择规格数量并修改固定收货地址后创建订单但不支付,再采集快递单号自动回填货运宝。本工单只交付 Stage A 的 QuantUX 可点击原型和评审结论,用来在写任何采购代码之前确认数据关系与人工决策入口。

最终方案

  • 确认数据关系:syb_products N → 1 shopee_products N → 1 pdd_products,且 syb_products → N purchase_tasks;syb_products.effective_purchase_task_id 指向回填成功的有效任务。
  • 确认执行边界:Android Agent 只创建订单,永不支付;支付由采购人员在 PDD 中人工完成。
  • 确认地址后缀规则 _cg{采购任务ID},只清理末尾 (?:-|_)cg\d+$,禁止按分隔符整体切分;地址修改或复核失败时任务明确失败,不点击创建订单。
  • 确认防重复下单:创建订单前持久化 order_submit_started;无法确认结果时进入 order_result_unknown 交人工处理;服务端以 task_id + task_attempt_id 幂等。
  • 确认重新采购、有效订单人工选择、快递单号覆盖回填的人工决策入口。
  • 原型交付 12 个页面、770 个控件、31 条流程线,把采购任务、人工支付、PDD 订单同步和 SYB 快递单号回填拆成独立流程;采购任务统一从 SYB 商品列表多选后批量创建。
  • 独立商品域管理页原型不在本工单:#40 和 #41 各自建立 Stage A 原型门禁,#32 原型只覆盖采购流程内嵌的未映射跳转入口。

修改文件

  • prototypes/quantux-procurement-flow-6a827440191a826306a7eddd.html:QuantUX 离线原型导出(本工单唯一交付物)。
  • prototypes/README.md:原型清单与审核状态。
  • Wiki Product-Requirements-Overview / Delivery-Issues:需求索引与交付顺序状态。
  • 本工单不修改数据库、服务端、Web、Android 和共享 API。

验收结果

验收标准 结果
原型走通货运宝明细 → PDD 订单 → 人工支付 → 有效订单选择 → 快递采集 → 自动回填 通过
同一 Shopee 商品多规格明细、多个 Shopee 商品共用一个 PDD 商品的关系表达清楚 通过
地址后缀固定为 _cg{采购任务ID},并展示修改失败禁止创建订单 通过
重新采购、覆盖回填和结果未知场景有清晰人工决策入口 通过
页面不提供任何自动支付入口 通过
用户完成原型人工审核 2026-08-18 明确通过

测试

  • QuantUX MCP 结构校验:12 个页面、770 个控件、31 条流程线,导出验证 PASS,无运行时错误或不支持控件。
  • 浏览器人工检查采购人员主流程、危险操作提示和异常状态:通过。
  • 未验证部分:Stage A 不进行真实 PDD 下单、支付、物流采集和货运宝回填测试;PDD 订单详情能否稳定读取订单号与快递单号,需在 #38 实施前真机验证。

遗留问题

  • 采购实施按 #33、#34、#35、#36、#37、#38、#39、#42 拆分推进,每个高风险单元实施和真机前需再次人工确认。
  • 商品域独立管理页原型由 #40、#41 各自的 Stage A 交付。
  • 地址后缀不承诺一定阻止 PDD 或卖家合并发货;订单与任务的正式关联以 PDD 订单号为准。

后续变更

本工单已于 2026-08-18 验收关闭,正文与原型保持归档原样,不再修改。以下规则已被后续决策取代:

本单原规则 取代者 变更内容
「Shopee 与 PDD 规格名称不一致,映射由 shopee_products 维护;Agent 不得猜测缺失映射」 #46 T44 采购规格 AI 匹配与实时规格回传(决策变更) 映射缺失、商品无规格数据或目标规格定位不到时,允许由服务端 AI 匹配接口决策后下发精确规格;Agent 本地仍不得自行猜测或点击相近候选。AI 无结果时明确失败。匹配结果须落库留痕并标记 spec_source。

变更依据:采购商品单价较低(实测 NT$239~559),用户于 2026-08-18 明确接受个别匹配错误的风险,以换取人工参与的显著减少。金额护栏复用 #42 的订单总价上限机制。

本单其余已确认规则(禁止支付、不使用 OCR/VLM、不保存控件树与截图、地址后缀 _cg{task.id}、防重复下单、task_id + task_attempt_id 幂等、设备与 PDD 账号级互斥)均未变更,继续有效。

相关提交

  • 原型快照与文档状态更新提交见本工单回写记录。