From 3edf8c4fc07f9784e2d04ee7a98692bb457749eb Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期一, 26 十月 2026 16:28:10 +0800
Subject: [PATCH] feat(mes): 新增工艺路线完整导入功能并优化相关验证

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/route/MesProRouteMapper.java |   17 +++++++++++++----
 1 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/route/MesProRouteMapper.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/route/MesProRouteMapper.java
index e98ec24..7987462 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/route/MesProRouteMapper.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/pro/route/MesProRouteMapper.java
@@ -5,6 +5,7 @@
 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
 import cn.iocoder.yudao.module.mes.controller.admin.pro.route.vo.MesProRoutePageReqVO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.pro.route.MesProRouteDO;
+import cn.hutool.core.util.StrUtil;
 import org.apache.ibatis.annotations.Mapper;
 
 import java.util.List;
@@ -12,18 +13,26 @@
 /**
  * MES 宸ヨ壓璺嚎 Mapper
  *
- * @author 鑺嬮亾婧愮爜
+ * @author 瓒呯骇绠$悊鍛�
  */
 @Mapper
 public interface MesProRouteMapper extends BaseMapperX<MesProRouteDO> {
 
     default PageResult<MesProRouteDO> selectPage(MesProRoutePageReqVO reqVO) {
-        return selectPage(reqVO, new LambdaQueryWrapperX<MesProRouteDO>()
+        LambdaQueryWrapperX<MesProRouteDO> query = new LambdaQueryWrapperX<MesProRouteDO>()
                 .likeIfPresent(MesProRouteDO::getCode, reqVO.getCode())
                 .likeIfPresent(MesProRouteDO::getName, reqVO.getName())
                 .eqIfPresent(MesProRouteDO::getStatus, reqVO.getStatus())
-                .betweenIfPresent(MesProRouteDO::getCreateTime, reqVO.getCreateTime())
-                .orderByDesc(MesProRouteDO::getId));
+                .betweenIfPresent(MesProRouteDO::getCreateTime, reqVO.getCreateTime());
+        if (StrUtil.isNotBlank(reqVO.getProductKeyword())) {
+            String keyword = reqVO.getProductKeyword().trim();
+            query.apply("EXISTS (SELECT 1 FROM mes_pro_route_product rp "
+                    + "JOIN mes_md_item item ON item.id = rp.item_id AND item.deleted = 0 "
+                    + "WHERE rp.route_id = mes_pro_route.id AND rp.deleted = 0 "
+                    + "AND (item.code LIKE CONCAT('%', {0}, '%') "
+                    + "OR item.name LIKE CONCAT('%', {1}, '%')))", keyword, keyword);
+        }
+        return selectPage(reqVO, query.orderByDesc(MesProRouteDO::getId));
     }
 
     default MesProRouteDO selectByCode(String code) {

--
Gitblit v1.9.3