From 6f0ffcf4a6e75ac3a76c6cfd75e02de3a17d46e3 Mon Sep 17 00:00:00 2001
From: 647556386 <647556386@qq.com>
Date: 星期二, 31 三月 2026 10:05:32 +0800
Subject: [PATCH] 同库区移库

---
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs |   32 ++++++++++++++++++++++----------
 1 files changed, 22 insertions(+), 10 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs"
index b29c7aa..a003631 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs"
@@ -1376,9 +1376,13 @@
 
                         Func<Dt_OutStockLockInfo, bool> wareWhere = x => string.IsNullOrEmpty(outboundOrderDetails.First().WarehouseCode) ? true : x.WarehouseCode == outboundOrderDetails.First().WarehouseCode;
 
-                        List<Dt_OutStockLockInfo> stockLockInfos = _outboundLockInfoRepository.QueryData(x =>
-                                x.OrderNo == request.OrderNo &&
-                                x.MaterielCode == stockInfoDetail.MaterielCode).Where(supWhere).Where(wareWhere).ToList();
+                        var stockLockInfos = _outboundLockInfoRepository.QueryData(x =>
+                            x.OrderDetailIds == lockInfo.OrderDetailIds &&
+                            x.OrderNo == request.OrderNo &&
+                            x.MaterielCode == stockInfoDetail.MaterielCode)
+                            .Where(supWhere)
+                            .Where(wareWhere)
+                            .ToList();
                         if (stockLockInfos != null && stockLockInfos.Any())
                         {
                             _outboundLockInfoRepository.DeleteAndMoveIntoHty(stockLockInfos, WIDESEA_Core.Enums.OperateTypeEnum.鑷姩鍒犻櫎);
@@ -1804,9 +1808,13 @@
 
                         Func<Dt_OutStockLockInfo, bool> wareWhere = x => string.IsNullOrEmpty(outboundOrderDetails.First().WarehouseCode) ? true : x.WarehouseCode == outboundOrderDetails.First().WarehouseCode;
 
-                        List<Dt_OutStockLockInfo> stockLockInfos = _outboundLockInfoRepository.QueryData(x =>
-                                x.OrderNo == request.OrderNo &&
-                                x.MaterielCode == stockDetail.MaterielCode).Where(supWhere).Where(wareWhere).ToList();
+                        var stockLockInfos = _outboundLockInfoRepository.QueryData(x =>
+                            x.OrderDetailIds == lockInfo.OrderDetailIds &&
+                            x.OrderNo == request.OrderNo &&
+                            x.MaterielCode == stockDetail.MaterielCode)
+                            .Where(supWhere)
+                            .Where(wareWhere)
+                            .ToList();
                         if (stockLockInfos != null && stockLockInfos.Any())
                         {
                             _outboundLockInfoRepository.DeleteAndMoveIntoHty(stockLockInfos, WIDESEA_Core.Enums.OperateTypeEnum.鑷姩鍒犻櫎);
@@ -2507,6 +2515,10 @@
                         return WebResponseContent.Instance.Error($"鏉$爜{request.Barcode}宸叉棤娉曟挙閿�");
                     }
                 }
+                else
+                {
+                    return WebResponseContent.Instance.Error($"鏉$爜{request.Barcode}宸叉棤娉曟挙閿�");
+                }
 
                 Dt_OutStockLockInfo lockInfo = _outboundLockInfoRepository.QueryFirst(x =>
                     x.OrderNo == request.OrderNo &&
@@ -2514,13 +2526,13 @@
                     x.MaterielCode == historyDetail.MaterielCode &&
                     x.PalletCode == stockInfo.PalletCode);
 
+                if (lockInfo == null)
+                {
+                    return WebResponseContent.Instance.Error("璇ユ墭鐩樺凡鍏ㄩ儴鎷i�夊畬,涓嶅厑璁告挙閿�");
+                }
                 _unitOfWorkManage.BeginTran();
                 try
                 {
-                    if(lockInfo == null)
-                    {
-                        return WebResponseContent.Instance.Error("璇ユ墭鐩樺凡鍏ㄩ儴鎷i�夊畬,涓嶅厑璁告挙閿�");
-                    }
                     bool isUnpack = historyDetail.OperateType == "鎷嗗寘-鍘熷璁板綍";
                     if (isUnpack)
                     {

--
Gitblit v1.9.3