|
@@ -169,13 +169,14 @@ namespace WCS.WorkEngineering.Systems
|
|
|
//任务集合是否有处于堆垛机执行状态的任务
|
|
|
if (tasks.Any(v => v.Status == Entity.TaskStatus.StackerExecution)) throw new KnownException($"有任务处于堆垛机执行状态", LogLevelEnum.High);
|
|
|
|
|
|
- //判断是否存在调整优先级任务
|
|
|
- if (!tasks.Any(v => v.Type != TaskType.TransferDepot && v.Status < Entity.TaskStatus.StackerExecution && v.Priority > 0))
|
|
|
- {
|
|
|
- //不存在调整优先级任务,判断是否存在移库任务
|
|
|
- isTransfer = tasks.Any(v => v.Type == TaskType.TransferDepot && v.Status == Entity.TaskStatus.NewBuild);
|
|
|
- }
|
|
|
- else //存在调整优先级任务
|
|
|
+
|
|
|
+ ////判断是否存在调整优先级任务
|
|
|
+ //if (!tasks.Any(v => v.Type != TaskType.TransferDepot && v.Status < Entity.TaskStatus.StackerExecution && v.Priority > 0))
|
|
|
+ //{
|
|
|
+ //不存在调整优先级任务,判断是否存在移库任务
|
|
|
+ isTransfer = tasks.Any(v => v.Type == TaskType.TransferDepot && v.Status == Entity.TaskStatus.NewBuild);
|
|
|
+ //}
|
|
|
+ if (!isTransfer) //存在调整优先级任务
|
|
|
{
|
|
|
//获取出库任务中新建状态最大优先级
|
|
|
var outPriorityNewBuild = tasks.Where(v => v.Type == TaskType.OutDepot && v.Status == Entity.TaskStatus.NewBuild).Max(v => v.Priority);
|
|
@@ -188,6 +189,27 @@ namespace WCS.WorkEngineering.Systems
|
|
|
enterOrOut = enterPriority > outPriorityNewBuild ? 2 : 3;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ ////判断是否存在调整优先级任务
|
|
|
+ //if (!tasks.Any(v => v.Type != TaskType.TransferDepot && v.Status < Entity.TaskStatus.StackerExecution && v.Priority > 0))
|
|
|
+ //{
|
|
|
+ // //不存在调整优先级任务,判断是否存在移库任务
|
|
|
+ // isTransfer = tasks.Any(v => v.Type == TaskType.TransferDepot && v.Status == Entity.TaskStatus.NewBuild);
|
|
|
+ //}
|
|
|
+ //else //存在调整优先级任务
|
|
|
+ //{
|
|
|
+ // //获取出库任务中新建状态最大优先级
|
|
|
+ // var outPriorityNewBuild = tasks.Where(v => v.Type == TaskType.OutDepot && v.Status == Entity.TaskStatus.NewBuild).Max(v => v.Priority);
|
|
|
+ // //获取入库任务中最大优先级
|
|
|
+ // var enterPriority = tasks.Where(v => v.Type == TaskType.EnterDepot && v.Status < Entity.TaskStatus.StackerExecution).Max(v => v.Priority);
|
|
|
+ // //出入库最大优先级相加大于零
|
|
|
+ // if (outPriorityNewBuild + enterPriority > 0)
|
|
|
+ // {
|
|
|
+ // //出入库优先级任务 1:无优先 2:入库 3:出库
|
|
|
+ // enterOrOut = enterPriority > outPriorityNewBuild ? 2 : 3;
|
|
|
+ // }
|
|
|
+ //}
|
|
|
});
|
|
|
|
|
|
#region 移库
|