using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using WIDESEA_Common.CommonEnum; using WIDESEA_Common.LocationEnum; using WIDESEA_Common.OtherEnum; using WIDESEA_Common.StockEnum; using WIDESEA_Common.TaskEnum; using WIDESEA_Core; using WIDESEA_Core.Helper; using WIDESEA_DTO.Task; using WIDESEA_Model.Models; namespace WIDESEA_TaskInfoService { public partial class TaskService { public WebResponseContent TaskCompleted(int taskNum) { try { Dt_Task task = Repository.QueryFirst(x => x.TaskNum == taskNum); if (task == null) { return WebResponseContent.Instance.Error($"未找到任务信息"); } if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup) { return InboundTaskCompleted(taskNum); } else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) { return OutboundTaskCompleted(taskNum); } else if (task.TaskType.GetTaskTypeGroup() != TaskTypeGroup.RelocationGroup) { return RelocationTaskCompleted(task); } else { return WebResponseContent.Instance.Error($"未找到该类型任务,任务类型:{task.TaskType}"); } } catch (Exception ex) { return WebResponseContent.Instance.Error(ex.Message); } } /// /// 任务信息推送至WCS /// /// public WebResponseContent PushTasksToWCSSingle(int taskNum, string agvDescription = "") { try { Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum); if (task == null) { return WebResponseContent.Instance.Error($"错误,未找到该任务信息"); } List taskDTOs = new List { _mapper.Map(task) }; taskDTOs.ForEach(x => { x.AGVArea = agvDescription; }); string response = HttpHelper.Post("http://127.0.0.1:9281/api/Task/ReceiveTask", taskDTOs.Serialize()); return JsonConvert.DeserializeObject(response) ?? WebResponseContent.Instance.Error("返回错误"); } catch (Exception ex) { return WebResponseContent.Instance.Error(ex.Message); } } //public WebResponseContent UpdateTaskInfo(WCSTaskDTO taskDTO) //{ //} } }