|
@@ -157,13 +157,15 @@ namespace WCS.Service.Works.SRM
|
|
|
.OrderByDescending(v => v.Entity.CODE)
|
|
|
.ToArray();
|
|
|
//取巷道
|
|
|
-
|
|
|
DB.Do(db =>
|
|
|
{
|
|
|
var dev1 = devs[0];
|
|
|
var dev2 = devs[1];
|
|
|
var dev1IsThereATask = dev1.Data2.Tasknum > 0 && dev1.Data2.Status.HasFlag(IstationStatus.光电状态) && !dev1.Data3.Status.HasFlag(StationStatus.运行状态位);
|
|
|
var dev2IsThereATask = dev2.Data2.Tasknum > 0 && dev2.Data2.Status.HasFlag(IstationStatus.光电状态) && !dev2.Data3.Status.HasFlag(StationStatus.运行状态位);
|
|
|
+
|
|
|
+ //
|
|
|
+
|
|
|
//处理一工位
|
|
|
if (dev1IsThereATask)
|
|
|
{
|
|
@@ -285,6 +287,16 @@ namespace WCS.Service.Works.SRM
|
|
|
})
|
|
|
.OrderByDescending(v => v.Priority)
|
|
|
.ThenBy(v => v.FLOOR == floor ? 0 : 1)
|
|
|
+ .ThenBy(v =>
|
|
|
+ {
|
|
|
+ return db.Default.Set<WCS_TASK>()
|
|
|
+ .AsNoTracking()
|
|
|
+ .Where(d => d.TYPE == TaskType.出库)
|
|
|
+ .Where(d => d.STATUS > TaskStatus.新建)
|
|
|
+ .Where(d => d.STATUS < TaskStatus.已完成 || taskidList.Contains(d.ID))
|
|
|
+ .Where(d => d.ADDRTO == v.ADDRTO && d.FLOOR == v.FLOOR)
|
|
|
+ .GroupBy(d => d.TaskGroupKey).Count();
|
|
|
+ })
|
|
|
.ThenBy(v => v.CREATETIME)
|
|
|
.GroupBy(v => v.ADDRTO)
|
|
|
.FirstOrDefault();
|