From 4f2fb79143f0545e96f114c92e1da733b2d9716a Mon Sep 17 00:00:00 2001
From: xiazhengtongxue <133085197+xiazhengtongxue@users.noreply.github.com>
Date: 星期六, 07 二月 2026 21:31:05 +0800
Subject: [PATCH] 1

---
 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/Partial/SCExecutionBlock.cs |   83 ++++++++++++++++++++++++-----------------
 1 files changed, 48 insertions(+), 35 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/Partial/SCExecutionBlock.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/Partial/SCExecutionBlock.cs"
index 6cb9982..2412a09 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/Partial/SCExecutionBlock.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/Partial/SCExecutionBlock.cs"
@@ -99,7 +99,7 @@
                 if (CuttTransferTask) return content.Error("褰撳墠鏈夌Щ搴撲换鍔★紝涓嶅彲涓嬪彂");
 
 
-                if (shallowLocation.LocationStatus != (int)LocationStatusEnum.InStock) return content.Error();
+                if (shallowLocation.LocationStatus != (int)LocationStatusEnum.InStock) return content.Error($"搴撲綅鐘舵�佸紓甯革紝褰撳墠鐘舵�侊細{(LocationStatusEnum)shallowLocation.LocationStatus}锛屽簲涓猴細{LocationStatusEnum.InStock}");
 
                 //鐢熸垚绉诲簱浠诲姟
                 return content = GenerateTransferTask(shallowLocation.LocationCode);
@@ -112,8 +112,7 @@
         }
 
 
