BackLiftToLineJobType.cs
1.3 KB
using Common;
using DeviceLibrary.bean.job;
namespace DeviceLibrary.bean.jobType
{
/// <summary>
/// 1F,电梯到库房
/// </summary>
public class BackLiftToLineJobType : JobType
{
public override Job GetNewJob(AgvInfo agv)
{
if (!agv.IsIdle())
return null;
else
{
if(agv.HasEmptyShelfInLift(out string liftname, out lift.LiftStatus lift))//agv.Scope.Floor.Equals(1) &&
{
service.model.MissionInfo missionInfo = manager.MissionManager.GetF1ReceiveMission(agv);
if(missionInfo!=null)
{
if (service.model.MissionInfo.IsFinishedProdcut(missionInfo))
return null;
Node src = manager.NodeManager.GetNode(liftname, NodeType.Lift);
string[] dests = lift.destinationPoint.Split(',');
Node dest = manager.NodeManager.GetNode(dests.Length > 1 ? dests[0] : lift.destinationPoint, NodeType.Node);
JobParam jobParam = new JobParam(src, dest,null,missionInfo);
return new F1LiftToStoreJob(jobParam);
}
}
}
return null;
}
}
}