feat: 每日进销存补充流水与期初数据,修复合计行 NaN #43

Merged
youruo merged 1 commits from codex/daily-inventory-complete-data-0927 into main 2026-09-27 09:56:24 +08:00
Collaborator

背景

页面期初列与 12 个流水列全部显示「—」,合计行仓库名显示 NaN。

改动

  • 流水列接入 4/12(业务库原生口径,页面 tip 注明):
    • 采购进仓(+):jst_purchase × jst_purchaseItem,po_date,仅 Confirmed/Finished
    • 采购退货(−):jst_purchaseout × jst_purchaseoutItem,io_date
    • 销售出仓(−):jst_Orders × jst_OrderItem,send_date(与周转率发货口径一致)
    • 销售退货(+):jst_returnAndRefund × Item,as_date,实收数量 r_qty,类型限普通退货/拒收退货/换货/维修
    • 其余 8 列(加工/其它/盘点/调拨)已核实业务库全库无对应单据表,保持「—」待 DBA 建表
  • 期初快照缺失自动兜底:优先 rpt.pm_stockMonitor(01:00 跑批 T-1 库存,精确,覆盖 14/26 仓);
    监控表没有的虚拟仓(运营专用/京东仓 12 个)用实时库存扣期初以来带符号流水回推(近似)。推导结果补写快照。
  • 合计行 NaN 修复:isTotal 渲染分支此前拦截所有列,「合计」被强转数字;现仓库名原样显示,
    无数据来源的流水列合计显示「—」而非误导性 0;某列全仓无数据时合计置空。

验证

  • 新增 4 项单元测试全过;后端全量 370/371(唯一失败为既有 Windows 文件权限用例,无关)
  • 前端 lint/test/build 全过
  • 口径校准(崔桥 9-23 基准):销售出库单表行数 3621 vs 基准 4273、订单 send_date 1769,
    销售出库单明细数量字段未同步,无法精确还原导出口径,故采用页面注明的数据库原生口径
## 背景 页面期初列与 12 个流水列全部显示「—」,合计行仓库名显示 NaN。 ## 改动 - **流水列接入 4/12**(业务库原生口径,页面 tip 注明): - 采购进仓(+):`jst_purchase × jst_purchaseItem`,po_date,仅 Confirmed/Finished - 采购退货(−):`jst_purchaseout × jst_purchaseoutItem`,io_date - 销售出仓(−):`jst_Orders × jst_OrderItem`,send_date(与周转率发货口径一致) - 销售退货(+):`jst_returnAndRefund × Item`,as_date,实收数量 r_qty,类型限普通退货/拒收退货/换货/维修 - 其余 8 列(加工/其它/盘点/调拨)已核实业务库全库无对应单据表,保持「—」待 DBA 建表 - **期初快照缺失自动兜底**:优先 `rpt.pm_stockMonitor`(01:00 跑批 T-1 库存,精确,覆盖 14/26 仓); 监控表没有的虚拟仓(运营专用/京东仓 12 个)用实时库存扣期初以来带符号流水回推(近似)。推导结果补写快照。 - **合计行 NaN 修复**:isTotal 渲染分支此前拦截所有列,「合计」被强转数字;现仓库名原样显示, 无数据来源的流水列合计显示「—」而非误导性 0;某列全仓无数据时合计置空。 ## 验证 - 新增 4 项单元测试全过;后端全量 370/371(唯一失败为既有 Windows 文件权限用例,无关) - 前端 lint/test/build 全过 - 口径校准(崔桥 9-23 基准):销售出库单表行数 3621 vs 基准 4273、订单 send_date 1769, 销售出库单明细数量字段未同步,无法精确还原导出口径,故采用页面注明的数据库原生口径
youruo added 1 commit 2026-09-27 09:55:37 +08:00
数据补充(全部来自数据库,无人工填数):
- 流水列接入 4/12:采购进仓(jst_purchase×Item,po_date,Confirmed/Finished)、
  采购退货(jst_purchaseout×Item,io_date)、销售出仓(jst_Orders×OrderItem,send_date,
  与周转率发货口径一致)、销售退货(jst_returnAndRefund×Item,as_date,实收 r_qty)。
  其余 8 列业务库确无单据表(已核实全库表清单),保持「—」待 DBA 建表
- 期初快照缺失时自动兜底:优先用 rpt.pm_stockMonitor(报表库 01:00 跑批 T-1 库存,
  按 dbWarehouse 聚合 jsStock,精确);监控表没有的虚拟仓(运营专用/京东仓)用
  实时库存扣自期初时刻以来的带符号流水回推(近似),推导结果补写快照逐日滚动

缺陷修复:
- 合计行仓库名显示 NaN:isTotal 渲染分支拦截了所有列,'合计' 被强转数字;
  现仓库名原样显示,无数据来源的流水列合计也显示「—」而非误导性 0
- 合计行:某列全部仓库均无数据时合计置空,避免 0 误读

新增 4 项单元测试(流水符号约定、参数展开、期初双路径推导)。
youruo merged commit dc12f6753d into main 2026-09-27 09:56:24 +08:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: lunanting/cangku#43
No description provided.