feat: 库存动销分析「销售=0」档支持导出 SKU 明细 #49

Merged
youruo merged 1 commits from codex/ssa-zero-export-0927 into main 2026-09-28 08:18:55 +08:00
Collaborator

背景

用户要求在「库存动销分析」页面的「销售=0」档增加导出功能。

实现

  • 后端 GET /api/stock-sales-analysis/zero-sales-export:SKU 级明细(仓库/SKU编码/SKU名称/库存数量/销量/统计天数/统计基准日),口径与页面分档完全一致(同一段 gradeCase + 「有库存或有销量」过滤)
  • 支持 days 统计窗口、wmsCoId 逗号分隔过滤(仅允许仓库清单内的 ID)、format=xlsx|csv
  • 前端工具栏新增「导出销售=0」按钮,跟随统计天数与仓库筛选,文件名含业务日期与仓库范围
  • 测试补充 3 条(防呆抛错 / 空参短路 / SQL 口径与参数传递)

验证

  • 后端 syntax 通过、单测 8/8(全量 389 条仅既有 Windows 环境项失败)
  • 前端 eslint / build / test 21/21 通过
  • 本地实测:全仓导出 3641 行、26 仓、销量列全为 0;单仓 694 行与页面「销售=0」SKU 数一致
  • 浏览器实测点击下载:文件名「库存动销分析-销售0明细-20260926.xlsx」,1.2MB

  • 合并授权:(待用户确认后在此追加记录)
## 背景 用户要求在「库存动销分析」页面的「销售=0」档增加导出功能。 ## 实现 - 后端 `GET /api/stock-sales-analysis/zero-sales-export`:SKU 级明细(仓库/SKU编码/SKU名称/库存数量/销量/统计天数/统计基准日),口径与页面分档完全一致(同一段 gradeCase + 「有库存或有销量」过滤) - 支持 `days` 统计窗口、`wmsCoId` 逗号分隔过滤(仅允许仓库清单内的 ID)、`format=xlsx|csv` - 前端工具栏新增「导出销售=0」按钮,跟随统计天数与仓库筛选,文件名含业务日期与仓库范围 - 测试补充 3 条(防呆抛错 / 空参短路 / SQL 口径与参数传递) ## 验证 - 后端 syntax 通过、单测 8/8(全量 389 条仅既有 Windows 环境项失败) - 前端 eslint / build / test 21/21 通过 - 本地实测:全仓导出 3641 行、26 仓、销量列全为 0;单仓 694 行与页面「销售=0」SKU 数一致 - 浏览器实测点击下载:文件名「库存动销分析-销售0明细-20260926.xlsx」,1.2MB --- - 合并授权:(待用户确认后在此追加记录)
youruo added 1 commit 2026-09-27 17:49:05 +08:00
- 后端新增 GET /api/stock-sales-analysis/zero-sales-export:
  复用与页面完全一致的分档口径(同一段 gradeCase 表达式 + 「有库存或有销量」过滤),
  输出仓库/SKU编码/SKU名称/库存数量/销量/统计天数/统计基准日的 SKU 级明细;
  支持.days 统计窗口、wmsCoId 逗号分隔过滤(仅允许仓库清单内的 ID,防任意拼参)、
  format=xlsx|csv,复用通用导出服务 exportWorkbook
- services 新增 fetchZeroSaleSkuRows:SKU 级「销售=0」查询,LEFT JOIN rpt.jst_sku 取名称,
  按仓库+库存倒序排列
- 前端工具栏新增「导出销售=0」按钮:跟随当前统计天数与仓库筛选,
  文件名含业务日期与仓库范围,失败时解出错误体给出可读提示
- 测试补充 3 条:防呆抛错、空参短路、SQL 口径与参数传递断言

验证:后端 syntax 通过、单测 8/8(全量 389 条仅既有 Windows 环境项失败);
前端 eslint/build/test 21/21 通过;
本地实测:全仓导出 3641 行、26 仓、销量列全为 0;
单仓(崔桥半成品包装 694 行)与页面「销售=0」SKU 数一致;
浏览器实测点击下载真实文件名「库存动销分析-销售0明细-20260926.xlsx」
Author
Collaborator

合并授权记录:用户于 2026-09-28 08:18:52(北京时间)选择「授权合并并部署(推荐)」。

合并授权记录:用户于 2026-09-28 08:18:52(北京时间)选择「授权合并并部署(推荐)」。
youruo merged commit 4d419c5c7c into main 2026-09-28 08:18:55 +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#49
No description provided.