feat(wms/material-coil): 新增钢卷囤积统计与二维码详情查询功能

1. 新增囤积统计接口:计算已发货钢卷的平均囤积周期和平均囤积成本
   - 囤积周期 = 发货时间 - 二维码第一步创建时间
   - 囤积成本 = 囤积天数 × 钢卷净重 × 1元/吨/天
   - 支持与分页列表相同的查询条件筛选

2. 新增二维码详情查询接口:在分页查询基础上填充完整的二维码记录信息
   - 前端可通过 qrcodeRecord.content 获取二维码JSON内容
   - 采用批量查询避免N+1性能问题

调整前,钢卷查询无法获取二维码详细内容,也无法统计囤积相关指标;调整后,支持二维码内容查看和囤积成本分析,为仓储成本核算提供数据支持。
This commit is contained in:
2026-06-04 15:45:51 +08:00
parent 37d6830947
commit 5236500f04
3 changed files with 242 additions and 0 deletions

View File

@@ -387,5 +387,26 @@ public interface IWmsMaterialCoilService {
* 根据入场钢卷号或当前钢卷号查询钢卷,供双机架计划绑定使用
*/
com.klp.domain.vo.WmsMaterialCoilVo queryByCoilNo(String coilNo);
/**
* 统计已发货钢卷的平均囤积周期和平均囤积成本
* 使用与分页列表相同的查询条件,按发货时间筛选已发货钢卷
* 囤积周期 = 发货时间 - 二维码中第一个步骤的创建时间
* 囤积成本 = 囤积天数 * 净重(吨) * 1元/吨/天
*
* @param bo 查询条件
* @return avgHoardingDays(平均囤积天数), avgHoardingCost(平均囤积成本), totalCount(已发货钢卷数量)
*/
Map<String, Object> getHoardingStatistics(WmsMaterialCoilBo bo);
/**
* 查询钢卷物料表列表(包含二维码记录信息)
* 与queryPageList查询条件完全一致区别是会填充qrcodeRecord字段WmsGenerateRecordVo
* 前端可通过qrcodeRecord.content获取二维码的JSON内容
*
* @param bo 查询条件
* @param pageQuery 分页参数
*/
TableDataInfo<WmsMaterialCoilVo> queryPageListWithQrcode(WmsMaterialCoilBo bo, PageQuery pageQuery);
}