using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Runtime.Serialization;

namespace AMESCoreStudio.WebApi.Models.AMES
{
    /// <summary>
    /// 工單投產纪錄資料文件
    /// </summary>
    [Table("WIP_LOG", Schema = "JHAMES")]
    [DataContract]
    public class WipLog
    {
        /// <summary>
        /// 工單ID
        /// </summary>
        [Key]
        [Column("WIP_ID", Order = 0)]
        [DataMember]
        public int WipID { get; set; }

        /// <summary>
        /// 工單狀態(A= ACTIVE, H = HOLD, N = NEW, S = STOP, E = FINAL END,R = REFLOW END)
        /// </summary>
        [Column("STATUS_NO")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "工單狀態")]
        public string StatusNO { get; set; }

        /// <summary>
        /// 工單敘述
        /// </summary>
        [Column("WIP_DESC")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "工單敘述")]
        public string WipDesc { get; set; }

        /// <summary>
        /// 次數
        /// </summary>
        [Column("TIMES")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "次數")]
        public int Times { get; set; } = 0;

        /// <summary>
        /// 建立者
        /// </summary>
        [Column("CREATE_USERID")]
        [DataMember]
        [Display(Name = "建立者")]
        public int CreateUserID { get; set; } = 0;

        /// <summary>
        /// 建立日期
        /// </summary>
        [Key]
        [Column("CREATE_DATE", Order = 1)]
        [DataMember]
        [Display(Name = "建立日期")]
        public DateTime CreateDate { get; set; } = DateTime.Now;

        /// <summary>
        /// 修改日期
        /// </summary>
        [Column("UPDATE_DATE")]
        [DataMember]
        [Display(Name = "修改日期")]
        public DateTime UpdateDate { get; set; } = DateTime.Now;

    }
}