Files
medical-mall/pages/mall/delivery/doc/需求文档/缺口与待补充清单.md
not-like-juvenile 33030bd20b 需求分析
2026-02-06 08:21:59 +08:00

5.0 KiB
Raw Blame History

缺口与待补充清单(配送模块|第三方轨迹对接 + Mock 联调)

本文定位:

  • 用“交付物清单”的方式回答:当前这套配送对接文档还缺什么、为什么缺、补了带来什么收益。
  • 不改变现有方案(统一事件模型 + Adapter + 幂等乱序入库 + 前端统一契约),只补齐落地时最容易卡住的材料。

关联文档:

  • README.md:阅读入口与联调路径
  • 配送模块需求文档.md:目标/范围/验收口径
  • 接口规范.mdWebhook + 控制面 API + 入库建议
  • 状态映射表.mdevent_code/event_text -> status_code + 一致性治理(含备选方案)
  • 前端字段清单.md:安卓/Web 展示契约

P0建议本期补齐影响联调与验收能否顺利推进

  1. 联调/验收 Checklist平台侧 + Mock 侧)
  • 为什么要补现在“验收标准”是目标描述但缺少可勾选的操作性检查项QA/对接会反复口头对齐。
  • 补齐收益:把“验签/幂等/乱序/重复/延迟/缺字段”等要求落到可执行项,减少漏测。
  • 建议产物:一份表格/列表(可以后续直接贴到测试用例/测试报告里)。
  1. 场景库清单scenario catalog+ 每个场景的事件序列期望
  • 为什么要补:当前只提了 standard_delivered 等示例名,但没有定义“这个场景到底要生成哪些关键节点、每个节点对应哪些 event_code/status_code、时间间隔怎样”。
  • 补齐收益:前端可稳定对照 UI后端可稳定断言幂等与排序QA 可复现回归。
  • 建议产物:
    • 场景列表(标准签收/拒收退回/地址异常/破损/丢失/长时间无更新/签收失败后成功等)
    • 每个场景:事件数、关键事件码、是否包含 POD、是否包含异常、是否需要乱序/重复/延迟注入。
  1. Webhook 接收契约的“ACK/重试”约定(平台与第三方的边界)
  • 为什么要补:目前只写“成功返回 200”但缺少“平台什么时候返回 2xx、什么时候 4xx/5xx、第三方是否重试、重试间隔与上限”的共识。
  • 补齐收益:避免线上/联调出现“平台处理慢导致第三方重推爆量”“平台 4xx 被第三方当作可重试”之类问题。
  • 建议产物:在 接口规范.md 增补一小节:
    • 验签失败/缺字段/无法解析 -> 4xx不建议重试
    • 平台内部暂时不可用 -> 5xx允许重试
    • 成功接收但异步入库失败 -> 2xx 还是 5xx 的取舍(建议:接收成功就 2xx入库失败走内部告警与补偿队列
  1. 承运方接入配置表模板Carrier Integration Profile
  • 为什么要补:你已经发现韵达/圆通等第三方细节差异大,缺少一个“把关键信息落盘”的标准表格,后续每接一家都要重新摸索。
  • 补齐收益:缩短接新承运方周期;把差异收敛到 Adapter/配置层;减少口头信息丢失。
  • 建议字段(模板):
    • carrier、接入模式webhook/polling/both
    • 鉴权类型与签名算法、参与签名字段、是否含 timestamp/nonce
    • 轨迹查询接口URL/method/v/字段示例)、回调接口(回调验签字段/重试策略)
    • 是否提供稳定 event_id、是否要求手机号后四位
    • 时间格式/时区、地点粒度
    • 状态码枚举来源与映射版本

P1建议尽快补齐影响长期维护与一致性/审计能力)

  1. 权限矩阵与审计要求(谁能看 raw_payload / POD / 全量地址手机号)
  • 原因:raw_payload 可包含敏感字段Web 客服/运维能力需要最小权限与审计。
  • 产物:角色(普通用户/商家/客服/运维/管理员)× 字段raw/POD/手机号/地址)的可见性矩阵 + 审计日志要求。
  1. 错误码与返回体统一(控制面 API
  • 原因:目前 接口规范.md 仅列举了示例错误码,但缺少标准响应结构。
  • 产物:统一响应:{success, code, message, request_id, data};并约定 HTTP 状态码与业务码的对应。
  1. OpenAPI可选
  • 原因:接口多了以后靠 Markdown 容易漂移。
  • 产物:控制面 API + Webhook payload 的 OpenAPI至少给 Mock 侧)。
  1. “状态不回退/一致性”策略的明确算法(平台侧)
  • 原因:接口规范.md 提了可选规则,但未选型;当出现终态后补到更早事件时,当前状态如何计算需要一口径。
  • 产物:选定一种算法并写清:以 event_time 最新为准 / 状态等级只进不退 / 双轨展示按时间current_status 不回退)。

P2可后补锦上添花

  • DB 字典与 ER 图(便于新人理解 schema
  • 场景导入导出JSON格式规范
  • 对接灰度/熔断/降级策略的配置说明

建议补充顺序(最省时间)

  1. 先补 P0-1Checklist+ P0-2场景库清单——直接提升联调效率
  2. 再补 P0-3ACK/重试约定)——避免重复推送与误判
  3. 再补 P0-4承运方接入配置表模板——为后续接真实承运方铺路
  4. 最后补 P1 项——为线上长期治理做准备