using SqlSugar;
using System;
using wms.dto;
namespace WCS.Entity.sx
{
///
/// 任务表
///
[Tenant("sx")]
[SugarTable(nameof(WCS_TaskOld) + "_{year}{month}{day}", "任务表")]
[SplitTable(SplitType.Month)]//按年分表 (自带分表支持 年、季、月、周、日)
public class WCS_TaskOld
{
#region 任务基本信息
///
/// ID
///
[SugarColumn(IsPrimaryKey = true, ColumnDescription = "ID")]
public int Id { get; set; }
///
/// 生产编码
///
[SugarColumn(ColumnDescription = "生产编码", Length = 50)]
public string BarCode { get; set; }
///
/// 任务类型
///
[SugarColumn(ColumnDescription = "任务类型")]
public TaskType Type { get; set; }
///
/// 任务状态
///
[SugarColumn(ColumnDescription = "任务状态")]
public TaskStatus Status { get; set; }
///
/// 起始地址
///
[SugarColumn(ColumnDescription = "起始地址", Length = 20)]
public string AddrFrom { get; set; }
///
/// 目标地址
///
[SugarColumn(ColumnDescription = "目标地址", Length = 20)]
public string AddrTo { get; set; }
///
/// 下一个地址
///
[SugarColumn(ColumnDescription = "下一个地址", Length = 20, IsNullable = true)]
public string AddrNext { get; set; }
///
/// 巷道
///
[SugarColumn(ColumnDescription = "巷道", Length = 10, IsNullable = true)]
public string Tunnel { get; set; }
///
/// 楼层
///
[SugarColumn(ColumnDescription = "楼层", IsNullable = true)]
public int Floor { get; set; }
///
/// 设备
///
[SugarColumn(ColumnDescription = "设备", Length = 20, IsNullable = true)]
public string Device { get; set; }
///
/// 最后一个交互点
///
[SugarColumn(ColumnDescription = "最后一个交互点", Length = 20, IsNullable = true)]
public string LastInteractionPoint { get; set; }
///
/// 堆垛机放货站台
///
[SugarColumn(ColumnDescription = "堆垛机放货站台", Length = 20, IsNullable = true)]
public string SrmStation { get; set; }
///
/// 客户现场的机台/产线编号
///
[SugarColumn(ColumnDescription = "客户现场的机台/产线编号", IsNullable = true)]
public string WorkBench { get; set; }
///
/// 仓库编号
///
[SugarColumn(ColumnDescription = "仓库编号", IsNullable = true)]
public string WarehouseCode { get; set; }
///
/// WMS任务号
///
[SugarColumn(ColumnDescription = "WMS任务号")]
public int WmsTask { get; set; }
///
/// 任务组ID
///
[SugarColumn(ColumnDescription = "任务组ID", IsNullable = true)]
public string TaskGroupKey { get; set; }
#endregion 任务基本信息
#region 码垛信息
///
/// 码垛单号
///
[SugarColumn(ColumnDescription = "单号", IsNullable = true)]
public int DocId { get; set; }
///
/// 生产单号
///
[SugarColumn(ColumnDescription = "生产单号", IsNullable = true)]
public string WorkOrder { get; set; }
///
/// 码垛托盘类型
///
[SugarColumn(ColumnDescription = "托盘类型", IsNullable = true)]
public short PalletType { get; set; }
///
/// 码垛工位
///
[SugarColumn(ColumnDescription = "码垛工位", IsNullable = true)]
public short ProdLine { get; set; }
///
/// 满盘数量
///
[SugarColumn(ColumnDescription = "满盘数量", IsNullable = true)]
public short FullQty { get; set; }
///
/// 码垛主表id
///
[SugarColumn(ColumnDescription = "码垛主表id", IsNullable = false)]
public long PalletizingId { get; set; }
///
/// 机器人编码
///
[SugarColumn(ColumnDescription = "机器人编码", Length = 255, IsNullable = true)]
public string Robot { get; set; }
#endregion 码垛信息
#region 外形信息
///
/// 高度
///
[SugarColumn(ColumnDescription = "高度", IsNullable = true)]
public short Height { get; set; }
///
/// 重量
///
[SugarColumn(ColumnDescription = "重量", IsNullable = true)]
public float Weight { get; set; }
///
/// 长度
///
[SugarColumn(ColumnDescription = "产品长度", IsNullable = true)]
public decimal Length { get; set; }
#endregion 外形信息
#region 操作时间与用户
///
/// 创建时间
/// 新增数据时自动获取服务器时间
///
[SugarColumn(ColumnDescription = "创建时间", InsertServerTime = true)]
public DateTime AddTime { get; set; }
///
/// 创建用户
/// 仅记录用户ID
///
[SugarColumn(ColumnDescription = "创建用户", Length = 50)]
public string AddWho { get; set; }
///
/// 开始时间
///
[SugarColumn(ColumnDescription = "开始时间", IsNullable = true)]
public DateTime? StartTime { get; set; }
///
/// 更新用户
/// 仅记录用户ID
///
[SugarColumn(ColumnDescription = "更新用户", Length = 50, IsNullable = true)]
public string EditWho { get; set; }
///
/// 更新时间
/// 更新数据时自动获取服务器时间
///
[SugarColumn(ColumnDescription = "更新时间", UpdateServerTime = true, IsNullable = true)]
public DateTime EditTime { get; set; }
///
/// 结束时间
///
[SugarColumn(ColumnDescription = "结束时间", IsNullable = true)]
public DateTime? EndTime { get; set; }
#endregion 操作时间与用户
#region 条码物料相关信息
///
/// 物料编码
///
[SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = true)]
public string MatCode { get; set; }
///
/// 材料号
///
[SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = true)]
public string InvBarCode { get; set; }
///
/// 是否快投
///
[SugarColumn(ColumnDataType = "bit", IsNullable = true)]
public bool IsFast { get; set; }
///
/// 等级
///
[SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = true)]
public string Grade { get; set; }
///
/// 是否改手盘
///
[SugarColumn(ColumnDataType = "bit", IsNullable = true)]
public bool IsSurplus { get; set; }
///
/// 是否返空
///
[SugarColumn(ColumnDataType = "bit", IsNullable = true)]
public bool IsRework { get; set; }
#endregion 条码物料相关信息
///
/// 更新状态
///
[SugarColumn(ColumnDescription = "更新状态")]
public TaskStatus Uploaded { get; set; }
///
/// AGV任务号
///
[SugarColumn(ColumnDescription = "AGV任务号", IsNullable = true)]
public int AgvTaskID { get; set; }
///
/// 优先级
///
[SugarColumn(ColumnDescription = "优先级")]
public int Priority { get; set; }
///
/// 手动处理备注
///
[SugarColumn(ColumnDescription = "手动处理备注", IsNullable = true)]
public string ManualRemarks { get; set; }
///
/// 出库任务类型
///
[SugarColumn(ColumnDescription = "出库任务类型", IsNullable = true)]
public OutTypeEnum OutType { get; set; }
///
/// 产品编码
///
[SugarColumn(ColumnDescription = "产品编码", IsNullable = true)]
public string MaterialCode { get; set; }
///
/// 是否可用
///
[SugarColumn(ColumnDescription = "是否可用")]
public bool Enabled { get; set; } = true;
///
/// 业务类型
///
[SugarColumn(ColumnDescription = "业务类型", IsNullable = true)]
public string BusType { get; set; }
///
/// 货位类型
///
[SugarColumn(ColumnDescription = "货位类型", IsNullable = true)]
public int GoodsType { get; set; }
///
/// 货叉
///
[SugarColumn(ColumnDescription = "货叉", IsNullable = false)]
public int Fork { get; set; }
///
/// 层
///
[SugarColumn(ColumnDescription = "层", IsNullable = true)]
public int Layer { get; set; }
///
/// 行
///
[SugarColumn(ColumnDescription = "行", IsNullable = true)]
public int Line { get; set; }
///
/// 列
///
[SugarColumn(ColumnDescription = "列", IsNullable = true)]
public int Col { get; set; }
///
/// 深
///
[SugarColumn(ColumnDescription = "深", IsNullable = true)]
public int Depth { get; set; }
}
}