-
-
+        //鐢熸垚绉诲簱浠诲姟
         public WebResponseContent GenerateTransferTask(string shallowLocation)
         {
             WebResponseContent webResponse = new WebResponseContent();
@@ -123,44 +122,58 @@
                 Dt_StockInfo dt_StockInfo = _stockInfoService.Repository.QueryData(x => x.LocationCode == shallowLocation).FirstOrDefault();
                 Dt_LocationInfo newLocation = _locationInfoService.GetLocation(OriginalLocation.RoadwayNo, OriginalLocation.LocationType);
                 List<Dt_LocationInfo> dt_Locations = new List<Dt_LocationInfo>();
-
                 var TransferTask = _taskService.GeRelocationTaskQueue(shallowLocation);
+                MES_parameter mES_Parame = _taskService.ApplicationChangeStorageLocation(dt_StockInfo.PalletCode, OriginalLocation.LocationCode, newLocation.LocationCode);
+                if (mES_Parame != null)
+                {
+                    if (mES_Parame.Result == "Y")
+                    {
+                        //杩涜鐢熸垚浠诲姟锛屼笅鍙戜换鍔¤嚦MES
+                        Dt_Task task = new Dt_Task();
+                        task.TaskNum = "0";
+                        task.PalletCode = dt_StockInfo.PalletCode;
+                        task.PalletType = dt_StockInfo.PalletType;
+                        task.Roadway = OriginalLocation.RoadwayNo;
+                        task.TaskType = (int)TaskTypeEnum.Relocation;
+                        task.TaskStatus = (int)RelocationTaskStatusEnum.RelocationNew;
+                        task.SourceAddress = OriginalLocation.LocationCode;
+                        task.TargetAddress = newLocation.LocationCode;
+                        task.CurrentAddress = OriginalLocation.LocationCode;
+                        task.NextAddress = newLocation.LocationCode;
+                        task.WarehouseId = OriginalLocation.WarehouseId;
+                        task.OrderNo = "";
+                        task.Grade = 1;
+                        task.Creater = "MES";
+                        task.CreateDate = DateTime.Now;
 
+                        OriginalLocation.LocationStatus = (int)LocationStatusEnum.Lock;
+                        newLocation.LocationStatus = (int)LocationStatusEnum.Lock;
+                        dt_StockInfo.StockStatus = (int)StockStatusEmun.绉诲簱閿佸畾;
 
+                        dt_Locations.Add(OriginalLocation);
+                        dt_Locations.Add(newLocation);
 
+                        _unitOfWorkManage.BeginTran();
 
-                //杩涜鐢熸垚浠诲姟锛屼笅鍙戜换鍔¤嚦MES
-                Dt_Task task = new Dt_Task();
-                task.TaskNum = "0";
-                task.PalletCode = dt_StockInfo.PalletCode;
-                task.PalletType = dt_StockInfo.PalletType;
-                task.Roadway = OriginalLocation.RoadwayNo;
-                task.TaskType = (int)TaskTypeEnum.Relocation;
-                task.TaskStatus = (int)RelocationTaskStatusEnum.RelocationNew;
-                task.SourceAddress = OriginalLocation.LocationCode;
-                task.TargetAddress = newLocation.LocationCode;
-                task.CurrentAddress = OriginalLocation.LocationCode;
-                task.NextAddress = newLocation.LocationCode;
-                task.WarehouseId = OriginalLocation.WarehouseId;
-                task.OrderNo = "";
-                task.Grade = 1;
-                task.Creater = "MES";
-                task.CreateDate = DateTime.Now;
+                        int TaskId = _taskService.Repository.AddData(task);
+                        _locationInfoService.UpdateData(dt_Locations);
+                        _stockInfoService.UpdateData(dt_StockInfo);
+                        _unitOfWorkManage.CommitTran();
+                        return webResponse.Error("宸茬敓鎴愮Щ搴撲换鍔�");
+                    }
+                    else
+                    {
 
-                OriginalLocation.LocationStatus = (int)LocationStatusEnum.Lock;
-                newLocation.LocationStatus = (int)LocationStatusEnum.Lock;
-                dt_StockInfo.StockStatus = (int)StockStatusEmun.绉诲簱閿佸畾;
+                        WriteLog.Write_Log("WMS_绉诲簱鏁呴殰", $"EMS鐢宠鍌ㄤ綅寮傚姩杩斿洖澶辫触鍐呭", "澶辫触", $"MES涓嶅厑璁哥Щ鍔�====>>>>杩斿洖鍐呭锛歿mES_Parame.ToJson()}");
+                        return webResponse.Error($"鐢宠鍌ㄤ綅寮傚姩锛孧ES涓嶅厑璁哥Щ鍔�====>>>>杩斿洖鍐呭锛歿mES_Parame.ToJson()}");
+                    }
+                }
+                else
+                {
+                    WriteLog.Write_Log("WMS_绉诲簱鏁呴殰", $"EMS鐢宠鍌ㄤ綅寮傚姩杩斿洖澶辫触鍐呭", "澶辫触", $"鐢宠鍌ㄤ綅寮傚姩锛孧ES杩斿洖涓虹┖");
+                    return webResponse.Error("鐢宠鍌ㄤ綅寮傚姩锛孧ES杩斿洖涓虹┖");
+                }
 
-                dt_Locations.Add(OriginalLocation);
-                dt_Locations.Add(newLocation);
-
-                _unitOfWorkManage.BeginTran();
-
-                int TaskId = _taskService.Repository.AddData(task);
-                _locationInfoService.UpdateData(dt_Locations);
-                _stockInfoService.UpdateData(dt_StockInfo);
-                _unitOfWorkManage.CommitTran();
-                return webResponse.Error("宸茬敓鎴愮Щ搴撲换鍔�");
                 //杩涜涓嬪彂缁欏爢鍨涙満浠诲姟
                 /*WCSginseng result = _taskService.SC_IssueTasks(
                     TaskId,
@@ -183,7 +196,7 @@
                     return webResponse.Error($"涓嬪彂绉诲簱澶辫触,鍘熷洜锛歿result.Message}");
                 }*/
 
-                /*MES_parameter mES_Parame = _taskService.ApplicationChangeStorageLocation(dt_StockInfo.PalletCode, OriginalLocation.LocationCode, newLocation.LocationCode);
+                /* MES_parameter mES_Parame = _taskService.ApplicationChangeStorageLocation(dt_StockInfo.PalletCode, OriginalLocation.LocationCode, newLocation.LocationCode);
                 if (mES_Parame != null)
                 {
                     if (mES_Parame.Result == "Y")

--
Gitblit v1.9.3