From bb56b2b6f21acb7c69c02585e5bc534d2f67715f Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期四, 27 三月 2025 17:13:35 +0800 Subject: [PATCH] WMS首页优化,WCS优化AGV和产线、输送线交互逻辑 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGV/AGVJob.cs | 18 +++++++++++++++--- 1 files changed, 15 insertions(+), 3 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGV/AGVJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGV/AGVJob.cs" index b5295ff..06019e8 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGV/AGVJob.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGV/AGVJob.cs" @@ -5,6 +5,7 @@ using System.Collections.Generic; using System.Linq; using System.Reflection.Metadata; +using System.Security.Cryptography; using System.Text; using System.Threading.Tasks; using WIDESEAWCS_Common.TaskEnum; @@ -39,7 +40,6 @@ { try { - #region 浠诲姟鏇存柊 var Tasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState > (int)TaskInStatusEnum.InNew && @@ -48,7 +48,11 @@ x.TaskState < (int)TaskOutStatusEnum.AGV_OutFinish).ToList().OrderBy(x => x.Grade).ThenBy(x => x.CreateDate).ToList(); foreach (var Task in Tasks) { - var ResultData = HttpHelper.PostAsync(AGVInterfaceAddress.taskResult + Task.TaskNum, null, headers: new Dictionary<string, string>()); + var obj = new + { + outID = Task.TaskNum.ToString() + }; + var ResultData = HttpHelper.PostAsync(AGVInterfaceAddress.taskResult, obj.ToJson(), headers: new Dictionary<string, string>()); if (ResultData.Result != null) { var content = JsonConvert.DeserializeObject<AGVReturnInfo>(ResultData.Result); @@ -65,10 +69,18 @@ { Task.TaskState = _taskService.TaskInboundTypes.Contains(Task.TaskType) ? (int)TaskInStatusEnum.AGV_InFinish : TaskOutStatusEnum.AGV_OutFinish.ObjToInt(); Task.CurrentAddress = Task.NextAddress; + Task.NextAddress = ""; List<Dt_Router> routers = _routerService.QueryNextRoutes(Task.CurrentAddress, Task.TargetAddress); if (routers.Count > 0) { Task.NextAddress = routers.FirstOrDefault()?.ChildPosi ?? ""; + } + if (Task.TaskState == TaskOutStatusEnum.AGV_OutFinish.ObjToInt()) + { + #region 鍚慦MS鍙嶉鍫嗗灈鏈轰换鍔″畬鎴� + WMSTaskDTO WMStask = _mapper.Map<WMSTaskDTO>(Task); + HttpHelper.PostAsync(WMSInterfaceAddress.UpdateTaskStatus, WMStask.ToJson(), headers: new Dictionary<string, string>()); + #endregion } } break; @@ -95,7 +107,7 @@ if (content.code == "20000") { var task = newTasks.Where(x => x.TaskNum == agvTaskDTO.outID.ObjToInt()).First(); - task.TaskState = _taskService.TaskInboundTypes.Contains(task.TaskType)? TaskInStatusEnum.AGV_InSend.ObjToInt(): TaskOutStatusEnum.AGV_OutSend.ObjToInt(); + task.TaskState = _taskService.TaskInboundTypes.Contains(task.TaskType) ? TaskInStatusEnum.AGV_InSend.ObjToInt() : TaskOutStatusEnum.AGV_OutSend.ObjToInt(); UpnewTasks.Add(task); } else -- Gitblit v1.9.3