using Kean.Domain.Task.Models;

namespace Kean.Domain.Task.Events
{
    /// <summary>
    /// 创建直接出库命令执行时触发的事件
    /// </summary>
    public class DirectOutboundExecutingEvent : IEvent
    {
        /// <summary>
        /// 托盘条码
        /// </summary>
        public string Barcode { get; set; }

        /// <summary>
        /// 操作位置
        /// </summary>
        public Cell Original { get; set; }

        /// <summary>
        /// 目标位置
        /// </summary>
        public Station Destination { get; set; }

        /// <summary>
        /// 优先级
        /// </summary>
        public int? Priority { get; set; }

        /// <summary>
        /// 操作者
        /// </summary>
        public int Operator { get; set; }

        /// <summary>
        /// 是否手动
        /// </summary>
        public bool Manual { get; set; }

        /// <summary>
        /// 标签
        /// </summary>
        public string Tag { get; set; }

        /// <summary>
        /// 前续连接
        /// </summary>
        public int? Previous { get; set; }
    }
}