1.5 KiB
1.5 KiB
2026-08-10 下单备份回退按下单时间定位
1. 回退数据按下单时间判断,仅回退当前批次
旭东 → OpenClaw:
下单备份管理点击回退数据的时候,没有根据时间来判断,目前是将历史订单和当前订单全部回退了,这个是错误的,回退的时候应该要判断下单时间,比如当前订单下单时间是7-25,另外还存在一个7-15的订单,那么回退的时候就只能回退7-25的订单,7-15的订单不能回退
OpenClaw 响应:
- 定位到
routes/purchase.py下单回退接口:原逻辑按货品编号查全部订单行并整体删除,未区分批次;且任一批次已完结/到货就会阻断当前回退 - 修复:回退时读取当前备份记录的下单时间(
pending_orders.ordered_at),按订单表「计划下单时间」精准定位本次确认下单产生的订单行- 只删除当前批次的国内/海外订单行,历史批次(更早下单时间)不受影响
- 状态/到货校验只针对当前批次,历史批次已完结不再阻断回退
- 包材订单按「来源产品编码+下单时间」精准删除(原逻辑按物料编码全量删除,可能误删其他商品/批次的包材)
- 前端回退确认弹窗展示下单时间,注明「仅回退该批次,历史批次不受影响」;操作日志记录下单时间
- 3 个场景模拟验证通过(当前批次回退/当前批次已完结阻断/历史批次已完结不阻断),20 项测试无回归;Git 提交 2b02496