From e4e304318532574e418bc01b5a45b8836dac3e1a Mon Sep 17 00:00:00 2001
From: pan <antony1029@163.com>
Date: 星期四, 11 十二月 2025 23:26:20 +0800
Subject: [PATCH] 提交

---
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundPickingService.cs |   65 +++++++++++++++++++++++---------
 1 files changed, 47 insertions(+), 18 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..145c076 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;
@@ -33,6 +34,7 @@
     /// </summary>
     public class OutboundPickingService : ServiceBase<Dt_PickingRecord, IRepository<Dt_PickingRecord>>, IOutboundPickingService
     {
+        #region 鏋勯�犲嚱鏁�
         private readonly IUnitOfWorkManage _unitOfWorkManage;
         public IRepository<Dt_PickingRecord> Repository => BaseDal;
 
@@ -99,6 +101,7 @@
             _interfaceLog = interfaceLog;
         }
 
+        #endregion
 
         #region 鏌ヨ鏂规硶
         // 鑾峰彇鏈嫞閫夊垪琛�
@@ -934,7 +937,7 @@
 
             return ValidationResult<(Dt_PickingRecord, Dt_OutStockLockInfo, Dt_OutboundOrderDetail)>.Success((pickingRecord, lockInfo, orderDetail));
         }
- 
+
 
         /// <summary>
         /// 妫�鏌ラ攣瀹氫俊鎭搴旂殑鏉$爜鏄惁宸茬粡鍥炲簱
@@ -1172,7 +1175,7 @@
         #endregion
 
         #region 鍥炲簱鎿嶄綔绉佹湁鏂规硶
- 
+
         /// <summary>
         /// 妫�鏌ユ暣涓墭鐩樻槸鍚﹀凡缁忓洖搴�
         /// </summary>
@@ -1250,7 +1253,7 @@
         }
 
         private async Task<WebResponseContent> HandleNoReturnItems(string orderNo, string palletCode, Dt_Task originalTask, int stockInfoId)
-        {            
+        {
             try
             {
                 var locationtype = 0;
@@ -1537,7 +1540,7 @@
 
 
         }
-          
+
 
         private async Task HandlePalletStockGoodsReturn(List<Dt_StockInfoDetail> palletStockGoods)
         {
@@ -1894,7 +1897,7 @@
                 _logger.LogError($"UpdateOrderStatusForReturn澶辫触 - OrderNo: {orderNo}, Error: {ex.Message}");
             }
         }
-          
+
         #endregion
 
         #region 绌烘墭鐩�
@@ -2054,8 +2057,6 @@
         }
         #endregion
 
-
-
         #region 杈呭姪鏂规硶
         /// <summary>
         /// 缁熶竴鍒嗘瀽鎵樼洏鐘舵�� - 杩斿洖鎵樼洏鐨勫畬鏁寸姸鎬佷俊鎭�
@@ -2143,7 +2144,6 @@
 
             return result;
         }
-          
 
         private async Task<string> GenerateNewBarcode()
         {
@@ -2281,7 +2281,7 @@
             }
             return WebResponseContent.Instance.OK("鎷i�夌‘璁ゆ垚鍔�", new { SplitResults = new List<SplitResult>() });
         }
-
+        #endregion
 
 
         #region 铏氭嫙鍑哄叆搴�
@@ -2557,10 +2557,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 +2642,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 +2682,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 +2696,7 @@
 
                 return WebResponseContent.Instance.OK("鏌ヨ閲囪喘鍗曟垚鍔�", data: resultData);
             }
-            catch(Exception ex)
+            catch (Exception ex)
             {
                 return WebResponseContent.Instance.Error(ex.Message);
             }
@@ -2816,7 +2844,8 @@
                         FactoryArea = item.FactoryArea,
                         Status = 0,
                         OrderNo = item.OrderNo,
-                        BusinessType = materielGroupDTO.orderTypes.ToString()
+                        BusinessType = materielGroupDTO.orderTypes.ToString(),
+                        
 
                     });
                     item.WarehouseCode = item.WarehouseCode;
@@ -2905,7 +2934,7 @@
         }
 
 
-        #endregion
+    
     }
 
     #region 鏀寔绫诲畾涔�

--
Gitblit v1.9.3