From 36230cd4dd0ebe5d21eede3eff6216908f7f7a8e Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期三, 06 十一月 2024 16:48:32 +0800
Subject: [PATCH] AGV任务下发,AGV任务状态更新

---
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs |   41 ++++++++++++++++++++++++++---------------
 1 files changed, 26 insertions(+), 15 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
index acb22e2..1e2c33f 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
@@ -28,7 +28,6 @@
 using System.Text;
 using System.Threading.Tasks;
 using WIDESEAWCS_Common.TaskEnum;
-using WIDESEAWCS_Common.WMSInfo;
 using WIDESEAWCS_Core;
 using WIDESEAWCS_Core.BaseServices;
 using WIDESEAWCS_Core.Helper;
@@ -42,7 +41,7 @@
 
 namespace WIDESEAWCS_TaskInfoService
 {
-    public class TaskService : ServiceBase<Dt_Task, ITaskRepository>, ITaskService
+    public partial class TaskService : ServiceBase<Dt_Task, ITaskRepository>, ITaskService
     {
         private readonly IRouterService _routerService;
         private readonly ITaskExecuteDetailService _taskExecuteDetailService;
@@ -139,7 +138,7 @@
                     TaskNum = task.TaskNum,
                     Barcode = task.PalletCode
                 };
-                var ResultData = HttpHelper.PostAsync(WMSIP.StackerCraneRequestInbound, lineDTO.ToJson(), headers: new Dictionary<string, string>());
+                var ResultData = HttpHelper.PostAsync(WMSInterfaceAddress.StackerCraneRequestInbound, lineDTO.ToJson(), headers: new Dictionary<string, string>());
                 if (ResultData.Result == null) throw new Exception($"鍚慦MS璇锋眰鍏ュ簱鍒嗛厤璐т綅澶辫触!浠诲姟鍙�:{task.TaskNum}");
                 content = JsonConvert.DeserializeObject<WebResponseContent>(ResultData.Result);
                 if (content.Status)
@@ -170,21 +169,33 @@
             try
             {
                 #region 鍚慦MS鐢宠
-                var ResultData = HttpHelper.PostAsync(WMSIP.ConveyorLineRequestInbound, lineDTO.ToJson(), headers: new Dictionary<string, string>());
+                var ResultData = HttpHelper.PostAsync(WMSInterfaceAddress.ConveyorLineRequestInbound, lineDTO.ToJson(), headers: new Dictionary<string, string>());
                 if (ResultData.Result == null) throw new Exception($"鍚慦MS璇锋眰鍏ュ簱澶辫触!鎵樼洏鍙�:{lineDTO.Barcode}");
 
                 content = JsonConvert.DeserializeObject<WebResponseContent>(ResultData.Result);
-                //if (content != null && content.Status)//浠诲姟杞崲
-                //{
-                //    var task = JsonConvert.DeserializeObject<Dt_Task>(content.Data.ToJson());
-                //    #region 浠诲姟淇℃伅鍙樻洿
 
-
-                //    #endregion
-                //    content.Data = task;
-                //    content.Status = BaseDal.UpdateData(task);
-                //}
                 #endregion
+
+                #region 浜х嚎鐢宠鍏ュ簱浠诲姟
+                if (content != null && content.Status)//浠诲姟杞崲
+                {
+                    var task = JsonConvert.DeserializeObject<Dt_Task>(content.Data.ToJson());
+                    if (task != null)
+                    {
+                        List<Dt_Router> routers = _routerService.QueryNextRoutes(task.CurrentAddress, task.TargetAddress);
+                        if (routers.Count > 0)
+                        {
+                            task.NextAddress = routers.FirstOrDefault().ChildPosi;
+                        }
+                        task.WMSId = task.TaskId;
+                        task.Creater = "WMS";
+                        task.Dispatchertime = null;
+                        task.CreateDate = DateTime.Now;
+                        BaseDal.AddData(task);
+                    }
+                }
+                #endregion
+
             }
             catch (Exception ex)
             {
@@ -201,7 +212,7 @@
         /// <returns></returns>
         public Dt_Task QueryConveyorLineTask(string deviceNo, string currentAddress, string Barcode)
         {
-            return BaseDal.QueryFirst(x => (TaskInboundTypes.Contains(x.TaskType) && x.PalletCode == Barcode && x.TaskState == (int)TaskInStatusEnum.AGV_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.SC_OutFinish) && x.CurrentAddress == currentAddress, TaskOrderBy);
+            return BaseDal.QueryFirst(x => (TaskInboundTypes.Contains(x.TaskType) && x.NextAddress == currentAddress && x.PalletCode == Barcode && x.TaskState == (int)TaskInStatusEnum.AGV_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.SC_OutFinish) && x.CurrentAddress == currentAddress, TaskOrderBy);
         }
 
         /// <summary>
@@ -506,7 +517,7 @@
 
                     #region 鍚慦MS鍙嶉鍫嗗灈鏈轰换鍔″畬鎴�
                     WMSTaskDTO WMStask = _mapper.Map<WMSTaskDTO>(task);
-                    var ResultData = HttpHelper.PostAsync(WMSIP.UpdateTaskStatus, WMStask.ToJson(), headers: new Dictionary<string, string>());
+                    var ResultData = HttpHelper.PostAsync(WMSInterfaceAddress.UpdateTaskStatus, WMStask.ToJson(), headers: new Dictionary<string, string>());
                     if (ResultData.Result == null) throw new Exception($"浠诲姟鐘舵�佸悓姝ュ埌WMS澶辫触!浠诲姟鍙�:{task.TaskNum}");
                     content = JsonConvert.DeserializeObject<WebResponseContent>(ResultData.Result);
                     if (content.Status)

--
Gitblit v1.9.3