CrossDoorJob.cs 3.5 KB
using DeviceLib.Model.AGV;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DeviceLib.BLL
{
    internal class CrossDoorJob : ImpJob
    {
        /// <summary>
        /// 过车间门任务
        /// </summary>
        public CrossDoorJob(JobParam jobParam) : base(jobParam)
        {
            JobName = "过门任务";
        }
        public override Job Run(Robot robot)
        {
            Job job = this;
            switch (JobRunStep.CurStep)
            {
                case RunStep.None:
                    ToNextStep(RunStep.CrossDoor_30_End, "同一车间,无需通过车间门");
                    break;
                case RunStep.CrossDoor_01_Start:

                    break;
                case RunStep.CrossDoor_02_CheckSrcDstState:

                    break;

                case RunStep.CrossDoor_03_ToSrcExit:

                    break;
                case RunStep.CrossDoor_04_CheckDoorAction:

                    break;

                case RunStep.CrossDoor_05_DoorTogether:

                    break;

                case RunStep.CrossDoor_06_OpenDoor:

                    break;

                case RunStep.CrossDoor_07_WaitDoorOpenSuccess:

                    break;

                case RunStep.CrossDoor_08_WaitDoorOpenTimeOut:

                    break;

                case RunStep.CrossDoor_09_Cross:

                    break;

                case RunStep.CrossDoor_10_CrossTimeOut:
                    break;

                case RunStep.CrossDoor_11_CrossSuccess:

                    break;
                case RunStep.CrossDoor_12_CloseDoor:

                    break;

                case RunStep.CrossDoor_13_WaitDoorCloseTimeOut:

                    break;

                case RunStep.CrossDoor_14_WaitDoorCloseSuccess:

                    break;

                case RunStep.CrossDoor_15_DoorIndependent:

                    break;

                case RunStep.CrossDoor_16_OpenSrcDoor:

                    break;

                case RunStep.CrossDoor_17_WaitSrcDoorOpenSuccess:

                    break;

                case RunStep.CrossDoor_18_WaitSrcDoorOpenTimeOut:

                    break;

                case RunStep.CrossDoor_19_ToMidPlaceBtwDoors:

                    break;

                case RunStep.CrossDoor_20_CloseSrcDoor:

                    break;

                case RunStep.CrossDoor_21_WaitSrcDoorCloseSuccess:

                    break;

                case RunStep.CrossDoor_22_WaitSrcDoorCloseTimeOut:

                    break;

                case RunStep.CrossDoor_23_OpenDstDoor:

                    break;

                case RunStep.CrossDoor_24_WaitDstDoorOpenSuccess:

                    break;

                case RunStep.CrossDoor_25_WaitDstDoorOpenTimeOut:

                    break;

                case RunStep.CrossDoor_26_EnterDstDoor:

                    break;

                case RunStep.CrossDoor_27_CloseDstDoor:

                    break;

                case RunStep.CrossDoor_28_WaitDstDoorCloseSuccess:

                    break;

                case RunStep.CrossDoor_29_WaitDstDoorCloseTimeOut:

                    break;

                case RunStep.CrossDoor_30_End:
                    job = GetCallBackJob();//new DeliverShelfJob(JobParam);
                    job.ToNextStep(GetCallBackStep(), "到达目标车间");
                    break;
            }

            return job;
        }
    }
}