From cbe2572195c6f1ebe26a269289dba7f516245a1d Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期二, 11 十一月 2025 11:41:00 +0800
Subject: [PATCH] 修改问题

---
 Wms/Wms/Controllers/DownApiController.cs |  181 +++++++++++++++++++++++++++++---------------
 1 files changed, 119 insertions(+), 62 deletions(-)

diff --git a/Wms/Wms/Controllers/DownApiController.cs b/Wms/Wms/Controllers/DownApiController.cs
index c567d93..b11c7f2 100644
--- a/Wms/Wms/Controllers/DownApiController.cs
+++ b/Wms/Wms/Controllers/DownApiController.cs
@@ -20,6 +20,8 @@
 using WMS.IBLL.IBllTransServer;
 using Microsoft.Extensions.Logging;
 using ZXing.QrCode.Internal;
+using Model.ModelVm.BllCheckVm;
+using System.DirectoryServices.Protocols;
 
 namespace Wms.Controllers
 {
@@ -682,7 +684,7 @@
                 }
                 string taskNo = "";
                 //鍏蜂綋澶勭悊鏂规硶
-                _rcsserver.GetPalletNo(pallmsg, _config.AgvHost + _config.GenAgvSchedulingTask, out taskNo);
+                _rcsserver.GetPalletNo(pallmsg, _config.AgvHost + _config.GenAgvSchedulingTask, _config.MesHost + _config.MesPanClearPallet, out taskNo);
 
                 resultModel = new AgvResultModel { code = "0", message = "鍙《鎴愬姛!", data = taskNo, reqCode = "" };
                 var jsonData2 = JsonConvert.SerializeObject(resultModel);
@@ -729,13 +731,13 @@
                     LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData3} ),", logStr);
                     return Ok(resultModel);
                 }
-                if (string.IsNullOrWhiteSpace(pallmsg.PalletNo))
-                {
-                    resultModel = new AgvResultModel { code = "1", message = "鐢宠妗跺彿涓虹┖!", data = "", reqCode = "" };
-                    var jsonData3 = JsonConvert.SerializeObject(resultModel);
-                    LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData3} ),", logStr);
-                    return Ok(resultModel);
-                }
+                //if (string.IsNullOrWhiteSpace(pallmsg.PalletNo))
+                //{
+                //    resultModel = new AgvResultModel { code = "1", message = "鐢宠妗跺彿涓虹┖!", data = "", reqCode = "" };
+                //    var jsonData3 = JsonConvert.SerializeObject(resultModel);
+                //    LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData3} ),", logStr);
+                //    return Ok(resultModel);
+                //}
                 string taskNo = "";
                 //鍏蜂綋澶勭悊鏂规硶
                 _rcsserver.ApplyLocatNo(pallmsg, _config.AgvHost + _config.GenAgvSchedulingTask, out taskNo);
@@ -756,16 +758,20 @@
             }
         }
         /// <summary>
