查询优化,新增酸连轧页面

This commit is contained in:
2025-11-17 11:58:42 +08:00
parent e60b62f3e2
commit 23900f38f8
11 changed files with 1523 additions and 380 deletions

View File

@@ -94,11 +94,41 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mc.packaging_requirement,
mc.packing_status,
w.warehouse_name AS warehouseName,
aw.actual_warehouse_name AS actualWarehouseName
aw.actual_warehouse_name AS actualWarehouseName,
-- 原材料字段
rm.raw_material_id AS rawMaterialId,
rm.raw_material_code AS rawMaterialCode,
rm.raw_material_name AS rawMaterialName,
rm.specification AS rawMaterialSpecification,
rm.steel_grade AS rawMaterialSteelGrade,
rm.thickness AS rawMaterialThickness,
rm.width AS rawMaterialWidth,
rm.bom_id AS rawMaterialBomId,
-- 产品字段
p.product_id AS productId,
p.product_code AS productCode,
p.product_name AS productName,
p.specification AS productSpecification,
p.thickness AS productThickness,
p.width AS productWidth,
p.bom_id AS productBomId,
-- 物品名称和编号(用于兼容)
CASE
WHEN mc.item_type = 'raw_material' THEN rm.raw_material_name
WHEN mc.item_type = 'product' THEN p.product_name
ELSE NULL
END as itemName,
CASE
WHEN mc.item_type = 'raw_material' THEN rm.raw_material_code
WHEN mc.item_type = 'product' THEN p.product_code
ELSE NULL
END as itemCode
FROM wms_material_coil mc
LEFT JOIN wms_warehouse w ON mc.warehouse_id = w.warehouse_id
LEFT JOIN wms_actual_warehouse aw ON mc.actual_warehouse_id = aw.actual_warehouse_id
${ew.customSqlSegment}
LEFT JOIN wms_warehouse w ON mc.warehouse_id = w.warehouse_id
LEFT JOIN wms_actual_warehouse aw ON mc.actual_warehouse_id = aw.actual_warehouse_id
LEFT JOIN wms_raw_material rm ON mc.item_type = 'raw_material' AND mc.item_id = rm.raw_material_id
LEFT JOIN wms_product p ON mc.item_type = 'product' AND mc.item_id = p.product_id
${ew.customSqlSegment}
</select>
<!-- 查询不同类型的钢卷在不同库区的分布情况 -->
<select id="getDistributionByItemType" resultType="java.util.Map">
@@ -141,7 +171,25 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectVoListWithDynamicJoin" resultType="com.klp.domain.vo.WmsMaterialCoilVo">
SELECT mc.*,
w.warehouse_name AS warehouseName,
aw.warehouse_name AS actualWarehouseName,
aw.actual_warehouse_name AS actualWarehouseName,
-- 原材料字段
rm.raw_material_id AS rawMaterialId,
rm.raw_material_code AS rawMaterialCode,
rm.raw_material_name AS rawMaterialName,
rm.specification AS rawMaterialSpecification,
rm.steel_grade AS rawMaterialSteelGrade,
rm.thickness AS rawMaterialThickness,
rm.width AS rawMaterialWidth,
rm.bom_id AS rawMaterialBomId,
-- 产品字段
p.product_id AS productId,
p.product_code AS productCode,
p.product_name AS productName,
p.specification AS productSpecification,
p.thickness AS productThickness,
p.width AS productWidth,
p.bom_id AS productBomId,
-- 物品名称和编号(用于兼容)
CASE
WHEN mc.item_type = 'raw_material' THEN rm.raw_material_name
WHEN mc.item_type = 'product' THEN p.product_name
@@ -153,11 +201,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
ELSE NULL
END as itemCode
FROM wms_material_coil mc
LEFT JOIN wms_raw_material rm ON mc.item_type = 'raw_material' AND mc.item_id = rm.raw_material_id
LEFT JOIN wms_product p ON mc.item_type = 'product' AND mc.item_id = p.product_id
LEFT JOIN wms_warehouse w ON mc.warehouse_id = w.warehouse_id
LEFT JOIN wms_actual_warehouse aw ON mc.actual_warehouse_id = aw.actual_warehouse_id
${ew.customSqlSegment}
LEFT JOIN wms_raw_material rm ON mc.item_type = 'raw_material' AND mc.item_id = rm.raw_material_id
LEFT JOIN wms_product p ON mc.item_type = 'product' AND mc.item_id = p.product_id
LEFT JOIN wms_warehouse w ON mc.warehouse_id = w.warehouse_id
LEFT JOIN wms_actual_warehouse aw ON mc.actual_warehouse_id = aw.actual_warehouse_id
${ew.customSqlSegment}
</select>
<select id="getDistributionByActualWarehouse" resultType="java.util.Map">
SELECT