using System; using SqlSugar; using System.Linq; using System.ComponentModel; using System.Collections.Generic; namespace Tiger.Model { /// /// 实体:生产过程记录 /// [Description("Primary:ID")] [DisplayName("生产过程记录")] [Serializable] [SugarTable("MES_WIP_HIS")] public class MES_WIP_HIS : DbEntityWithAuth { #region 构造函数 /// /// 实体:生产过程记录 /// public MES_WIP_HIS() { } /// /// 实体:生产过程记录 /// /// 历史的来源Item /// 追溯信息 public MES_WIP_HIS(MES_WIP_DATA data, string traceInfo) { ID = Guid.NewGuid().ToString("N"); CREATE_USER = data.CREATE_USER; UPDATE_USER = data.UPDATE_USER; AUTH_ORG = data.AUTH_ORG; AUTH_PROD = data.AUTH_PROD; AUTH_WH = data.AUTH_WH; WIP_ID = data.ID; SN = data.SN; STATUS = data.STATUS; ITEM_CODE = data.ITEM_CODE; QTY = data.QTY; WORK_ORDER = data.WORK_ORDER; BATCH_NO = data.BATCH_NO; ROT_CODE = data.ROT_CODE; NODE_ID = data.NODE_ID; NODE_NAME = data.NODE_NAME; FTY_CODE = data.FTY_CODE; WS_CODE = data.WS_CODE; LINE_CODE = data.LINE_CODE; POST_CODE = data.POST_CODE; OPER_CODE = data.OPER_CODE; SEGMENT = data.SEGMENT; HOLD_FLAG = data.HOLD_FLAG; REWORK_FLAG = data.REWORK_FLAG; UNBIND_FLAG = data.UNBIND_FLAG; FINISHED_FLAG = data.FINISHED_FLAG; DFT_FLAG = data.DFT_FLAG; DFT_COUNT = data.DFT_COUNT; DFT_CODE = data.DFT_CODE; REFLOW_NODE = data.REFLOW_NODE; FLOW_SN = data.FLOW_SN; TRAY_SN = data.TRAY_SN; INNER_SN = data.INNER_SN; CARTON_SN = data.CARTON_SN; PALLET_SN = data.PALLET_SN; INV_FLAG = data.INV_FLAG; INV_DATE = data.INV_DATE; INLINE_DATE = data.INLINE_DATE; OUTLINE_DATE = data.OUTLINE_DATE; OPERATION_TIME = data.OPERATION_TIME; OPERATION_END = data.OPERATION_END; DFT_QTY = data.DFT_QTY; SCRAP_QTY = data.SCRAP_QTY; SFTS_CODE = data.SFTS_CODE; SFT_CODE = data.SFT_CODE; PRD_CODE = data.PRD_CODE; OBA_STATUS = data.OBA_STATUS; OBA_BATCH = data.OBA_BATCH; LOCK_BATCH = data.LOCK_BATCH; SHIPPING_DATE = data.SHIPPING_DATE; SHIPPING_ORDER = data.SHIPPING_ORDER; REMARK = data.REMARK; TRACE_INFO = traceInfo; } #endregion #region 公共属性 /// /// 在制品ID /// [DisplayName("在制品ID")] public string WIP_ID { get; set; } /// /// 过站条码 /// [DisplayName("过站条码")] public string SN { get; set; } /// /// 状态(0Init初始化|10Input已投入|20OK良品过站|30NG不良过站|40Repair维修中|50Output已产出|51WaitStorage待入库|52WaitShipment待出货|60InStorage已入库|61Reject已拒收|80Shipped已出货|90Scrap已报废|91Offline异常下线) /// [DisplayName("状态(0Init初始化|10Input已投入|20OK良品过站|30NG不良过站|40Repair维修中|50Output已产出|51WaitStorage待入库|52WaitShipment待出货|60InStorage已入库|61Reject已拒收|80Shipped已出货|90Scrap已报废|91Offline异常下线)")] public int STATUS { get; set; } /// /// 物料编码 /// [DisplayName("物料编码")] public string ITEM_CODE { get; set; } /// /// 数量 /// [DisplayName("数量")] public double QTY { get; set; } = 1; /// /// 工单号 /// [DisplayName("工单号")] public string WORK_ORDER { get; set; } /// /// 工单批次号 /// [DisplayName("工单批次号")] public string BATCH_NO { get; set; } /// /// 工艺路线编码 /// [DisplayName("工艺路线编码")] public string ROT_CODE { get; set; } /// /// 工艺路线节点ID /// [DisplayName("工艺路线节点ID")] public string NODE_ID { get; set; } /// /// 工艺路线节点名称 /// [DisplayName("工艺路线节点名称")] public string NODE_NAME { get; set; } /// /// 工厂编码 /// [DisplayName("工厂编码")] public string FTY_CODE { get; set; } /// /// 车间编码 /// [DisplayName("车间编码")] public string WS_CODE { get; set; } /// /// 产线编码 /// [DisplayName("产线编码")] public string LINE_CODE { get; set; } /// /// 岗位编码 /// [DisplayName("岗位编码")] public string POST_CODE { get; set; } /// /// 工序编码 /// [DisplayName("工序编码")] public string OPER_CODE { get; set; } /// /// 加工段 /// [DisplayName("加工段")] public string SEGMENT { get; set; } /// /// 锁定标记 /// [DisplayName("锁定标记")] public string HOLD_FLAG { get; set; } /// /// 返工标记 /// [DisplayName("返工标记")] public string REWORK_FLAG { get; set; } /// /// 解绑标记(因异常下线导致当前记录从工单生产数据中移除,不参与工艺流程计算和数据统计) /// [DisplayName("解绑标记(因异常下线导致当前记录从工单生产数据中移除,不参与工艺流程计算和数据统计)")] public string UNBIND_FLAG { get; set; } /// /// 是否完工 /// [DisplayName("是否完工")] public string FINISHED_FLAG { get; set; } /// /// 是否不良 /// [DisplayName("是否不良")] public string DFT_FLAG { get; set; } /// /// 不良计数 /// [DisplayName("不良计数")] public int DFT_COUNT { get; set; } /// /// 不良代码编码 /// [DisplayName("不良代码编码")] public string DFT_CODE { get; set; } /// /// 维修回流工序名称(为空则不指定回流工序) /// [DisplayName("维修回流工序名称(为空则不指定回流工序)")] public string REFLOW_NODE { get; set; } /// /// 厂内流转条码 /// [DisplayName("厂内流转条码")] public string FLOW_SN { get; set; } /// /// 托盘/载具条码 /// [DisplayName("托盘/载具条码")] public string TRAY_SN { get; set; } /// /// 内包装条码 /// [DisplayName("内包装条码")] public string INNER_SN { get; set; } /// /// 外箱条码 /// [DisplayName("外箱条码")] public string CARTON_SN { get; set; } /// /// 栈板条码 /// [DisplayName("栈板条码")] public string PALLET_SN { get; set; } /// /// 是否入库 /// [DisplayName("是否入库")] public string INV_FLAG { get; set; } /// /// 入库日期 /// [DisplayName("入库日期")] public DateTime INV_DATE { get; set; } = DateTime.MinValue; /// /// 投入时间 /// [DisplayName("投入时间")] public DateTime INLINE_DATE { get; set; } = DateTime.MinValue; /// /// 产出时间 /// [DisplayName("产出时间")] public DateTime OUTLINE_DATE { get; set; } = DateTime.MinValue; /// /// 当前操作时间 /// [DisplayName("当前操作时间")] public DateTime OPERATION_TIME { get; set; } = DateTime.MinValue; /// /// 操作完成时间 /// [DisplayName("操作完成时间")] public DateTime OPERATION_END { get; set; } = DateTime.MinValue; /// /// 不良数量 /// [DisplayName("不良数量")] public int DFT_QTY { get; set; } = 0; /// /// 报废数量 /// [DisplayName("报废数量")] public int SCRAP_QTY { get; set; } = 0; /// /// 班制编码 /// [DisplayName("班制编码")] public string SFTS_CODE { get; set; } /// /// 班次编码 /// [DisplayName("班次编码")] public string SFT_CODE { get; set; } /// /// 时段编码 /// [DisplayName("时段编码")] public string PRD_CODE { get; set; } /// /// 抽检状态(0Unsampled未抽检|1NoSampling不抽检|2WaitCheck待检验|3Checking检验中|4Completed检验完|5Locked已锁定) /// [DisplayName("抽检状态(0Unsampled未抽检|1NoSampling不抽检|2WaitCheck待检验|3Checking检验中|4Completed检验完|5Locked已锁定)")] public int OBA_STATUS { get; set; } /// /// 抽检批次号 /// [DisplayName("抽检批次号")] public string OBA_BATCH { get; set; } /// /// 锁定批次号 /// [DisplayName("锁定批次号")] public string LOCK_BATCH { get; set; } /// /// 出货时间 /// [DisplayName("出货时间")] public DateTime SHIPPING_DATE { get; set; } = DateTime.MinValue; /// /// 出货单号 /// [DisplayName("出货单号")] public string SHIPPING_ORDER { get; set; } /// /// 备注 /// [DisplayName("备注")] public string REMARK { get; set; } /// /// 操作耗时(s) /// [DisplayName("操作耗时(ms)")] public long ELAPSED_TIME { get; set; } = 0; /// /// 追溯信息 /// [DisplayName("追溯信息")] public string TRACE_INFO { get; set; } #endregion #region 虚拟属性 /*例子 [SugarColumn(IsIgnore = true)] public string FieldName { get; set; } */ /// /// 是否已经良品过站 /// [SugarColumn(IsIgnore = true)] public bool IsFinished => DFT_FLAG != "Y"; #endregion #region 外键属性 /*例子 //一对一外键导航 [Navigate(NavigateType.OneToOne, nameof(ClassAId))]//一对一 ClassAId是MES_WIP_HIS类里面的外键ID字段 public ClassA ClassA { get; set; } //注意禁止手动赋值,只能是null //一对多外键导航 [Navigate(NavigateType.OneToMany, nameof(ClassA.MES_WIP_HISId))]//ClassA表中的MES_WIP_HISId public List ClassAList { get; set; }//注意禁止手动赋值,只能是null //多对多外键导航 [Navigate(typeof(MappingClass), nameof(MappingClass.MES_WIP_HISId), nameof(MappingClass.ClassAId))]//注意顺序 public List ClassAList { get; set; } //注意禁止手动赋值,只能是null */ #endregion #region 枚举变量 /*例子 public enum FieldNames { [Description("枚举描述0")] Enum0, [Description("枚举描述1")] Enum1, } */ /// /// 枚举:状态(0Init初始化|10Input已投入|20OK良品过站|30NG不良过站|40Repair维修中|50Output已产出|51WaitStorage待入库|52WaitShipment待出货|60InStorage已入库|61Reject已拒收|80Shipped已出货|90Scrap已报废|91Offline异常下线) /// public enum STATUSs { [Description("初始化")] Init = 0, [Description("已投入")] Input = 1, [Description("良品过站")] OK = 2, [Description("不良过站")] NG = 3, [Description("维修中")] Repair = 4, [Description("已完工")] Finished = 5, [Description("已入库")] InStorage = 6, [Description("已拒收")] Reject = 7, [Description("已出货")] Shipped = 8, [Description("异常下线")] Offline = 9, [Description("已报废")] Scrap = 10, } /// /// 枚举:抽检状态(0Unsampled未抽检|1NoSampling不抽检|2WaitCheck待检验|3Checking检验中|4Completed检验完|5Locked已锁定) /// public enum OBA_STATUSs { [Description("未抽检")] Unsampled = 0, [Description("不抽检")] NoSampling = 1, [Description("待检验")] WaitCheck = 2, [Description("检验中")] Checking = 3, [Description("检验完")] Completed = 4, [Description("已锁定")] Locked = 5, } #endregion #region 公共方法 #endregion }//endClass }