From 657698fd2fb32794932474648dbaee9e284e38c8 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期一, 12 十月 2026 18:31:20 +0800
Subject: [PATCH] feat(bpm): 添加全局免审批功能支持

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/qc/iqc/MesQcIqcMapper.java |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/qc/iqc/MesQcIqcMapper.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/qc/iqc/MesQcIqcMapper.java
index bfa0a71..78bff1c 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/qc/iqc/MesQcIqcMapper.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/qc/iqc/MesQcIqcMapper.java
@@ -7,6 +7,9 @@
 import cn.iocoder.yudao.module.mes.dal.dataobject.qc.iqc.MesQcIqcDO;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.time.LocalDateTime;
+import java.util.List;
+
 /**
  * MES 鏉ユ枡妫�楠屽崟锛圛QC锛� Mapper
  *
@@ -19,6 +22,7 @@
         return selectPage(reqVO, new LambdaQueryWrapperX<MesQcIqcDO>()
                 .likeIfPresent(MesQcIqcDO::getCode, reqVO.getCode())
                 .eqIfPresent(MesQcIqcDO::getVendorId, reqVO.getVendorId())
+                .likeIfPresent(MesQcIqcDO::getVendorName, reqVO.getVendorName())
                 .likeIfPresent(MesQcIqcDO::getVendorBatch, reqVO.getVendorBatch())
                 .eqIfPresent(MesQcIqcDO::getItemId, reqVO.getItemId())
                 .eqIfPresent(MesQcIqcDO::getCheckResult, reqVO.getCheckResult())
@@ -36,4 +40,20 @@
         return selectCount(MesQcIqcDO::getVendorId, vendorId);
     }
 
+    /**
+     * 鎸夊鍏ュ幓閲嶉敭鏌ヨ锛氬悓涓� 鐗╂枡 + 渚涘簲鍟� + 渚涘簲鍟嗘壒娆� + 鏉ユ枡鏃ユ湡 瑙嗕负鍚屼竴鎵规潵鏂欐暟鎹�
+     */
+    default List<MesQcIqcDO> selectListByImportKey(Long itemId, String vendorName, String vendorBatch,
+                                                   LocalDateTime receiveDate) {
+        return selectList(new LambdaQueryWrapperX<MesQcIqcDO>()
+                .eq(MesQcIqcDO::getItemId, itemId)
+                .eq(vendorName != null && !vendorName.isEmpty(), MesQcIqcDO::getVendorName, vendorName)
+                .and(vendorName == null || vendorName.isEmpty(), wrapper -> wrapper
+                        .isNull(MesQcIqcDO::getVendorName).or().eq(MesQcIqcDO::getVendorName, ""))
+                .eq(vendorBatch != null, MesQcIqcDO::getVendorBatch, vendorBatch)
+                .isNull(vendorBatch == null, MesQcIqcDO::getVendorBatch)
+                .eq(MesQcIqcDO::getReceiveDate, receiveDate)
+                .orderByAsc(MesQcIqcDO::getId));
+    }
+
 }

--
Gitblit v1.9.3