|
@@ -46,10 +46,16 @@ namespace WCS.WorkEngineering.Systems
|
|
|
return;
|
|
|
}
|
|
|
var deliveryTask = db.Queryable<WCS_TaskInfo>().RowLock().Single(x => x.Type == TaskType.Delivery && x.AddrTo == obj.Entity.Code && x.Status >= TaskStatus.RgvExecution && x.Status < TaskStatus.Finish) ?? throw new KnownException($"未找到当前站台对应的托盘搬运任务", LogLevelEnum.High);
|
|
|
- var taskInfo = db.Queryable<WCS_TaskInfo>().RowLock().Single(x => x.Status <= TaskStatus.RgvCompleted && x.AddrFrom == obj.Entity.Code && x.Type == TaskType.EnterDepot);
|
|
|
+ var taskInfo = db.Queryable<WCS_TaskInfo>().RowLock().Single(x => x.Status == TaskStatus.WaitingToExecute && x.AddrFrom == obj.Entity.Code && x.Type == TaskType.EnterDepot);
|
|
|
if (deliveryTask.Status != TaskStatus.RgvCompleted) throw new KnownException($"搬运任务状态异常:{deliveryTask.ID}", LogLevelEnum.High);
|
|
|
if (taskInfo == null)
|
|
|
{
|
|
|
+ var task=db.Queryable<WCS_TaskInfo>().NoLock().Single(x => x.Status <= TaskStatus.RgvExecution && x.AddrFrom == obj.Entity.Code && x.Type == TaskType.EnterDepot);
|
|
|
+ if (task != null)
|
|
|
+ {
|
|
|
+ World.Log($"环线库码垛工位[{obj.Entity.Code}]存在状态为[{task.Status.GetDescription()}]的任务,任务号是[{task.ID}].请找到此任务确认并进行处理");
|
|
|
+ return;
|
|
|
+ }
|
|
|
//开始获取当前位置的空托盘搬运任务信息
|
|
|
var cbrCode = db.Queryable<WCS_TaskInfo>().First(x => x.Status == TaskStatus.RgvCompleted && x.AddrTo == obj.Entity.Code);
|
|
|
try
|
|
@@ -72,8 +78,6 @@ namespace WCS.WorkEngineering.Systems
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- if (taskInfo.Status != TaskStatus.WaitingToExecute) return;
|
|
|
-
|
|
|
foreach (var item in tasks)
|
|
|
{
|
|
|
item.Status = TaskStatus.Finish;
|