林豪 左 2 жил өмнө
parent
commit
4465b7d630

+ 1 - 0
WCS.WorkEngineering/Systems/AgvSystems.cs

@@ -153,6 +153,7 @@ namespace WCS.WorkEngineering.Systems
                             //更新WCS任务状态
                             task.Device = srm.Entity.Code;
                             task.Tunnel = task.Device.GetLastDigit().ToString();
+                            task.AddrNext = agv.Position;
                             task.AddWCS_TASK_DTL(db, "AGV巷道分配点", nextPos.Entity.Code, $"任务分配至堆垛机:{srm.Entity.Code}");
                             db.Default.Updateable(task).ExecuteCommand();
                             //调继续执行任务接口

+ 1 - 0
WCS.WorkEngineering/Systems/一楼入库工位处理系统.cs

@@ -54,6 +54,7 @@ namespace WCS.WorkEngineering.Systems
                {
                    //判断AGV任务目标地址是否是当前地址
                    var agv = db.Default.Queryable<WCS_AgvTaskInfo>().SplitTable(v => v.Take(2)).First(v => v.ID == task.AgvTaskID) ?? throw new KnownException($"任务{task.ID}未找到对应AGV任务", LogLevelEnum.Mid);
+                   if (task.AddrNext != obj.Entity.Code) throw new KnownException($"任务{task.ID}不是货架上的任务,请检查RFID是否正确", LogLevelEnum.Mid);
                    if (agv.Position != obj.Entity.Code) throw new KnownException($"任务{task.ID}对应AGV任务目标地址不是当前站台", LogLevelEnum.Mid);
                }
 

+ 6 - 0
WCS.WorkEngineering/WebApi/Controllers/WcsController.cs

@@ -48,10 +48,16 @@ namespace WCS.WorkEngineering.WebApi.Controllers
                             var res = WmsApi.HandleTaskVerify(new List<int>() { task.ID }, "106");
                             if (res.ResCode == Models.WMS.Response.ResponseStatusCodeEnum.Sucess)
                             {
+                                switch (task.Type)
+                                {
+                                    default:
+                                        break;
+                                }
                                 //取消任务
                                 var cancelRes = WmsApi.CarryTaskInfo(new List<int>() { task.ID }, "106");
                                 if (cancelRes.ResCode == Models.WMS.Response.ResponseStatusCodeEnum.Sucess)
                                 {
+
                                     //更新任务状态
                                     task.Status = Entity.TaskStatus.Cancel;
                                     task.EditTime = DateTime.Now;