cangku/frontend
yanhui 85e2db9f92 feat: 仓储中心物流转运异常页新增「导出异常明细」(Excel / CSV)
- 后端新增 GET /api/warehouse-logistics-exception/export:复用列表同一套口径
  (getLogisticsExceptions),只把明细上限从列表 2000 放宽到 5000,不分页,
  判定/剔除逻辑一行未改,避免「导出与页面两套口径」。
- 结果缓存由单槽改为按 `核验日|明细上限` 分键的 Map(上限 8 条):
  页面按默认条数取、导出按 5000 取,单槽会互相踢掉 —— 导出一次,页面下次
  自动刷新就得重查库(20~40s)。分键后两者互不影响。
- 前端把明细过滤抽成 filterDetailOrders,表格与导出共用同一个函数,
  保证「导出的就是页面看到的」。
- 导出列单独定义 EXPORT_COLUMNS(13 列纯文本标题):页面列用了 Tooltip,
  直接复用列定义会把表头导出成 [object Object];运单号/物流状态/最后轨迹
  为空时导出为「无运单号 / 无状态 / 无轨迹」,Excel 里不留空格。
- 导出跟随当前核验日 + 选中仓 + 选中异常类型;文件名带核验日与筛选范围
  (仓储物流转运异常_<核验日>_<仓>_<类型>);0 行时提示且不生成空文件;
  超过 5000 行时如实提示「已截断」。导出按钮做 loading,防重复点。
- 测试:新增 2 个用例 —— ①导出行数等于异常包裹数、字段齐全、带剔除口径;
  ②缓存按 limit 分键(页面 1000 条那份不被导出 5000 条顶掉)。
  warehouseLogisticsException.test.js 26/26 通过。

口径未变:承运商剔除(顺丰系全剔、京喜京东、睢宁中通按仓、武进安能/中铁/
壹米滴答/自提/线下/商家配送)、订单终止与刷单信誉单剔除、异常 5 类判定,
全部沿用 #71 已合并版本。
2026-10-22 09:58:22 +08:00
..

前端

安装、启动、配置与贡献说明见项目文档。