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 |   52 +++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 45 insertions(+), 7 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 fd04fdd..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
@@ -7,6 +7,9 @@
 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.batch.vo.MesWmBatchPageReqVO;
+import cn.iocoder.yudao.module.mes.controller.admin.wm.batch.vo.MesWmBatchProcessTraceRespVO;
+import cn.iocoder.yudao.module.mes.controller.admin.wm.batch.vo.MesWmBatchPurchaseSourceRespVO;
+import cn.iocoder.yudao.module.mes.controller.admin.wm.batch.vo.MesWmBatchSalesTargetRespVO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.wm.batch.MesWmBatchDO;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import org.apache.ibatis.annotations.Mapper;
@@ -16,7 +19,7 @@
 /**
  * 鎵规绠$悊 Mapper
  *
- * @author 鑺嬮亾婧愮爜
+ * @author 瓒呯骇绠$悊鍛�
  */
 @Mapper
 public interface MesWmBatchMapper extends BaseMapperX<MesWmBatchDO> {
@@ -72,12 +75,12 @@
                 .betweenIfPresent(MesWmBatchDO::getExpireDate, reqVO.getExpireDate())
                 .betweenIfPresent(MesWmBatchDO::getReceiptDate, reqVO.getReceiptDate())
                 .orderByDesc(MesWmBatchDO::getId);
-        if (permittedClientIds != null) {
-            if (CollUtil.isEmpty(permittedClientIds)) {
-                return PageResult.empty();
-            }
-            wrapper.in(MesWmBatchDO::getClientId, permittedClientIds);
-        }
+//        if (permittedClientIds != null) {
+//            if (CollUtil.isEmpty(permittedClientIds)) {
+//                return PageResult.empty();
+//            }
+//            wrapper.in(MesWmBatchDO::getClientId, permittedClientIds);
+//        }
         return selectPage(reqVO, wrapper);
     }
 
@@ -92,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 {
@@ -165,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);
     }
@@ -185,4 +199,28 @@
      */
     List<MesWmBatchDO> selectListByBackward(String batchCode);
 
+    /**
+     * 鏌ヨ鎵规閲囪喘鏉ユ簮锛堥噰璐叆搴撳崟 + IQC锛�
+     *
+     * @param batchCode 鎵规鍙�
+     * @return 閲囪喘鏉ユ簮鍒楄〃
+     */
+    List<MesWmBatchPurchaseSourceRespVO> selectPurchaseSourceList(String batchCode);
+
+    /**
+     * 鏌ヨ鎵规閿�鍞幓鍚戯紙閿�鍞嚭搴撳崟 + OQC锛�
+     *
+     * @param batchCode 鎵规鍙�
+     * @return 閿�鍞幓鍚戝垪琛�
+     */
+    List<MesWmBatchSalesTargetRespVO> selectSalesTargetList(String batchCode);
+
+    /**
+     * 鏌ヨ鎵规宸ュ簭娴佽浆锛堜骇鍑�/鎶曞叆浜嬩欢锛�
+     *
+     * @param batchCode 鎵规鍙�
+     * @return 宸ュ簭娴佽浆鍒楄〃
+     */
+    List<MesWmBatchProcessTraceRespVO> selectProcessTraceList(String batchCode);
+
 }

--
Gitblit v1.9.3