using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using WIDESEA_Core; using WIDESEA_Core.Const; using WIDESEA_Core.Enums; using WIDESEA_Core.Helper; using WIDESEA_DTO; using WIDESEA_DTO.WMS; using WIDESEA_Model.Models; using WIDESEA_StorageBasicRepository; namespace WIDESEA_StoragIntegrationServices { public partial class MCSService { public WebResponseContent NotifyFinishTest(object json) { WebResponseContent content = new WebResponseContent(); try { if (string.IsNullOrEmpty(json.ToString())) throw new Exception("上传参数为空"); var result = JsonConvert.DeserializeObject(json.ToString()); if (string.IsNullOrEmpty(result?.PalletBarcode)) throw new Exception("上传托盘号为空"); var location = _locationRepository.QueryFirst(x => x.AreaId == result.LocationArea && x.LocationCode == result.LocationID); if (location == null) throw new Exception("未知库位"); int taskNum = _taskRepository.GetTaskNo().Result; Dt_Task task = new Dt_Task { CreateDate = DateTime.Now, Creater = "HK", CurrentAddress = result.LocationID, Grade = 1, PalletCode = result.PalletBarcode, Roadway = location.RoadwayNo, SourceAddress = result.LocationID, TaskState = (int)TaskOutStatusEnum.OutNew, TaskType = result.IsNG == 1 ? (int)TaskOutboundTypeEnum.OutNG : (int)TaskOutboundTypeEnum.Outbound, TargetAddress = "", TaskNum = taskNum, //_taskRepository.GetTaskNo().Result, TaskId = 0, }; WMSTaskDTO taskDTO = new WMSTaskDTO { Id = 0, Grade = 1, PalletCode = result.PalletBarcode, RoadWay = location.RoadwayNo, SourceAddress = result.LocationID, TargetAddress = "", TaskNum = taskNum, //_taskRepository.GetTaskNo().Result, TaskState = (int)TaskOutStatusEnum.OutNew, TaskType = result.IsNG == 1 ? (int)TaskOutboundTypeEnum.OutNG : (int)TaskOutboundTypeEnum.Outbound, }; //var respon = HttpHelper.Post("http://localhost:9291/api/Task/ReceiveTask", JsonConvert.SerializeObject(taskDTO)); //if (respon != null) //{ //} //else //{ // throw new Exception("WCS处理失败"); //} return content.OK(); } catch (Exception ex) { return content.Error(ex.Message); } } } }