From 1ba0dbfde5634c8bf2ec20891d6b226b996f6b59 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期三, 02 九月 2026 14:24:38 +0800
Subject: [PATCH] refactor(mes): 优化MES生产扫码入库功能支持多类型扫码

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/salesnotice/MesWmSalesNoticeMapper.java |   33 ++++++++++++++++++++++++++++-----
 1 files changed, 28 insertions(+), 5 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/salesnotice/MesWmSalesNoticeMapper.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/salesnotice/MesWmSalesNoticeMapper.java
index 3ac2683..088bd2b 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/salesnotice/MesWmSalesNoticeMapper.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/salesnotice/MesWmSalesNoticeMapper.java
@@ -1,11 +1,14 @@
 package cn.iocoder.yudao.module.mes.dal.mysql.wm.salesnotice;
 
+import cn.hutool.core.collection.CollUtil;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
 import cn.iocoder.yudao.module.mes.controller.admin.wm.salesnotice.vo.MesWmSalesNoticePageReqVO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.wm.salesnotice.MesWmSalesNoticeDO;
 import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
 
 /**
  * MES 鍙戣揣閫氱煡鍗� Mapper
@@ -17,18 +20,38 @@
         return selectPage(reqVO, new LambdaQueryWrapperX<MesWmSalesNoticeDO>()
                 .likeIfPresent(MesWmSalesNoticeDO::getCode, reqVO.getCode())
                 .likeIfPresent(MesWmSalesNoticeDO::getName, reqVO.getName())
-                .likeIfPresent(MesWmSalesNoticeDO::getSaleOrderCode, reqVO.getSaleOrderCode())
                 .eqIfPresent(MesWmSalesNoticeDO::getClientId, reqVO.getClientId())
                 .eqIfPresent(MesWmSalesNoticeDO::getStatus, reqVO.getStatus())
                 .orderByDesc(MesWmSalesNoticeDO::getId));
     }
 
-    default MesWmSalesNoticeDO selectByCode(String code) {
-        return selectOne(MesWmSalesNoticeDO::getCode, code);
+    /**
+     * 鍒嗛〉鏌ヨ锛堝甫瀹㈡埛鏉冮檺杩囨护锛�
+     *
+     * @param reqVO 鏌ヨ鏉′欢
+     * @param permittedClientIds 鏈夋潈闄愮殑瀹㈡埛 ID 鍒楄〃锛坣ull 琛ㄧず涓嶉檺鍒讹級
+     * @return 鍒嗛〉缁撴灉
+     */
+    default PageResult<MesWmSalesNoticeDO> selectPage(MesWmSalesNoticePageReqVO reqVO, List<Long> permittedClientIds) {
+        LambdaQueryWrapperX<MesWmSalesNoticeDO> wrapper = new LambdaQueryWrapperX<MesWmSalesNoticeDO>()
+                .likeIfPresent(MesWmSalesNoticeDO::getCode, reqVO.getCode())
+                .likeIfPresent(MesWmSalesNoticeDO::getName, reqVO.getName())
+                .eqIfPresent(MesWmSalesNoticeDO::getClientId, reqVO.getClientId())
+                .eqIfPresent(MesWmSalesNoticeDO::getStatus, reqVO.getStatus())
+                .orderByDesc(MesWmSalesNoticeDO::getId);
+        // 瀹㈡埛鏉冮檺杩囨护
+        if (permittedClientIds != null) {
+            if (CollUtil.isEmpty(permittedClientIds)) {
+                // 绌哄垪琛ㄨ〃绀烘病鏈変换浣曟潈闄愶紝杩斿洖绌虹粨鏋�
+                return PageResult.empty();
+            }
+            wrapper.in(MesWmSalesNoticeDO::getClientId, permittedClientIds);
+        }
+        return selectPage(reqVO, wrapper);
     }
 
-    default MesWmSalesNoticeDO selectBySaleOrderId(Long saleOrderId) {
-        return selectOne(MesWmSalesNoticeDO::getSaleOrderId, saleOrderId);
+    default MesWmSalesNoticeDO selectByCode(String code) {
+        return selectOne(MesWmSalesNoticeDO::getCode, code);
     }
 
 }

--
Gitblit v1.9.3