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

namespace AMESCoreStudio.WebApi.Models.AMES
{
    /// <summary>
    /// 工單警報資料檔
    /// </summary>
    [Table("WIP_ALARM", Schema = "JHAMES")]
    [DataContract]
    public class WipAlarm
    {
        /// <summary>
        /// 工單警報ID
        /// </summary>
        [Key]
        [Column("WIP_ALARMID")]
        [DataMember]
        public int WipAlarmID { get; set; }

        /// <summary>
        /// 警報類別ID
        /// </summary>
        [Column("ALARM_TYPEID")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "警報類別ID")]
        public int AlarmTypeID { get; set; } = 0;

        /// <summary>
        /// 工單號碼
        /// </summary>
        [Column("WIP_NO")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "工單號碼")]
        public string WipNO { get; set; }

        /// <summary>
        /// 警報參數
        /// </summary>
        [Column("ALARM_PARAM")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "警報參數")]
        public string AlarmParam { get; set; }

        /// <summary>
        /// 警報值
        /// </summary>
        [Column("ALARM_VALUE")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "警報值")]
        public string AlarmValue { get; set; }

        /// <summary>
        /// 警報描述
        /// </summary>
        [Column("ALARM_DESC")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "警報描述")]
        public string AlarmDesc { get; set; }

        /// <summary>
        /// 警報時間
        /// </summary>
        [Column("ALARM_DATETIME")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "警報時間")]
        public DateTime AlarmDateTime { get; set; } = DateTime.Now;

    }
}