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

namespace AMESCoreStudio.WebApi.Models.AMES
{
    /// <summary>
    /// 組件類別资料表
    /// </summary>
    [Table("ITEMS", Schema = "JHAMES")]
    [DataContract]
    public class Items
    {
        /// <summary>
        /// 組件代碼
        /// </summary>
        [Key]
        [Column("ITEM_NO")]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "組件代碼")]
        [StringLength(25, ErrorMessage = "{0},不能大于{1}")]
        [DataMember]
        public string ItemNo { get; set; }


        /// <summary>
        /// 組件名稱
        /// </summary>
        [Column("ITEM_NAME")]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "組件名稱")]
        [StringLength(50, ErrorMessage = "{0},不能大于{1}")]
        [DataMember]
        public string ItemName { get; set; }


        /// <summary>
        /// 組件類別
        /// </summary>
        [Column("ITEM_TYPE")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "組件類別")]
        [StringLength(2, ErrorMessage = "{0},不能大于{1}")]
        public string ItemType { get; set; }

        /// <summary>
        /// 組件區間管控
        /// </summary>
        [Column("SN_INTERVAL")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "組件區間管控")]
        [StringLength(1, ErrorMessage = "{0},不能大于{1}")]
        public string SNInterval { get; set; }

        /// <summary>
        /// 組件總類
        /// </summary>
        [Column("ITEM")]
        [DataMember]
        [Required(ErrorMessage = "{0},不能空白")]
        [Display(Name = "組件總類")]
        [StringLength(50, ErrorMessage = "{0},不能大于{1}")]
        public string Item { get; set; }


        /// <summary>
        /// 狀態(A=ACTIVE ; S=停用)
        /// </summary>
        [Column("STATUS_NO")]
        [DataMember]
        [Display(Name = "狀態")]
        public string StatusNo { get; set; } = "A";
    }
}