InOutParam.cs 1.7 KB
using CtuDeviceLib;
using Mushiny;
using OnlineStore.Common;
using System.Collections.Generic;


namespace DeviceLibrary.CtuService
{
    /// <summary>
    /// 出入参数
    /// </summary>
    public class InOutParam
    {


        public InOutParam()
        {

        }
        public InOutParam(string boxCode, string dstName)
        {
            BoxCode = boxCode;
            DstName = dstName;
        }
        public InOutParam Clone()
        {
            return (InOutParam)this.MemberwiseClone();
        }
        /// <summary>
        /// 规划出的地码
        /// </summary>
        public List<PointCode> PlanedMovePointCodes;
        /// <summary>
        /// 规划出的路径点
        /// </summary>
        public List<PathPoint> WillUsePathPoints;
        /// <summary>
        /// 当前正在执行的地码
        /// </summary>
        public List<PointCode> CurRunningPointCodes;
        /// <summary>
        /// 当前正在执行的地码
        /// </summary>
        public List<PathPoint> CurRunningPathPoints;
        public CtuTaskBase PreCtuTask {  get; set; }
        /// <summary>
        /// 料箱码
        /// </summary>
        public string BoxCode { get; set; }
        /// <summary>
        /// 目标名
        /// </summary>
        public string DstName { get; set; }
        /// <summary>
        /// 目标地码
        /// </summary>
        public uint DstPointCode { get { return PosInfo?.PointCode ?? 0; } }
        /// <summary>
        /// 目标位置信息
        /// </summary>
        public PosInfo PosInfo { get { return PosInfos.GetPosInfoByName(DstName); } }
        public string ToStr()
        {
            return $"{JsonHelper.SerializeObject(this)}";
        }

    }
}