From 5818ac31e7d82e611fa98c35e9a353319bebd3c3 Mon Sep 17 00:00:00 2001
From: Administrator <Administrator@DESKTOP-JIE70N9>
Date: 星期日, 25 五月 2025 14:30:01 +0800
Subject: [PATCH] 主流程测试完成

---
 Admin.NET/WCS.Application/OpenApi/OpenApi.cs |   49 ++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 38 insertions(+), 11 deletions(-)

diff --git a/Admin.NET/WCS.Application/OpenApi/OpenApi.cs b/Admin.NET/WCS.Application/OpenApi/OpenApi.cs
index cdf71f7..e1a8e4b 100644
--- a/Admin.NET/WCS.Application/OpenApi/OpenApi.cs
+++ b/Admin.NET/WCS.Application/OpenApi/OpenApi.cs
@@ -117,6 +117,9 @@
                 Status = TaskStatusEnum.Wait,
                 Levels = 999,
                 Origin = "WMS",
+                SkuNo = models.SkuNo,
+                SkuName=models.SkuName,
+                LotNo=models.LotNo,
                 StartRoadway = models.StartRoadway,
                 StartLocate = models.StartLocate,
                 EndLocate = models.EndLocate,
@@ -165,6 +168,9 @@
             Type = models.Type,
             Levels = 999,
             Origin = "WMS",
+            SkuNo = models.SkuNo,
+            SkuName = models.SkuName,
+            LotNo = models.LotNo,
             StartRoadway = models.StartRoadway,
             StartLocate = models.StartLocate,
             EndLocate = models.EndLocate,
@@ -412,21 +418,22 @@
     [UnitOfWork]
     public async Task<dynamic> agvCallback(AGVCallBackInput input)
     {
+        Log.Information("AGV鍙嶉浠诲姟" + input.ToJson());
         AGVCallBackResponse result = new AGVCallBackResponse()
         {
             ReqCode = input.ReqCode,
             Message = "鎴愬姛",
             Code = "0"
         };
-        if (input.TaskCode.Substring(0, 3) != "WCS" && input.TaskCode.Substring(0, 2) != "TK")
+        if (input.robotTaskCode.Substring(0, 3) != "WCS" && input.robotTaskCode.Substring(0, 2) != "TK")
             return result;
         PLCUtil modUtil = null;
         try
         {
-            var modTask = await _db.Queryable<WcsTask>().FirstAsync(s => s.TaskNo == input.TaskCode);
+            var modTask = await _db.Queryable<WcsTask>().FirstAsync(s => s.TaskNo == input.robotTaskCode);
             if (modTask != null)
             {
-                switch (input.Method)
+                switch (input.Extra.Values.Method)
                 {
                     case "end"://浠诲姟瀹屾垚
                         {
@@ -453,15 +460,26 @@
                                 var inputs = new TaskRequestWMS();
                                 inputs.TaskNo = modTask.TaskNo;
                                 inputs.PalletNo = modTask.PalletNo;
-                                inputs.TaskType = modTask.TaskType.ToString();
+                                inputs.TaskType = ((int)modTask.TaskType).ToString();
                                 inputs.TaskStatus = "2";
                                 var modResponseTask = httpService.RequestTask(inputs).Result;
                             }
                             
                         }
                         break;
-                    case "admin"://璧板嚭鍌ㄤ綅
+                    case "outbin"://璧板嚭鍌ㄤ綅
                         {
+                            WcsTaskMonitor modTaskMonitor = new WcsTaskMonitor()
+                            {
+                                TaskNo = modTask.TaskNo,
+                                //PlcId = modDevice.PlcId,
+                                PlcName = "AGV",
+                                StartLocat = modTask.StartLocate,
+                                EndLocat = modTask.EndLocate,
+                                Status = TaskStatusEnum.Complete,
+                                InteractiveMsg = $"AGV灏忚溅鍙嶉浠诲姟鍙栬揣瀹屾垚锛岃蛋鍑哄偍浣�",
+                            };
+                            await _db.Insertable(modTaskMonitor).ExecuteCommandAsync();
                             //鍙嶉WMS浠诲姟鍙栬揣瀹屾垚銆乄MS鍒ゆ柇鏄钩搴撳偍浣嶅氨鏇存柊鍌ㄤ綅鐘舵��
                             if (modTask.Origin == "WMS")
                             {
@@ -469,22 +487,22 @@
                                 var inputs = new TaskRequestWMS();
                                 inputs.TaskNo = modTask.TaskNo;
                                 inputs.PalletNo = modTask.PalletNo;
-                                inputs.TaskType = "2";
+                                inputs.TaskType = ((int)modTask.TaskType).ToString();
                                 inputs.TaskStatus = "2";
                                 var modResponseTask = httpService.RequestTaskQh(inputs).Result;
                             }
 
                         }
                         break;
-                    case "continue"://鏀捐揣鐢宠
+                    case "release"://鏀捐揣鐢宠
                         {
-                            if (modTask.EndLocate != "B010101")//9鍙峰伐浣嶅湴鍧�
+                            if (modTask.EndLocate != "B040101")//9鍙峰伐浣嶅湴鍧�
                             {
                                 result.Code = "1";
                                 result.Message = "鎵句笉鍒拌浠诲姟";
                                 return result;
                             }
-                            modTask.Status = TaskStatusEnum.Complete;
+                            //modTask.Status = TaskStatusEnum.Complete;
                             modTask.IsComple = "1";
                             await _db.Updateable(modTask).ExecuteCommandAsync();
                             WcsTaskMonitor modTaskMonitor = new WcsTaskMonitor()
@@ -500,7 +518,16 @@
                             await _db.Insertable(modTaskMonitor).ExecuteCommandAsync();
                             HubUtil.PublicTask(modTask.Adapt<WcsTaskOutput>());
                             HubUtil.PublicTaskMonitor(modTaskMonitor.Adapt<WcsTaskMonitorOutput>());
-                            
+                            if (modTask.Origin == "WMS")
+                            {
+                                HttpService httpService = new HttpService();
+                                var inputs = new TaskRequestWMS();
+                                inputs.TaskNo = modTask.TaskNo;
+                                inputs.PalletNo = modTask.PalletNo;
+                                inputs.TaskType = ((int)modTask.TaskType).ToString();
+                                inputs.TaskStatus = "2";
+                                var modResponseTask = httpService.RequestTaskQh(inputs).Result;
+                            }
                         }
                         break;
                     case "cancel"://浠诲姟鍙栨秷
@@ -549,7 +576,7 @@
             modUtil?.Close();
         }
 
-
+        Log.Information("AGV鍙嶉浠诲姟杩斿洖" + result.ToJson());
         return result;
     }
     

--
Gitblit v1.8.0