carrier-shipping.php

20260916-181749 轮 · 看它的历史
A. preflight(还没配任何东西)
  ✅ A1 自行打印的配送方式:不给取号
  ✅ A2 说明里点出是「自行打印」
  ✅ A3 账号没配:拒绝
  ✅ A4 说明里让人去找超管
  ✅ A4b 🔴 只有应用凭据、没授权过:仍算未配置
  ✅ A4c 🔴 包裹尺寸没填:拦住
  ✅ A4d 🔴 只差一项也拦住(不是"填了三项就算数")
  ✅ A5 全配好后放行
  ✅ A6 带出承运商
  ✅ A7 带出服务档位

B. 取号(成功)
  ✅ B1 成功
  ✅ B2 拿到运单号
  ✅ B3 面单是 PDF
  ✅ B4 真实承运商被带出来(用户选的是配送方式,底下可能是别家)
  ✅ B5 台账状态到「已取面单」
  ✅ B6 台账记下对方的订单号
  ✅ B7 🔴 运单号回写到订单

C. PII 出口
  ✅ C1 收件人姓名非空(说明 ddaddress 真被解密了)
  ✅ C2 姓名不是密文信封
  ✅ C3 州名传的是原始全称(代码转换在 adapter 里做)
  ✅ C4 寄件人来自 corp 配置
  ✅ C5 幂等键是 ddnum

D. 🔴 幂等(重复点「取号」不能重复扣费)
  ✅ D1 仍然成功(能重新打印)
  ✅ D2 🔴 没有再向快递公司下单
  ✅ D3 明确标出这是重打、没再扣费
  ✅ D4 运单号还是同一个
  ✅ D5 台账仍只有一条

E. 🔴 网络中断(不知道对方收没收)
  ✅ E1 如实报失败
  ✅ E2 报的是网络问题
  ✅ E3 🔴 状态是「不确定」而不是「失败」
  ✅ E4 运单号没有被回写(确实没拿到)
  ✅ E5 🔴 再点取号被拒(可能已经扣过一次钱了)
  ✅ E6 🔴 确实没再调下单接口
  ✅ E7 提示里让人去对方后台核对
  ✅ E8 preflight 也拦住(按钮渲染阶段就该知道)

E'. 守卫:明确的业务失败不是「不确定」
  ✅ E'1 如实报余额不足
  ✅ E'2 🔴 状态是「失败」不是「不确定」
  ✅ E'3 🔴 修好之后允许重试
  ✅ E'4 这次真的下单了

F. 付款成功但取面单失败
  ✅ F1 如实报失败
  ✅ F2 🔴 状态停在「已下单」—— 钱花了,别当成没发生
  ✅ F3 运单号已回写(号是真拿到了)
  ✅ F4 重试拿到面单
  ✅ F5 🔴 没有再下单

J. 🔴 单下成功但快递公司还没生成面单
  ✅ J1 如实告诉操作员"还没生成"
  ✅ J2 提示里说清不会重复扣费
  ✅ J3 🔴 状态是「已下单」不是「失败」
  ✅ J4 运单号已回写(单确实下成了)
  ✅ J5 补到了面单
  ✅ J6 🔴 没有再下单(否则就是第二次扣钱)
  ✅ J7 标明是重打、没再扣费

G. 守卫
  ✅ G1 不存在的订单被拒
  ✅ G2 指向已下线的承运商:拒绝而不是当成自行打印
  ✅ G3 说明里点名那个 code
  ✅ G4 改回来后不再报「不支持」
  ✅ G5 台账清空后照常放行

K. 占位面单
  ✅ K1 四道闸都满足:产出占位面单
  ✅ K2 🔴 标记为占位件(不标的话操作员不知道手上这张是假的)
  ✅ K3 拿到的是 PDF
  ✅ K4 纸面自己也喊出来是测试件
  ✅ K5 纸面写明不会真发货
  ✅ K6 台账推进到「已取面单」(否则下次进来又要重下单)
  ✅ K7 🔴 状态不是那个约定终态 → 不产出(单被取消/真往前走了都不该顶)
  ✅ K8 🔴 正式账号绝不产出占位面单(开发机上误授权也不行)
  ✅ K9 🔴 真面单拿得到就用真的(占位件只在拿不到时顶)
  ✅ K9b 守卫:那确实是假 adapter 给的那份真面单

H. 还原
  ✅ H1 配送方式已还原
  ✅ H2 订单配送方式已还原
  ✅ H3 订单快递单号已还原
  ✅ H4 账号配置已逐字段还原
  ✅ H4b 🔴 包裹默认尺寸已逐项还原(这条以前不存在,夹具值就是那么漏出去的)
  ✅ H5 台账已清空
  ✅ H6 注入已撤销(真 adapter 回来了)

PASS=73 FAIL=0