|
@@ -359,4 +359,40 @@ namespace WCS.Service.Works.Stations
|
|
|
return new string[] { "2385", "2366", "2108" }.Contains(dev.CODE);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ [WorkTitle(typeof(ProductHandler), "2359RGV放货后重新分配目标地址", true)]
|
|
|
+ public class RGV放货后重新分配目标地址 : DeviceWork<Device<IStation521, IStation520>>
|
|
|
+ {
|
|
|
+ protected override void Do(Device<IStation521, IStation520> dev)
|
|
|
+ {
|
|
|
+ if (Ltc.Do(dev, v => v.Data2.CONFIRM == true))
|
|
|
+ {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (Ltc.Do(dev, v => v.Data.TASKNUM == 0))
|
|
|
+ return;
|
|
|
+
|
|
|
+ if (Ltc.Do(dev, v => v.Data.GOODSEND != dev.Entity.Code()))
|
|
|
+ return;
|
|
|
+ if (!dev.Data.REQUEST) return;
|
|
|
+ if (!dev.Data.PH_STATUS) return;
|
|
|
+
|
|
|
+ DB.Do(db =>
|
|
|
+ {
|
|
|
+ var task = db.Default.Set<WCS_TASK>().Find(dev.Data.TASKNUM);
|
|
|
+ if (task == null)
|
|
|
+ throw new Exception($"任务号{dev.Data.TASKNUM}不存在");
|
|
|
+
|
|
|
+ dev.Data2.TASKNUM = dev.Data.TASKNUM;
|
|
|
+ dev.Data2.GOODSEND = Convert.ToInt16(task.ADDRNEXT);
|
|
|
+ dev.Data2.CONFIRM = true;
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ protected override bool SelectDevice(WCS_DEVICE dev)
|
|
|
+ {
|
|
|
+ return new string[] { "2359" }.Contains(dev.CODE);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|