JobType.cs 1.2 KB
using Common;
using DeviceLibrary.lift;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography.X509Certificates;
using System.Text;
using System.Threading.Tasks;

namespace DeviceLibrary
{
    public class JobType
    {
        public JobType()
        {
        }
        public virtual Job GetNewJob(AgvInfo agv)
        {
            return null;
        }
        //public bool HasRobotExecuteLiftTask(AgvInfo agvInfo,string liftName)
        //{
        //    AGVManager.agvInfo.Find(s=>s.Auto&& !s.IP.Equals(agvInfo.IP)&&(agvInfo?.CurJob?.JobParam?.))
        //}
        /// <summary>
        /// 目标点是否有小车
        /// </summary>
        /// <param name="agv"></param>
        /// <param name="targetName"></param>
        /// <returns></returns>
        protected bool TargetIsOccupied(AgvInfo agv, string targetName)
        {
            try
            {
               return LiftContext.OtherAGVIsInLift(agv, targetName);
            }
            catch (Exception ex)
            {
                LogUtil.error($"TargetIsOccupied:{agv.Name},{JsonHelper.SerializeObject(AGVManager.agvInfo)}", ex);
                return false;
            }
        }
    }
}