|
@@ -129,8 +129,13 @@ namespace WCS.Service.Works.Station
|
|
|
}
|
|
|
devs.Add(new FinishTaskList<string>(dev.Entity.CODE, dev.Entity.Create<StationDevice>()));
|
|
|
}
|
|
|
- //只能有一组任务的下一个地址是交货点
|
|
|
- if (db.Default.Set<WCS_TASK>().Any(v => v.ADDRNEXT == "G1")) return;
|
|
|
+ var G1 = Device.Find("G1").Create<StationDeviceGroup>();
|
|
|
+ //只能有一组任务的下一个地址是交货点同时,放货点必须无货
|
|
|
+ if (db.Default.Set<WCS_TASK>().Any(v => v.ADDRNEXT == "G1") ||
|
|
|
+ G1.Items.Any(v => v.Data3.Status.HasFlag(StationStatus.运行状态位)
|
|
|
+ || v.Data2.Status.HasFlag(IstationStatus.光电状态)
|
|
|
+ || v.Data2.Tasknum > 10000
|
|
|
+ || !v.Data3.Status.HasFlag(StationStatus.自动))) return;
|
|
|
foreach (var dev in devs)
|
|
|
{
|
|
|
var task = db.Default.Set<WCS_TASK>().FirstOrDefault(v => v.ID == dev.Station.Data2.Tasknum) ?? throw new WarnException("无任务");
|
|
@@ -370,10 +375,11 @@ namespace WCS.Service.Works.Station
|
|
|
{
|
|
|
var task = db.Default.Set<WCS_TASK>().Find(dev.Station.Data2.Tasknum);
|
|
|
if (task == null) throw new WarnException("WCS无该任务信息");
|
|
|
-
|
|
|
+ task.ADDRNEXT = "G1340";
|
|
|
dev.Station.Data.GoodsSize = task.Length.ToShort();
|
|
|
dev.Station.Data.VoucherNo++;
|
|
|
}
|
|
|
+ db.Default.SaveChanges();
|
|
|
});
|
|
|
});
|
|
|
}
|