From 30a4b11fafe33c56bc2c094c47c4ea43d7aad9ba Mon Sep 17 00:00:00 2001
From: Joshi <3040996759@qq.com>
Date: Sat, 11 Jul 2026 17:53:56 +0800
Subject: [PATCH] =?UTF-8?q?refactor(WmsAnnealPerformance):=20=E4=BC=98?=
=?UTF-8?q?=E5=8C=96=E9=80=80=E7=81=AB=E6=80=A7=E8=83=BD=E6=9F=A5=E8=AF=A2?=
=?UTF-8?q?=E7=9A=84=E8=BF=87=E6=BB=A4=E9=80=BB=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 移除 mapper 中废弃的钢卷号过滤条件和库区筛选参数
- 简化 SQL 查询中的条件判断逻辑
- 统一服务层中的空值检查方法
- 优化查询性能并减少不必要的 JOIN 操作
---
.../impl/WmsAnnealPerformanceServiceImpl.java | 11 +++++------
.../resources/mapper/WmsAnnealPerformanceMapper.xml | 13 +------------
2 files changed, 6 insertions(+), 18 deletions(-)
diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsAnnealPerformanceServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsAnnealPerformanceServiceImpl.java
index b1bb473d6..4544a10b7 100644
--- a/klp-wms/src/main/java/com/klp/service/impl/WmsAnnealPerformanceServiceImpl.java
+++ b/klp-wms/src/main/java/com/klp/service/impl/WmsAnnealPerformanceServiceImpl.java
@@ -144,17 +144,17 @@ public class WmsAnnealPerformanceServiceImpl implements IWmsAnnealPerformanceSer
continue; // 没找到加工后的卷,跳过
}
- // 如果传入了筛选条件,只保留匹配的钢卷
- if (bo.getEnterCoilNo() != null && !bo.getEnterCoilNo().isEmpty()) {
+ // 筛选加工后的钢卷
+ if (StringUtils.isNotBlank(bo.getEnterCoilNo())) {
if (coilVo.getEnterCoilNo() == null ||
!coilVo.getEnterCoilNo().contains(bo.getEnterCoilNo())) {
- continue; // 跳过不匹配的钢卷
+ continue;
}
}
- if (bo.getCurrentCoilNo() != null && !bo.getCurrentCoilNo().isEmpty()) {
+ if (StringUtils.isNotBlank(bo.getCurrentCoilNo())) {
if (coilVo.getCurrentCoilNo() == null ||
!coilVo.getCurrentCoilNo().contains(bo.getCurrentCoilNo())) {
- continue; // 跳过不匹配的钢卷
+ continue;
}
}
// 钢卷本身的逻辑库区筛选(coilVo.warehouseId保持不变)
@@ -164,7 +164,6 @@ public class WmsAnnealPerformanceServiceImpl implements IWmsAnnealPerformanceSer
continue; // 跳过不匹配的钢卷
}
}
-
// 为每个planCoil创建独立的detail,携带自身的logicWarehouseId/furnaceLevel
WmsAnnealPerformanceDetailVo coilDetail = new WmsAnnealPerformanceDetailVo();
coilDetail.setPlanId(detail.getPlanId());
diff --git a/klp-wms/src/main/resources/mapper/WmsAnnealPerformanceMapper.xml b/klp-wms/src/main/resources/mapper/WmsAnnealPerformanceMapper.xml
index 7f9831ef7..94a97fceb 100644
--- a/klp-wms/src/main/resources/mapper/WmsAnnealPerformanceMapper.xml
+++ b/klp-wms/src/main/resources/mapper/WmsAnnealPerformanceMapper.xml
@@ -17,21 +17,10 @@
AND p.plan_no LIKE CONCAT('%', #{planNo}, '%')
-
- AND mc.enter_coil_no LIKE CONCAT('%', #{enterCoilNo}, '%')
-
-
-
- AND mc.current_coil_no LIKE CONCAT('%', #{currentCoilNo}, '%')
-
AND pc.logic_warehouse_id = #{warehouseId}
-
-
- AND mc.warehouse_id = #{coilWarehouseId}
-
@@ -54,7 +43,7 @@
p.end_time AS endTime
FROM wms_furnace_plan p
LEFT JOIN wms_furnace f ON f.furnace_id = p.target_furnace_id
-
+
INNER JOIN wms_furnace_plan_coil pc ON pc.plan_id = p.plan_id AND pc.del_flag = 0
INNER JOIN wms_material_coil mc ON mc.coil_id = pc.coil_id AND mc.del_flag = 0