using SqlSugar;
using System;
using System.Collections.Generic;
using System.Text;

namespace SlnMesnac.Model.domain
{
    [SugarTable("wcs_task"), TenantAttribute("mes")]
    public class WcsTask
    {
        /// <summary>
        /// 主键
        /// </summary>
        [SugarColumn(ColumnName = "objid", IsPrimaryKey = true, IsIdentity = true)]
        public long ObjId { get; set; }

        /// <summary>
        /// wcs_warehouse_order 主键id
        /// </summary>
        [SugarColumn(ColumnName = "master_id")]
        public long? MasterId { get; set; }

        /// <summary>
        /// wms出入库记录表id
        /// </summary>
        [SugarColumn(ColumnName = "order_id")]
        public long? OrderId { get; set; }

        /// <summary>
        /// 流水号
        /// </summary>
        [SugarColumn(ColumnName = "serial_no")]
        public long? SerialNo { get; set; }

        /// <summary>
        /// 设备编号
        /// </summary>
        [SugarColumn(ColumnName = "equipment_no")]
        public string EquipmentNo { get; set; }

        /// <summary>
        /// 容器号(托盘或者箱号)
        /// </summary>
        [SugarColumn(ColumnName = "container_no")]
        public string ContainerNo { get; set; }

        /// <summary>
        /// 任务类型,字典表
        /// </summary>
        [SugarColumn(ColumnName = "task_type")]
        public int? TaskType { get; set; }

        /// <summary>
        /// 任务状态,字典表
        /// </summary>
        [SugarColumn(ColumnName = "task_status")]
        public int? TaskStatus { get; set; }

        /// <summary>
        /// 物料ID
        /// </summary>
        [SugarColumn(ColumnName = "material_id")]
        public long? MaterialId { get; set; }

        /// <summary>
        /// 物料号
        /// </summary>
        [SugarColumn(ColumnName = "material_no")]
        public string MaterialNo { get; set; }

        /// <summary>
        /// 数量
        /// </summary>
        [SugarColumn(ColumnName = "qty")]
        public int? Qty { get; set; }

        /// <summary>
        /// 起始点编号
        /// </summary>
        [SugarColumn(ColumnName = "start_point_no")]
        public string StartPointNo { get; set; }

        /// <summary>
        /// 起始点id
        /// </summary>
        [SugarColumn(ColumnName = "start_point_id")]
        public long? StartPointId { get; set; }

        /// <summary>
        /// 当前点编号
        /// </summary>
        [SugarColumn(ColumnName = "curr_point_no")]
        public string CurrPointNo { get; set; }

        /// <summary>
        /// 当前点id
        /// </summary>
        [SugarColumn(ColumnName = "curr_point_id")]
        public long? CurrPointId { get; set; }

        /// <summary>
        /// 下一点位id
        /// </summary>
        [SugarColumn(ColumnName = "next_point_id")]
        public long? NextPointId { get; set; }

        /// <summary>
        /// 下一点位编号
        /// </summary>
        [SugarColumn(ColumnName = "next_point_no")]
        public string NextPointNo { get; set; }

        /// <summary>
        /// 结束点编号
        /// </summary>
        [SugarColumn(ColumnName = "end_point_no")]
        public string EndPointNo { get; set; }

        /// <summary>
        /// 结束点id
        /// </summary>
        [SugarColumn(ColumnName = "end_point_id")]
        public long? EndPointId { get; set; }

        /// <summary>
        /// 所属楼层
        /// </summary>
        [SugarColumn(ColumnName = "floor_no")]
        public int? FloorNo { get; set; }

        /// <summary>
        /// 是否可用  0:不可用  1:可用
        /// </summary>
        [SugarColumn(ColumnName = "use_flag")]
        public int UseFlag { get; set; } = 1;

        /// <summary>
        /// 创建者
        /// </summary>
        [SugarColumn(ColumnName = "create_by")]
        public string CreateBy { get; set; } = "SYS";

        /// <summary>
        /// 创建时间
        /// </summary>
        [SugarColumn(ColumnName = "create_time")]
        public DateTime CreateTime { get; set; } = DateTime.Now;

        /// <summary>
        /// 更新者
        /// </summary>
        [SugarColumn(ColumnName = "update_by")]
        public string UpdateBy { get; set; } = "SYS";

        /// <summary>
        /// 更新时间
        /// </summary>
        [SugarColumn(ColumnName = "update_time")]
        public DateTime UpdateTime { get; set; } = DateTime.Now;

        /// <summary>
        /// 备用字段1
        /// </summary>
        [SugarColumn(ColumnName = "ud1")]
        public int? Ud1 { get; set; }

        /// <summary>
        /// 备用字段2
        /// </summary>
        [SugarColumn(ColumnName = "ud2")]
        public string Ud2 { get; set; }

        /// <summary>
        /// 备用字段3
        /// </summary>
        [SugarColumn(ColumnName = "ud3")]
        public string Ud3 { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [SugarColumn(ColumnName = "remark")]
        public string Remark { get; set; }

        /// <summary>
        /// 来源楼层
        /// </summary>
        [SugarColumn(ColumnName = "from_floor_no")]
        public int? FromFloorNo { get; set; }

        /// <summary>
        /// 是否为空
        /// </summary>
        [SugarColumn(ColumnName = "is_empty")]
        public string IsEmpty { get; set; }

        /// <summary>
        /// 执行情况
        /// </summary>
        [SugarColumn(ColumnName = "ctu_execute")]
        public string CtuExecute { get; set; }

        /// <summary>
        /// Agv返回code
        /// </summary>
        [SugarColumn(ColumnName = "taskCode")]
        public string TaskCode { get; set; }

        /// <summary>
        /// 是否删除
        /// </summary>
        [SugarColumn(ColumnName = "is_delete")]
        public int IsDelete { get; set; } = 0;

        /// <summary>
        /// 是否停止
        /// </summary>
        [SugarColumn(ColumnName = "is_stop")]
        public int? IsStop { get; set; }
    }
}
