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

---
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Inbound.cs |   46 ++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 38 insertions(+), 8 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_TaskInfoService/TaskService_Inbound.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_TaskInfoService/TaskService_Inbound.cs"
index f552ffb..2028d49 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_TaskInfoService/TaskService_Inbound.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_TaskInfoService/TaskService_Inbound.cs"
@@ -19,16 +19,33 @@
 {
     public partial class TaskService 
     {
-
+        /// <summary>
+        /// ESS鎵爜璇锋眰鍏ュ簱
+        /// </summary>
+        /// <param name="palletCode"></param>
+        /// <param name="stationCode"></param>
+        /// <returns></returns>
         public async Task<WebResponseContent> RequestInboundTask(string palletCode, string stationCode)
         {
             try
             {
-                Dt_Task dbtask = Repository.QueryFirst(x => x.PalletCode == palletCode);
+                Dt_Task dbtask = Repository.Db.Queryable<Dt_Task>().Where(x => x.PalletCode == palletCode).OrderByDescending(x=>x.CreateDate).First();
                 if (dbtask != null)
                 {
-                    return WebResponseContent.Instance.Error($"璇ユ墭鐩樺凡鐢熸垚浠诲姟");
-                }
+                    _logger.LogInformation($"浠诲姟绫诲瀷{dbtask.TaskType.ToString()} ,{dbtask.TaskNum}  ");
+                    if (dbtask.TaskType == TaskTypeEnum.Outbound.ObjToInt())
+                    {
+                        return WebResponseContent.Instance.Error($"鍑哄簱寰呭垎鎷d换鍔�");
+                    }
+                    else if (dbtask.TaskType == TaskTypeEnum.OutAllocate.ObjToInt())
+                    {
+                        return WebResponseContent.Instance.Error($"鍑哄簱寰呭垎鎷d换鍔�");
+                    }
+                    else
+                    {
+                        return WebResponseContent.Instance.Error($"璇ユ墭鐩樺凡鐢熸垚浠诲姟");
+                    }
+                } 
 
                 Dt_StockInfo stockInfo = _stockRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == palletCode).Includes(x => x.Details).First();
                 if (stockInfo == null)
@@ -45,7 +62,7 @@
                     return WebResponseContent.Instance.Error($"璇ユ墭鐩樺凡缁戝畾璐т綅");
                 }
 
-                Dt_LocationInfo? locationInfo = _locationInfoService.AssignLocation();
+                Dt_LocationInfo? locationInfo = _locationInfoService.AssignLocation(stockInfo.LocationType);
                 if (locationInfo == null)
                 {
                     return WebResponseContent.Instance.Error($"璐т綅鍒嗛厤澶辫触,鏈壘鍒板彲鍒嗛厤璐т綅");
@@ -53,7 +70,7 @@
 
 
                 var newTask = new Dt_Task()
-                {
+                {                    
                     CurrentAddress = stationCode,
                     Grade = 0,
                     NextAddress = stations.GetValueOrDefault(stationCode) ?? "",
@@ -65,7 +82,8 @@
                     TaskStatus = TaskStatusEnum.New.ObjToInt(),
                     WarehouseId = stockInfo.WarehouseId,
                     PalletType = stockInfo.PalletType,
-
+                    OrderNo= stockInfo.Details.FirstOrDefault()?.OrderNo
+                    
                 };
                 //绌虹
                 if (stockInfo.PalletType == PalletTypeEnum.Empty.ObjToInt())
@@ -131,12 +149,24 @@
                             }
                     }
                 };
-                _logger.LogInformation("鍒涘缓浠诲姟Request:  " + JsonConvert.SerializeObject(esstask));
+ 
                 var result = await _eSSApiService.CreateTaskAsync(esstask);
 
                 _logger.LogInformation("鍒涘缓浠诲姟杩斿洖:  " + result);
                 if (result)
                 {
+                    try
+                    {
+                        await _eSSApiService.MoveContainerAsync(new WIDESEA_DTO.Basic.MoveContainerRequest
+                        {
+                            slotCode = stationCode,
+                            containerCode = palletCode
+                        });
+                    }
+                    catch (Exception ex) { 
+                    
+
+                    }
                     return WebResponseContent.Instance.OK();
                 }
                 else

--
Gitblit v1.9.3