feat: 完善真实采购订单核对与恢复 (#100)
This commit is contained in:
@@ -371,7 +371,9 @@ Admin 侧必须无条件接受,见 [04](04-admin-api-contract.md) §6.1。
|
||||
`claimed`;恢复执行必须创建新的 `attempt_id`,不会存在两条并发运行。
|
||||
- `irreversible_action_at` 有值时,启动恢复立即转为 `manual_review / reconcile_purchase`。
|
||||
`PurchaseReconcileService` 只能调用独立的只读 Adapter,不会调用采购 Adapter。
|
||||
- 核对到唯一候选也仍需人工最终确认;未找到、多候选或结果不确定均保持人工处理。
|
||||
- 核单按商品编号、完整规格、数量、确认总价、提交时间范围和未付款状态严格匹配。
|
||||
只有唯一候选会原子写入采购结果与 Outbox;未找到、多候选、字段不符、非未付款
|
||||
或结果不确定均保持人工处理。
|
||||
- Admin 提交失败只重试 Outbox,不再次操作拼多多。
|
||||
|
||||
## 9. PDD 适配边界
|
||||
@@ -392,9 +394,14 @@ reconcile_purchase(task, run) -> PurchaseResult | ManualReview
|
||||
`irreversible_action_at` 事务,再允许 Adapter 点击一次;之后无论点击结果是否明确,
|
||||
都只进入订单核对。该接口不提供付款或取消订单方法。
|
||||
采购规格使用完整 `options` 对象精确比较,不假定只有颜色和尺码两个维度。
|
||||
只读核对另用 `PddPurchaseReconcileAdapter`,只暴露 `read_order_match`
|
||||
只读核对另用 `PddPurchaseReconcileAdapter`,只暴露 `read_order_candidates`
|
||||
和 `close`,不暴露选规格、设数量、下单或付款方法。
|
||||
|
||||
正式只读核单由 `pdd_u2_purchase_reconcile_adapter.py` 实现,只允许使用白名单
|
||||
导航进入个人中心、我的订单和待付款列表,以及返回和滚动。它只提取核单所需的
|
||||
订单编号、商品编号、规格、数量、总价、下单时间和付款状态,不保存收货人、地址
|
||||
或电话。最终匹配由领域服务完成,不能让页面解析层单独决定采购成功。
|
||||
|
||||
正式 Client 由 `pdd_u2_purchase_adapter.py` 分别实现演练和 live 接口,并在
|
||||
`ui_main.py` 注入工厂。Adapter 通过 `PddDeviceService` 独占连接,每次判断
|
||||
都重新读取当前包名和控件树。当前 Admin 下发的 `color` 和 `size`
|
||||
|
||||
Reference in New Issue
Block a user