Files
klp-oa/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml

94 lines
4.1 KiB
XML
Raw Normal View History

2025-10-28 12:20:20 +08:00
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.klp.mapper.WmsMaterialCoilMapper">
<resultMap type="com.klp.domain.WmsMaterialCoil" id="WmsMaterialCoilResult">
<result property="coilId" column="coil_id"/>
<result property="enterCoilNo" column="enter_coil_no"/>
<result property="currentCoilNo" column="current_coil_no"/>
<result property="supplierCoilNo" column="supplier_coil_no"/>
<result property="dataType" column="data_type"/>
<result property="warehouseId" column="warehouse_id"/>
<result property="nextWarehouseId" column="next_warehouse_id"/>
<result property="qrcodeRecordId" column="qrcode_record_id"/>
<result property="team" column="team"/>
<result property="hasMergeSplit" column="has_merge_split"/>
<result property="parentCoilNos" column="parent_coil_nos"/>
<result property="itemType" column="item_type"/>
<result property="itemId" column="item_id"/>
2025-10-28 15:03:08 +08:00
<result property="grossWeight" column="gross_weight"/>
<result property="netWeight" column="net_weight"/>
2025-10-28 12:20:20 +08:00
<result property="status" column="status"/>
<result property="remark" column="remark"/>
<result property="delFlag" column="del_flag"/>
<result property="createTime" column="create_time"/>
<result property="createBy" column="create_by"/>
<result property="updateTime" column="update_time"/>
<result property="updateBy" column="update_by"/>
</resultMap>
2025-10-29 14:13:06 +08:00
<!-- 统计查询专用的ResultMap -->
<resultMap type="com.klp.domain.vo.WmsMaterialCoilVo" id="WmsMaterialCoilDistributionResult">
<result property="warehouseId" column="warehouse_id"/>
<result property="warehouseName" column="warehouse_name"/>
<result property="itemType" column="item_type"/>
<result property="coilCount" column="coil_count"/>
<result property="totalGrossWeight" column="total_gross_weight"/>
<result property="totalNetWeight" column="total_net_weight"/>
</resultMap>
<!-- 查询各个库区中不同类型的钢卷分布情况 -->
<select id="getDistributionByWarehouse" resultType="java.util.Map">
SELECT
w.warehouse_id,
w.warehouse_name,
mc.item_type,
2025-10-29 14:40:09 +08:00
mc.item_id,
2025-10-29 14:13:06 +08:00
COUNT(mc.coil_id) as coil_count,
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
AND mc.del_flag = '0'
WHERE w.del_flag = '0'
2025-10-29 14:40:09 +08:00
<if test="itemType != null and itemType != ''">
AND mc.item_type = #{itemType}
</if>
<if test="itemId != null">
AND mc.item_id = #{itemId}
</if>
GROUP BY w.warehouse_id, w.warehouse_name, mc.item_type, mc.item_id
ORDER BY w.warehouse_id, mc.item_type, mc.item_id
2025-10-29 14:13:06 +08:00
</select>
<!-- 查询不同类型的钢卷在不同库区的分布情况 -->
<select id="getDistributionByItemType" resultType="java.util.Map">
SELECT
mc.item_type,
2025-10-29 14:40:09 +08:00
mc.item_id,
2025-10-29 14:13:06 +08:00
w.warehouse_id,
w.warehouse_name,
COUNT(mc.coil_id) as coil_count,
COALESCE(SUM(mc.gross_weight), 0) as total_gross_weight,
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
AND mc.del_flag = '0'
AND (w.del_flag = '0' OR w.del_flag IS NULL)
2025-10-29 14:40:09 +08:00
<if test="itemType != null and itemType != ''">
AND mc.item_type = #{itemType}
</if>
<if test="itemId != null">
AND mc.item_id = #{itemId}
</if>
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
2025-10-29 14:13:06 +08:00
</select>
2025-10-28 12:20:20 +08:00
</mapper>