-        /// 灏嗗噣妗舵敼涓鸿剰妗跺苟鎷夊埌鑴忔《鍖�
+        /// MES灏嗗噣妗舵敼涓鸿剰妗跺苟鎷夊埌鑴忔《鍖�
         /// </summary>
         /// <param name="pallmsg"></param>
         /// <returns></returns>
         [HttpPost]
         public IActionResult ChangePalletStatus(Pallnetmsg pallmsg)
         {
+            var logStr = $@".\log\MES\MES灏嗗噣妗舵敼涓鸿剰妗跺苟鎷夊埌鑴忔《鍖�" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
             var result = new ErpModel { Success = -1, Message = "", };
             try
             {
+                var jsonData = JsonConvert.SerializeObject(pallmsg);
+                LogFile.SaveLogToFile($"MES灏嗗噣妗舵敼涓鸿剰妗跺苟鎷夊埌鑴忔《鍖�-璇锋眰鎶ユ枃锛�( {jsonData} ),", logStr);
+
                 if (string.IsNullOrWhiteSpace(pallmsg.PalletNo))
                 {
                     result.Message = "妗剁紪鍙蜂笉鑳戒负绌猴紒";
@@ -778,22 +784,28 @@
             }
             catch (Exception e)
             {
+                LogFile.SaveLogToFile($"MES灏嗗噣妗舵敼涓鸿剰妗跺苟鎷夊埌鑴忔《鍖哄紓甯革細( {e.Message} ),", logStr);
+
                 result.Message = e.Message;
                 return Ok(result);
             }
         }
 
         /// <summary>
-        /// MES涓嬪彂娓呮礂閿佸畾鑴忔《
+        /// MES涓嬪彂娓呮礂鎸囧畾鑴忔《
         /// </summary>
         /// <param name="pallmsg"></param>
         /// <returns></returns>
         [HttpPost]
         public IActionResult CleanPallet(Pallnetmsg pallmsg)
         {
-            var result = new ErpModel { Success = -1, Message = "", };
+            var logStr = $@".\log\MES\MES涓嬪彂娓呮礂鎸囧畾鑴忔《" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            ErpModel result = new ErpModel { Success = -1, Message = "" };
             try
             {
+                var jsonData = JsonConvert.SerializeObject(pallmsg);
+                LogFile.SaveLogToFile($"MES涓嬪彂娓呮礂鎸囧畾鑴忔《-璇锋眰鎶ユ枃锛�( {jsonData} ),", logStr);
+
                 if (string.IsNullOrWhiteSpace(pallmsg.Location))
                 {
                     result.Message = "鍙枡浣嶇疆涓虹┖锛�";
@@ -811,6 +823,7 @@
             }
             catch (Exception e)
             {
+                LogFile.SaveLogToFile($"MES涓嬪彂娓呮礂鎸囧畾鑴忔《寮傚父锛�( {e.Message} ),", logStr);
                 result.Message = e.Message;
                 return Ok(result);
             }
@@ -939,7 +952,7 @@
                 LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟缁撴潫-璇锋眰鎶ユ枃锛�( {jsonData} ),", logStr);
 
                 //鍏蜂綋澶勭悊鏂规硶
-                _rcsserver.RCSFinishTask(model.taskCode, "1");
+                _rcsserver.RCSFinishTask(model.taskCode, "1", "AGV");
 
 
                 resultModel = new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode };
@@ -994,56 +1007,6 @@
         }        
 
         #endregion
-        /// <summary>
-        /// Agv浠诲姟瀹屾垚鍙嶉
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        [HttpPost]
-        public IActionResult agvCallBack(AgvTaskDto model)
-        {
-            //璁板綍log
-            var logStr = $@".\log\AGV\浠诲姟鎵ц閫氱煡" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
-            AgvResultModel resultModel = null;
-            try
-            {                
-                var jsonData = JsonConvert.SerializeObject(model);
-                LogFile.SaveLogToFile($"浠诲姟鎵ц閫氱煡-璇锋眰鎶ユ枃锛�( {jsonData} ),", logStr);
-
-                if (string.IsNullOrEmpty(model.taskCode))
-                {
-                    resultModel = new AgvResultModel { code = "-1", message = "璇锋眰澶辫触锛宼askCode鍙傛暟寮傚父", reqCode = model.reqCode };
-                    var jsonData2 = JsonConvert.SerializeObject(resultModel);
-                    LogFile.SaveLogToFile($"浠诲姟鎵ц閫氱煡-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr);
-                    return Ok(resultModel);
-                }
-                switch (model.method)
-                {
-                    case "start"://浠诲姟寮�濮�
-                        return Ok(new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode });
-
-                    case "outbin"://璧板嚭鍌ㄤ綅
-                        return Ok(new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode });
-
-                    case "end"://浠诲姟缁撴潫
-                        _rcsserver.RCSFinishTask(model.taskCode, "1");
-                        return Ok(new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode });
-                    case "cancel"://浠诲姟鍗曞彇娑�
-                        return Ok(new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode });
-
-                    case "apply"://CTU鏂欑鍙栨斁鐢宠
-                        return Ok(new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode });
-
-                    default:
-                        return Ok(new AgvResultModel { code = "-1", message = "璇锋眰澶辫触锛宮ethod浠诲姟绫诲瀷閿欒", reqCode = model.reqCode });
-                }
-            }
-            catch (Exception ex)
-            {
-                LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡寮傚父锛�( {ex.Message} ),", logStr);
-                return Ok(new AgvResultModel { code = "-1", message = ex.Message, reqCode = model.reqCode });
-            }
-        }
 
         /// <summary>
         /// 鍑哄簱鍗曟嵁涓嬪彂
@@ -1076,6 +1039,100 @@
                 return Ok(new ErpModel { Success = -1, Message = e.Message });
             }
         }
+
+        /// <summary>
+        /// 鎵嬪姩涓嬪彂灏忚溅浠诲姟
+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        [HttpPost]
+        public IActionResult SendAgvTaskWms(CheckTaskVm model)
+        {
+            try
+            {
+                //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D
+                var claimsIdentity = this.User.Identity as ClaimsIdentity;
+                if (claimsIdentity == null)
+                {
+                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+                }
+                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
+                if (string.IsNullOrWhiteSpace(userId))
+                {
+                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+                }
+                _rcsserver.DownTask(model.taskNo, int.Parse(userId), _config.AgvHost + _config.GenAgvSchedulingTask);
+
+                return Ok(new { code = 0, msg = "閲嶆柊涓嬪彂宸插畬鎴�", data = "" });
+            }
+            catch (Exception e)
+            {
+                return Ok(new { code = 1, msg = e.Message });
+            }
+        }
+
+        /// <summary>
+        /// 鎵嬪姩瀹屾垚灏忚溅浠诲姟
+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        [HttpPost]
+        public IActionResult FinshAgvTaskWms(CheckTaskVm model)
+        {
+            try
+            {
+                //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D
+                var claimsIdentity = this.User.Identity as ClaimsIdentity;
+                if (claimsIdentity == null)
+                {
+                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+                }
+                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
+                if (string.IsNullOrWhiteSpace(userId))
+                {
+                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+                }
+                //鍏蜂綋澶勭悊鏂规硶
+                _rcsserver.RCSFinishTask(model.taskNo, "1", "WMS");
+
+                return Ok(new { code = 0, msg = "閲嶆柊涓嬪彂宸插畬鎴�", data = "" });
+            }
+            catch (Exception e)
+            {
+                return Ok(new { code = 1, msg = e.Message });
+            }
+        }
+
+        /// <summary>
+        /// 鎵嬪姩鍙栨秷AGV绉诲簱浠诲姟
+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        [HttpPost]
+        public IActionResult CancelAgvTaskWms(CheckTaskVm model)
+        {
+            try
+            {
+                //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D
+                var claimsIdentity = this.User.Identity as ClaimsIdentity;
+                if (claimsIdentity == null)
+                {
+                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+                }
+                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
+                if (string.IsNullOrWhiteSpace(userId))
+                {
+                    return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+                }
+                _rcsserver.CancelTask(model.taskNo, int.Parse(userId));
+
+                return Ok(new { code = 0, msg = "鎴愬姛鍙栨秷浠诲姟", data = "" });
+            }
+            catch (Exception e)
+            {
+                return Ok(new { code = 1, msg = e.Message });
+            }
+        }
         #endregion
     }
 }

--
Gitblit v1.8.0