|
|
@@ -334,16 +334,17 @@ namespace WCS.Service.Works.SRM
|
|
|
.Where(d => d.TYPE == TaskType.出库)
|
|
|
.Where(d => d.STATUS > TaskStatus.新建)
|
|
|
.Where(d => d.STATUS < TaskStatus.已完成).ToList();
|
|
|
- var outDepotList = waitTask.Where(v => cTaskList.Where(d => d.ADDRTO == v.ADDRTO && d.FLOOR == v.FLOOR).GroupBy(d => d.TaskGroupKey).Count() < maximum)
|
|
|
+ var outDepotGrouping = waitTask.Where(v => cTaskList.Where(d => d.ADDRTO == v.ADDRTO && d.FLOOR == v.FLOOR).GroupBy(d => d.TaskGroupKey).Count() < maximum)
|
|
|
.OrderByDescending(v => v.Priority)
|
|
|
.ThenBy(v => v.ADDRTO == "G1340" ? 0 : 1)
|
|
|
.ThenBy(v => v.FLOOR == floor ? 0 : 1)
|
|
|
.ThenBy(v => cTaskList.Where(d => d.ADDRTO == v.ADDRTO && d.FLOOR == v.FLOOR).GroupBy(d => d.TaskGroupKey).Count())
|
|
|
.ThenBy(v => v.CREATETIME)
|
|
|
.GroupBy(v => v.ADDRTO)
|
|
|
- .FirstOrDefault(v => !priorityADDRTO.Contains(v.Key))!
|
|
|
- .Where(v => v != null)
|
|
|
- .Select(v => v).ToList();
|
|
|
+ .FirstOrDefault(v => !priorityADDRTO.Contains(v.Key));
|
|
|
+ if (outDepotGrouping == null) return; //用于解决Linq Value cannot be null. (Parameter 'source')
|
|
|
+
|
|
|
+ var outDepotList = outDepotGrouping.Select(v => v).ToList();
|
|
|
|
|
|
//获取两个个可执行任务,此时这两个任务的目标地址是一致的
|
|
|
var tasks = outDepotList.GetOutTask();
|