1
yangpeixing
2 天以前 aa4aa67abfdf69e30d5076451716e5aba11d5ec0
WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs
@@ -1,4 +1,5 @@
using HslCommunication.WebSocket;
using Autofac.Core.Resolving.Middleware;
using HslCommunication.WebSocket;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
@@ -100,6 +101,12 @@
        {
            return Service.AgvCarrying(row, startColumn, endColumn, layer, targetLayer);
        }
        [HttpPost, HttpGet, Route("LedShowTask"), AllowAnonymous]
        public WebResponseContent LedShowTask(string stationCode, string palletCode, int taskType)
        {
            return Service.LedShowTask(stationCode,palletCode,taskType);
        }
        //[HttpPost, HttpGet, Route("WebSocketPushMessage"), AllowAnonymous]
        //public WebResponseContent WebSocketPushMessage(string message)
        //{
@@ -113,6 +120,8 @@
        //        return WebResponseContent.Instance.Error(ex.Message);
        //    }
        //}
        [HttpPost, HttpGet, Route("RecWMSTaskCompleted"), AllowAnonymous]
        public WebResponseContent RecWMSTaskCompleted(int taskNum)
        {
@@ -173,5 +182,56 @@
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
        /// <summary>
        /// 任务手动完成
        /// </summary>
        /// <param name="taskNum"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("ManualTaskCompleted"), AllowAnonymous]
        public async Task<WebResponseContent> ManualTaskCompleted(int taskNum)
        {
            return await Service.ManualTaskCompleted(taskNum);
        }
        /// <summary>
        /// RGV任务重发
        /// </summary>
        /// <param name="taskNum"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("RGVTaskResending"), AllowAnonymous]
        public WebResponseContent RGVTaskResending(int taskNum)
        {
            try
            {
                Dt_Task task = _taskRepository.QueryFirst(x => x.TaskNum == taskNum);
                if(task == null)
                {
                    return WebResponseContent.Instance.Error("未找到该任务信息");
                }
                if (task.TaskState == TaskStatusEnum.RGV_Executing.ObjToInt())
                {
                    if (task.TaskType >= TaskTypeEnum.Inbound.ObjToInt())
                    {
                        _taskService.UpdateTask(task, TaskStatusEnum.RGV_NEW);
                    }
                    else if (task.TaskType >= TaskTypeEnum.Outbound.ObjToInt() && task.TaskType < TaskTypeEnum.Inbound.ObjToInt())
                    {
                        _taskService.UpdateTask(task, TaskStatusEnum.RGV_Execute);
                    }
                }
                else
                {
                    return WebResponseContent.Instance.Error("非RGV执行中状态");
                }
                return WebResponseContent.Instance.OK();
            }
            catch(Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
    }
}