Files
LabelChange-server/.trae/specs/add-zunyou-webhook/tasks.md
2026-06-01 16:30:29 +08:00

2.3 KiB

尊祐客户分拣信息回传 - 实现计划

[ ] 任务 1: 实现 SendWebhookToZunYou 方法

  • Priority: P0
  • Depends On: None
  • Description:
    • 在 LabelController.cs 中添加新的私有方法 SendWebhookToZunYou
    • 方法参数包括 waybillNumber, scanTime, printTime, scanResult, finalMileTrackingNumber
    • 实现向尊祐系统发送回传通知的逻辑
    • 构造符合尊祐系统要求的 JSON 数据
    • 设置请求头包含指定的 token
    • 处理响应和错误情况
  • Acceptance Criteria Addressed: AC-2, AC-3, AC-4, AC-5
  • Test Requirements:
    • programmatic TR-1.1: 方法能够正确构造回传数据格式
    • programmatic TR-1.2: 方法能够正确设置请求头的 token
    • programmatic TR-1.3: 方法能够正确处理网络错误和响应错误
    • human-judgment TR-1.4: 方法的代码风格与现有回传方法一致
  • Notes: 参考现有的 SendWebhookToPatuen 和 SendWebhookToXunTong 方法的实现方式

[ ] 任务 2: 在回传逻辑中添加尊祐客户判断

  • Priority: P0
  • Depends On: 任务 1
  • Description:
    • 在 DownloadLabelByWaybillNumber 方法的 finally 块中,添加对尊祐客户(ZY_SH)的判断
    • 当客户代码为 ZY_SH 时,调用 SendWebhookToZunYou 方法
    • 确保使用异步方式调用,不阻塞主流程
  • Acceptance Criteria Addressed: AC-1
  • Test Requirements:
    • programmatic TR-2.1: 当客户代码为 ZY_SH 时,能够触发回传
    • programmatic TR-2.2: 回传调用不阻塞主流程
    • human-judgment TR-2.3: 代码逻辑与现有回传判断逻辑一致
  • Notes: 参考现有的 PT_GZ 和 XT_JX 客户的回传判断逻辑

[ ] 任务 3: 测试回传功能

  • Priority: P1
  • Depends On: 任务 1, 任务 2
  • Description:
    • 模拟尊祐客户的标签下载请求
    • 验证回传请求是否正确发送
    • 检查日志记录是否完整
    • 验证错误处理是否正常
  • Acceptance Criteria Addressed: AC-1, AC-2, AC-3, AC-4, AC-5
  • Test Requirements:
    • programmatic TR-3.1: 系统能够正确触发尊祐客户的回传
    • programmatic TR-3.2: 回传数据格式符合要求
    • human-judgment TR-3.3: 日志记录完整且清晰
    • human-judgment TR-3.4: 错误处理机制正常工作
  • Notes: 可以使用现有的测试方法 TestXunTongWebhook 作为参考,创建类似的测试方法