|
@@ -172,17 +172,20 @@ namespace WCS.Service.Works.RGV
|
|
|
|
|
|
if (rgvDevice.RGVList.Count != 6)//有小车进入维修站时启用该逻辑,避免在正常使用时影响效率
|
|
|
{
|
|
|
- //var station11 = rgvDevice.LocationList.Where(v => v.Entity.Is(DF.涂布RGV取货设备组)).Where(v => v.RGVGetTaskedDevice().Any())
|
|
|
- // .Where(v => v.CurrentRGV() == null).MinBy(rgvDevice.Distance);
|
|
|
-
|
|
|
- ////该站台到当前小车的范围中没有车
|
|
|
- //if (rgvDevice.RGVList.Any(v => station11!.Position <= v.Position && rgvDevice.Position > v.Position))
|
|
|
- //{
|
|
|
- // rgvDevice.Move(station11);
|
|
|
- // return;
|
|
|
- //}
|
|
|
+ var stationList = rgvDevice.LocationList.Where(v => v.Entity.Is(DF.涂布RGV取货设备组)).Where(v => v.RGVGetTaskedDevice().Any())
|
|
|
+ .Where(v => v.CurrentRGV() == null);
|
|
|
+ if (stationList != null)
|
|
|
+ {
|
|
|
+ var station11 = stationList.MinBy(rgvDevice.Distance);
|
|
|
+ //该站台到当前小车的范围中没有车
|
|
|
+ if (rgvDevice.RGVList.Any(v => station11!.Position <= v.Position && rgvDevice.Position > v.Position))
|
|
|
+ {
|
|
|
+ rgvDevice.Move(station11);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- if (pickStation.Entity.CODE == "G9")
|
|
|
+ else if (pickStation.Entity.CODE == "G9")
|
|
|
{
|
|
|
//九站台的小车需要额外检测一下11站台是否需要取货
|
|
|
var station11 = Device.Find("G11").Create<StationDeviceGroup>();
|
|
@@ -398,4 +401,4 @@ namespace WCS.Service.Works.RGV
|
|
|
return dev.Is(DF.BOPPRGV);
|
|
|
}
|
|
|
}
|
|
|
-}
|
|
|
+}
|