dy-dashboard/vault/知识库/工作指南/训练记录/2026-09-16-国内订单到货数量异常修复.md
2026-10-28 11:14:17 +08:00

21 lines
2.4 KiB
Markdown
Raw Permalink Blame History

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.

# 2026-09-16-国内订单到货数量异常修复 <!-- project: path:/home/gxd/.openclaw/workspace/dy-dashboard -->
### 1. 国内订单到货数量异常修复
**旭东 → OpenClaw:**
> 发现一个异常,国内订单管理中,POZ-MYL-7166-PDD这个品的实际到货数量、未到货数字段列显示异常,实际到货数量应该等于详情弹窗中到货批次及数量下的到货数量的合计,未到货数量应该等于详情弹窗中到货批次及数量下的订单未完结数量的合计,查一下这个异常并解决
**OpenClaw 响应:**
已查明并解决。
**异常原因**:订单号相同的国内订单和包材订单(id 都是 1300)共用了同一批到货批次记录。7 月 20 日至 7 月 27 日之间运行的旧版到货批次回溯脚本,在汇总批次时只按“订单ID”匹配、没有区分国内/海外/包材三种订单类型,并且只更新第一个命中的订单表,所以把包材订单的到货合计(13650+6393=20043)写进了国内订单 POZ-MYL-7166-PDD(下单数量 3000)这一行,导致实际到货数量显示 20043、未到货数显示 -17043。该问题在 7 月 27 日的代码提交中已经按订单类型隔离修复,属于历史遗留的脏数据。
**修复内容**:按你给的口径(实际到货数量 = 本订单本类型到货批次合计,未到货数 = 下单数量 − 该合计)重算了受影响的订单,共修复 31 行:
- 国内订单 12 行(含 POZ-MYL-7166-PDD,修复后为实际到货数量 0、未到货数 3000);
- 包材订单 19 行(其中 14 行是本类型批次存在、列表却显示 0 的情况,另 5 行是同一原因被写入了其它类型批次合计)。
这三类订单现在列表显示与详情弹窗的“到货数量合计/订单未完结数量合计”完全一致;如后续再有同样情况,新脚本可重复运行。
**安全措施**:修复前已把 31 行的修改前数值备份到 `backups/arrival_totals_repair_20260916_155723/before.json`,如需回退可按备份还原。
**验证**:国内/海外/包材三类订单“存储值 vs 本类型批次合计”残留不一致为 0;接口实测国内订单列表与详情弹窗数值一致(实际到货数量 0、未到货数 3000、批次数 0);测试环境服务已重启,本机与 `192.168.8.186:18888` 均返回 HTTP 200,Gunicorn 启动日志无错误。Git 提交 `54ac86b`。原有未提交改动均保留未动。未操作生产环境。已记录。