Admin.NET/WCS.Application/Model/AGVModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
Admin.NET/WCS.Application/Model/TaskRequest.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
Admin.NET/WCS.Application/OpenApi/OpenApi.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
Admin.NET/WCS.Application/Util/HttpService.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Admin.NET/WCS.Application/Model/AGVModel.cs
@@ -185,6 +185,15 @@ /// 方法名 end : 任务结束 /// </summary> public string Method { get; set; } /// <summary> /// 托盘号 /// </summary> public string carrierCode { get; set; } /// <summary> /// 托盘数量 /// </summary> public int pileCount { get; set; } } public class AGVCallBackResponse { Admin.NET/WCS.Application/Model/TaskRequest.cs
@@ -2,6 +2,27 @@ using WCS.Application.Entity; namespace WCS.Application; /// <summary> /// 空托跺入库申请 /// </summary> public class NullPallInRequest { public string PalletNo { get; set; } /// <summary> /// 托盘数量 /// </summary> public int PallNum { get; set; } /// <summary> /// 储位 /// </summary> public string Locate { get; set; } public string HouseNo { get; set; } } public class TaskRequest { public string TaskNo { get; set; } // 任务号 Admin.NET/WCS.Application/OpenApi/OpenApi.cs
@@ -3,6 +3,7 @@ using Furion.Logging; using WCS.Application.Entity; using WCS.Application.Util; using static SKIT.FlurlHttpClient.Wechat.Api.Models.ComponentTCBBatchCreateContainerServiceVersionRequest.Types; namespace WCS.Application; @@ -428,7 +429,11 @@ Code = "0" }; if (input.robotTaskCode.Substring(0, 3) != "WCS" && input.robotTaskCode.Substring(0, 2) != "TK") { result.Message = "反馈的任务不是WCS的任务"; result.Code = "1"; return result; } PLCUtil modUtil = null; try { @@ -532,6 +537,26 @@ } } break; case "notifyFullSite": { var palletNo = input.Extra.Values.carrierCode; var count = input.Extra.Values.pileCount; if (string.IsNullOrWhiteSpace(palletNo) || count <= 0) { throw new Exception("参数:托盘号/数量验证失败"); } //向WMS申请空托入库 HttpService httpService = new HttpService(); var inputs = new NullPallInRequest(); inputs.PalletNo = modTask.PalletNo; inputs.PallNum = count; inputs.Locate = "B100101";//叠托盘机位置 inputs.HouseNo = "W02"; var modResponseTask = httpService.RequestLiKuPallet(inputs); } break; case "cancel"://任务取消 { PLCService.AGVStatus = false; Admin.NET/WCS.Application/Util/HttpService.cs
@@ -37,6 +37,61 @@ }; } /// <summary> /// 调用WMS接口申请叠托机空托入库接口 /// </summary> /// <param name="model"></param> /// <returns></returns> public string RequestLiKuPallet(NullPallInRequest model) { string returnStr = ""; var task = _db.Queryable<WcsTask>().First(m => m.IsDelete == false && (m.Status == TaskStatusEnum.Wait || m.Status == TaskStatusEnum.Doing) && m.TaskType == TaskTypeEnum.In && m.PalletNo == model.PalletNo); if (task == null) { string url = Urls.WMSAddress + ":" + Urls.WMSPort; var result = (url + "/api/DownAPi/RequestPalletIn").SetBody(model, "application/json", Encoding.UTF8).PostAsAsync<ResponseTasks>().Result; Log.Information("调用WMS接口反馈空托入库任务接口" + result.ToJson()); if (result.Success == 0) { var taskAdd = new WcsTask() { TaskType = TaskTypeEnum.In, Status = TaskStatusEnum.Wait, Type = PLCTypeEnum.ConveyorLine, Origin = "WMS", PalletNo = model.PalletNo, TaskNo = result.TaskList.TaskNo, Levels = 999, StartLocate = model.Locate, StartRoadway = result.TaskList.StartRoadway, EndLocate = result.TaskList.EndLocate, EndRoadway = result.TaskList.EndRoadway, TaskId = FourWayCarUtil.GetTaskId() }; _db.Insertable(taskAdd).ExecuteCommand(); returnStr = result.TaskList.EndLocate; } else { returnStr = "-1:" + result.Message; return returnStr; } } else { returnStr = task.EndLocate; } return returnStr; } /// <summary> /// 调用WMS接口申请巷道接口