using HH.Redis.ReisModel; using HH.WMS.BLL; using HH.WMS.BLL.SysMgr; using HH.WMS.Common; using HH.WMS.Entitys; using HH.WMS.WebApi.Areas.Common.Controllers; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Web.Http; namespace HH.WMS.WebApi.Areas.OpenApi.Controllers { public class ApiTaskController :BaseController { [HttpGet] public OperateResult ExecuteState(dynamic data) { RedisUserEntity t = new RedisUserEntity() { CN_S_LOGIN = "AMS", CN_S_NAME = "AMS" }; string taskNo = data.taskNo.ToString(); int state = Convert.ToInt16(data.state.ToString()); if (string.IsNullOrEmpty(taskNo) || state == 0) { OperateResult.Error("失败,参数缺失!"); } //string taskState = Constants.TaskStateList[state]; switch (state) { case Constants.TaskExecState_Start://执行中 return BLLCreator.Create().StartTask(taskNo, t); //case Constants.TaskExecState_PickSucc://取货完成 // return BLLCreator.Create().PickSucc(taskNo, t); //case Constants.TaskExecState_UnloadingSucc://卸货完成 // return BLLCreator.Create().UnloadingSucc(taskNo, t); case Constants.TaskExecState_Complete://完成 return BLLCreator.Create().EndTask(taskNo, t); } return OperateResult.Succeed("", null); } [HttpGet] public OperateResult EndTask(string taskNos) { return ValidateToken(t => { OperateResult or; int successQty = 0; string[] arrTask = taskNos.Split(','); List errOr = new List(); foreach (string taskNo in arrTask) { or = BLLCreator.Create().EndTask(taskNo, t); if (or.Success) successQty++; else errOr.Add(or); } if (successQty == arrTask.Length) return OperateResult.Succeed(); else if (successQty == 0) return OperateResult.Error(errOr[0].Msg); else return OperateResult.Warning(errOr[0].Msg); }); } } }