From d39e4f7d839167c16425086dfa2f8747bccfdff9 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 05 十一月 2026 17:39:01 +0800
Subject: [PATCH] feat: 打通销售采购财务闭环并完成累计业务优化

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/batch/MesWmBatchMapper.java |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/batch/MesWmBatchMapper.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/batch/MesWmBatchMapper.java
index 084e2ad..36f617d 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/batch/MesWmBatchMapper.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/mysql/wm/batch/MesWmBatchMapper.java
@@ -95,6 +95,11 @@
     default MesWmBatchDO selectFirst(MesWmBatchDO batch) {
         LambdaQueryWrapper<MesWmBatchDO> query = new LambdaQueryWrapper<>();
         query.eq(MesWmBatchDO::getItemId, batch.getItemId());
+        if (ObjUtil.isNull(batch.getReelNo())) {
+            query.isNull(MesWmBatchDO::getReelNo);
+        } else {
+            query.eq(MesWmBatchDO::getReelNo, batch.getReelNo());
+        }
         if (ObjUtil.isNull(batch.getVendorId())) {
             query.isNull(MesWmBatchDO::getVendorId);
         } else {
@@ -168,6 +173,12 @@
 
         // 杩斿洖 ID 鏈�灏忕殑鎵规
         query.orderByAsc(MesWmBatchDO::getId);
+        if (batch.getReelNo() != null) {
+            // 鏁版嵁搴撴帓搴忚鍒欏彲鑳藉拷鐣ュぇ灏忓啓鎴栨湯灏剧┖鏍硷紱鐩樺彿蹇呴』鎸夎緭鍏ュ�肩簿纭尮閰嶃��
+            return selectList(query).stream()
+                    .filter(candidate -> batch.getReelNo().equals(candidate.getReelNo()))
+                    .findFirst().orElse(null);
+        }
         query.last("LIMIT 1");
         return selectOne(query);
     }

--
Gitblit v1.9.3