Data-Integrity

复制出库单为何消失在默认总览:继承旧时间导致查询窗 …

一个刚创建的出库单,在订单状态页面按单号搜索可以查到,但直接打开默认出库总览却看不到。接口、权限和仓库范围都没有报错,这种现象很像列表 SQL 漏查或缓存没有刷新。

排查首先对比了两条查询路径。按单号查询使用明确的唯一条件,默认总览还会附加最近时间窗口。数据库中的单据状态正常,但创建时间沿用了被复制旧单的日期,没有落在当天。

根因在复制语义

复制功能复用了原单对象和明细。业务字段需要继承,但审计和生命周期字段也被一起带了过来,包括单头与明细的创建时间、修改时间。

于是系统出现了一个矛盾的新单:

  • 单号和数据库记录是新生成的;
  • 状态也是新流程的初始状态;
  • 时间却属于历史单据;
  • 默认总览只展示最近 …