From d1df8e56fd794ec9a71a2fbd6aadbab72d1e0815 Mon Sep 17 00:00:00 2001
From: 647556386 <647556386@qq.com>
Date: 星期五, 19 十二月 2025 14:51:46 +0800
Subject: [PATCH] 1

---
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs |   18 +++++++++++-------
 1 files changed, 11 insertions(+), 7 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 d5718b0..7638deb 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"
@@ -110,6 +110,7 @@
             PickingOutboundResponseDTO response = new PickingOutboundResponseDTO();
             try
             {
+                _unitOfWorkManage.BeginTran();
                 // 1. 璁$畻鍑哄簱鏁伴噺閫昏緫
                 OutboundCalculationDTO calculationResult = CalcOutboundQuantity(request);
 
@@ -252,7 +253,7 @@
                 // 鑾峰彇閫夋嫨鐨勫嚭搴撴槑缁�
                 List<Dt_OutboundOrderDetail> selectedDetails = _detailRepository.QueryData(x => x.OrderId == outboundOrder.Id && request.DetailIds.Contains(x.Id));
 
-                if (outboundOrder.IsBatch == 1)
+                if (outboundOrder.IsBatch == 1 && request.DetailIds.Count == 1)
                 {
                     selectedDetails = _detailRepository.QueryData(x => x.OrderId == selectedDetails.First().OrderId && x.WarehouseCode == selectedDetails.First().WarehouseCode && x.MaterielCode == selectedDetails.First().MaterielCode && x.BatchNo == selectedDetails.First().BatchNo && x.SupplyCode == selectedDetails.First().SupplyCode);
                 }
@@ -276,7 +277,7 @@
                 result.OutboundOrder = outboundOrder;
                 result.SelectedDetails = selectedDetails;
 
-                if (outboundOrder.IsBatch == 0)
+                if (outboundOrder.IsBatch == 0 && request.DetailIds.Count > 1)
                 {
                     // 澶氭槑缁嗗嚭搴擄細鎸夌墿鏂欏垎缁勫鐞�
                     result.MaterielCalculations = CalcMaterielOutboundQuantities(outboundOrder, selectedDetails.ToList());
@@ -959,7 +960,6 @@
 
                     if (outboundOrder.OrderType != 0)
                     {
-
                         Dt_AllocateOrder allocateOrder = _allocateOrderRepository.QueryFirst(x => x.OrderNo == outboundOrder.OrderNo);
                         if (allocateOrder != null)
                         {
@@ -1097,8 +1097,7 @@
                     {
                         UpdateOutboundOrderStatus(request.OrderNo, OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt());
 
-
-                        //todo: 鍥炰紶MES
+                        _feedbackMesService.OutboundFeedback(outboundOrder.OrderNo);
                     }
                 }
                 catch (Exception ex)
@@ -1163,6 +1162,8 @@
                     FactoryArea = item.FactoryArea,
                     WarehouseCode = item.WarehouseCode,
                     Barcode = item.Barcode,
+                    CreateDate = item.CreateDate,
+                    Creater = item.Creater,
                     Remark = $"鏁寸鍑哄簱瀹屾垚鍒犻櫎锛屾潯鐮侊細{request.PalletCode}锛屽師鏁伴噺锛歿item.StockQuantity}锛屽嚭搴撴暟閲忥細{item.StockQuantity}锛屾搷浣滆�咃細{request.Operator}"
                 };
                 historyRecords.Add(historyRecord);
@@ -1484,8 +1485,7 @@
                     {
                         UpdateOutboundOrderStatus(request.OrderNo, OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt());
 
-
-                        //todo: 鍥炰紶MES
+                        _feedbackMesService.OutboundFeedback(outboundOrder.OrderNo);
                     }
                 }
                 catch (Exception ex)
@@ -1583,6 +1583,8 @@
                 Unit = stockDetail.Unit,
                 InboundOrderRowNo = stockDetail.InboundOrderRowNo,
                 SupplyCode = stockDetail.SupplyCode,
+                Creater = stockDetail.Creater,
+                CreateDate = stockDetail.CreateDate,
                 FactoryArea = stockDetail.FactoryArea,
                 WarehouseCode = stockDetail.WarehouseCode,
                 Remark = $"鎷嗗寘鍓嶅師濮嬭褰曪紝鍑哄簱鍗曞彿锛歿orderNo}锛屽嚭搴撳崟涓婚敭锛歿orderId}锛屽師鏉$爜锛歿request.Barcode}锛屽師鏁伴噺锛歿stockDetail.StockQuantity}锛屽嚭搴撴暟閲忥細{actualOutboundQuantity}锛屾搷浣滆�咃細{request.Operator}"
@@ -1652,6 +1654,8 @@
                 InboundOrderRowNo = stockDetail.InboundOrderRowNo,
                 SupplyCode = stockDetail.SupplyCode,
                 FactoryArea = stockDetail.FactoryArea,
+                Creater = stockDetail.Creater,
+                CreateDate = stockDetail.CreateDate,
                 WarehouseCode = stockDetail.WarehouseCode,
                 Remark = $"鍑哄簱瀹屾垚鍒犻櫎锛屾潯鐮侊細{request.Barcode}锛屽師鏁伴噺锛歿stockDetail.StockQuantity}锛屽嚭搴撴暟閲忥細{actualOutboundQuantity}锛屾搷浣滆�咃細{request.Operator}"
             };

--
Gitblit v1.9.3