From b0f6f409063cf4373f1f438d947ec8976f208c29 Mon Sep 17 00:00:00 2001
From: pan <antony1029@163.com>
Date: 星期二, 09 十二月 2025 19:34:32 +0800
Subject: [PATCH] 提交

---
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundPickingService.cs |   55 ++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 42 insertions(+), 13 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/OutboundPickingService.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/OutboundPickingService.cs"
index 1adb870..0da15ed 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/OutboundPickingService.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/OutboundPickingService.cs"
@@ -1,4 +1,5 @@
-锘縰sing Microsoft.Extensions.Logging;
+锘縰sing MailKit.Search;
+using Microsoft.Extensions.Logging;
 using SqlSugar;
 using WIDESEA_BasicService;
 using WIDESEA_Common.CommonEnum;
@@ -934,7 +935,7 @@
 
             return ValidationResult<(Dt_PickingRecord, Dt_OutStockLockInfo, Dt_OutboundOrderDetail)>.Success((pickingRecord, lockInfo, orderDetail));
         }
- 
+
 
         /// <summary>
         /// 妫�鏌ラ攣瀹氫俊鎭搴旂殑鏉$爜鏄惁宸茬粡鍥炲簱
@@ -1172,7 +1173,7 @@
         #endregion
 
         #region 鍥炲簱鎿嶄綔绉佹湁鏂规硶
- 
+
         /// <summary>
         /// 妫�鏌ユ暣涓墭鐩樻槸鍚﹀凡缁忓洖搴�
         /// </summary>
@@ -1250,7 +1251,7 @@
         }
 
         private async Task<WebResponseContent> HandleNoReturnItems(string orderNo, string palletCode, Dt_Task originalTask, int stockInfoId)
-        {            
+        {
             try
             {
                 var locationtype = 0;
@@ -1537,7 +1538,7 @@
 
 
         }
-          
+
 
         private async Task HandlePalletStockGoodsReturn(List<Dt_StockInfoDetail> palletStockGoods)
         {
@@ -1894,7 +1895,7 @@
                 _logger.LogError($"UpdateOrderStatusForReturn澶辫触 - OrderNo: {orderNo}, Error: {ex.Message}");
             }
         }
-          
+
         #endregion
 
         #region 绌烘墭鐩�
@@ -2143,7 +2144,7 @@
 
             return result;
         }
-          
+
 
         private async Task<string> GenerateNewBarcode()
         {
@@ -2557,10 +2558,20 @@
                 if (result1 != null && result1.code == 200)
                 {
                     var orderIds = inboundOrderDetails.Select(x => x.Id).Distinct().ToList();
-                    _inboundOrderRepository.Db.Updateable<Dt_InboundOrder>().SetColumns(it => new Dt_InboundOrder { ReturnToMESStatus = 1 })
-                    .Where(it => it.Id == inboundOrder.Id).ExecuteCommand();
+                    if (inboundOrder.OrderStatus == InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt())
+                    {
+                        _inboundOrderRepository.Db.Updateable<Dt_InboundOrder>().SetColumns(it => new Dt_InboundOrder { ReturnToMESStatus = 1, Remark = "" })
+                        .Where(it => it.Id == inboundOrder.Id).ExecuteCommand();
+                    }
                     _inboundOrderDetailService.Db.Updateable<Dt_InboundOrderDetail>().SetColumns(it => new Dt_InboundOrderDetail { ReturnToMESStatus = 1 })
                     .Where(it => orderIds.Contains(it.Id)).ExecuteCommand();
+                }
+                else
+                {
+                    _inboundOrderRepository.Db.Updateable<Dt_InboundOrder>().SetColumns(it => new Dt_InboundOrder { ReturnToMESStatus = 2, Remark = result1.message })
+                    .Where(it => it.Id == inboundOrder.Id).ExecuteCommand();
+                    _inboundOrderDetailService.Db.Updateable<Dt_InboundOrderDetail>().SetColumns(it => new Dt_InboundOrderDetail { ReturnToMESStatus = 2 })
+                   .Where(it => it.OrderId == inboundOrder.Id).ExecuteCommand();
                 }
                 //鍑哄簱鍥炰紶MES
 
@@ -2632,12 +2643,30 @@
 
 
                     await _outboundOrderService.Db.Updateable<Dt_OutboundOrder>()
-                        .SetColumns(x => x.ReturnToMESStatus == 1)
+                        .SetColumns(it => new Dt_OutboundOrder { ReturnToMESStatus = 1, Remark = "" })
                         .Where(x => x.Id == outboundOrder.Id)
                         .ExecuteCommandAsync();
 
                     await _interfaceLog.Db.Updateable<Dt_InterfaceLog>()
                         .SetColumns(x => x.ReturnToMESStatus == 1)
+                        .Where(x => x.DocumentNo == documentNo)
+                        .ExecuteCommandAsync();
+                }
+                else
+                {
+                    var uporderIds = outboundOrderDetails.Select(x => x.Id).Distinct().ToList();
+                    await _outboundOrderDetailService.Db.Updateable<Dt_OutboundOrderDetail>()
+                      .SetColumns(x => x.ReturnToMESStatus == 2)
+                       .Where(x => uporderIds.Contains(x.Id))
+                      .ExecuteCommandAsync();
+
+                    await _outboundOrderService.Db.Updateable<Dt_OutboundOrder>()
+                        .SetColumns(it => new Dt_OutboundOrder { ReturnToMESStatus = 2, Remark = result.message })
+                         .Where(x => x.Id == outboundOrder.Id)
+                        .ExecuteCommandAsync();
+
+                    await _interfaceLog.Db.Updateable<Dt_InterfaceLog>()
+                        .SetColumns(x => x.ReturnToMESStatus == 2)
                         .Where(x => x.DocumentNo == documentNo)
                         .ExecuteCommandAsync();
                 }
@@ -2654,8 +2683,8 @@
         {
             try
             {
-                Dt_InboundOrderDetail inboundOrderDetail = _stockInfoDetailService.Db.Queryable<Dt_InboundOrderDetail>().Where(x=>x.Barcode == barcode&& x.OrderDetailStatus !=OrderDetailStatusEnum.Over.ObjToInt()).First();
-                if(inboundOrderDetail == null)
+                Dt_InboundOrderDetail inboundOrderDetail = _stockInfoDetailService.Db.Queryable<Dt_InboundOrderDetail>().Where(x => x.Barcode == barcode && x.OrderDetailStatus != OrderDetailStatusEnum.Over.ObjToInt()).First();
+                if (inboundOrderDetail == null)
                 {
                     return WebResponseContent.Instance.Error($"鏈壘鍒拌鏉$爜{barcode}鐨勫叆搴撴槑缁嗘垨鑰呮槑缁嗙姸鎬佸凡鍏ユ櫤浠撳畬鎴�");
                 }
@@ -2668,7 +2697,7 @@
 
                 return WebResponseContent.Instance.OK("鏌ヨ閲囪喘鍗曟垚鍔�", data: resultData);
             }
-            catch(Exception ex)
+            catch (Exception ex)
             {
                 return WebResponseContent.Instance.Error(ex.Message);
             }

--
Gitblit v1.9.3