feat(wms): 新增钢卷分页查询功能

- 在WmsMaterialCoilMapper中添加selectVoPagePlus方法及对应XML配置
- 实现基于QueryWrapper的分页查询逻辑- 补充关联字段warehouseName以支持统计展示-优化查询条件构造器,增强筛选能力
- 调整VO类结构,确保数据传输完整性- 修复原查询逻辑中的潜在空指针问题
This commit is contained in:
2025-10-29 16:55:26 +08:00
parent ed2a56cded
commit 4f97e62a5d
4 changed files with 66 additions and 18 deletions

View File

@@ -41,7 +41,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<!-- 查询各个库区中不同类型的钢卷分布情况 -->
<select id="getDistributionByWarehouse" resultType="java.util.Map">
SELECT
SELECT
w.warehouse_id,
w.warehouse_name,
mc.item_type,
@@ -50,8 +50,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
COALESCE(SUM(mc.gross_weight), 0) as total_gross_weight,
COALESCE(SUM(mc.net_weight), 0) as total_net_weight
FROM wms_warehouse w
LEFT JOIN wms_material_coil mc ON w.warehouse_id = mc.warehouse_id
AND mc.data_type = 1
LEFT JOIN wms_material_coil mc ON w.warehouse_id = mc.warehouse_id
AND mc.data_type = 1
AND mc.del_flag = '0'
WHERE w.del_flag = '0'
<if test="itemType != null and itemType != ''">
@@ -66,7 +66,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<!-- 查询不同类型的钢卷在不同库区的分布情况 -->
<select id="getDistributionByItemType" resultType="java.util.Map">
SELECT
SELECT
mc.item_type,
mc.item_id,
w.warehouse_id,
@@ -76,7 +76,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
COALESCE(SUM(mc.net_weight), 0) as total_net_weight
FROM wms_material_coil mc
LEFT JOIN wms_warehouse w ON mc.warehouse_id = w.warehouse_id
WHERE mc.data_type = 1
WHERE mc.data_type = 1
AND mc.del_flag = '0'
AND (w.del_flag = '0' OR w.del_flag IS NULL)
<if test="itemType != null and itemType != ''">
@@ -88,6 +88,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
GROUP BY mc.item_type, mc.item_id, w.warehouse_id, w.warehouse_name
ORDER BY mc.item_type, mc.item_id, w.warehouse_id
</select>
<select id="selectVoPagePlus" resultType="com.klp.domain.vo.WmsMaterialCoilVo">
SELECT
mc.coil_id,
mc.enter_coil_no,
mc.current_coil_no,
mc.supplier_coil_no,
mc.data_type,
mc.next_warehouse_id,
mc.qrcode_record_id,
mc.team,
mc.has_merge_split,
mc.parent_coil_nos,
mc.item_type,
mc.item_id,
mc.gross_weight,
mc.net_weight,
mc.status,
mc.remark,
mc.warehouse_id,
w.warehouse_name AS warehouseName
FROM wms_material_coil mc
LEFT JOIN wms_warehouse w ON mc.warehouse_id = w.warehouse_id
${ew.customSqlSegment}
</select>
</mapper>