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

namespace AMESCoreStudio.WebApi.Models.SYS
{
    /// <summary>
    /// 角色功能资料表
    /// </summary>
    [Table("ROLE_PROGRAM", Schema = "JHSYS")]

    public class RoleProgram
    {
        /// <summary>
        /// 角色功能編號
        /// </summary>
        [Key]
        [Column("ROLE_PROGRAMID")]
        [DataMember]
        public int RoleProgramID { get; set; }

        /// <summary>
        /// 角色編號
        /// </summary>
        [Column("ROLE_ID")]
        [DataMember]
        [Required]
        [Display(Name = "角色編號")]
        public int RoleID { get; set; }

        /// <summary>
        /// 功能編號
        /// </summary>
        [Column("PROGRAM_ID")]
        [DataMember]
        [Required]
        [Display(Name = "功能編號")]
        public int ProgramID { get; set; }

        /// <summary>
        /// 启用標記
        /// </summary>
        [Column("ENABLE_FLAG")]
        [DataMember]
        [Display(Name = "启用標記")]
        [Required(ErrorMessage = "{0},不能空白")]
        [StringLength(1, ErrorMessage = "{0},不能大于{1}")]
        public string EnableFlag { get; set; }

        /// <summary>
        /// 启用人員
        /// </summary>
        [Column("ENABLE_USERID")]
        [DataMember]
        public int EnableUserId { get; set; }

        /// <summary>
        /// 启用時間
        /// </summary>
        [Column("ENABLE_DATETIME")]
        [DataMember]
        public DateTime EnableDateTime { get; set; }

        /// <summary>
        /// 停用人員
        /// </summary>
        [Column("DISABLE_USERID")]
        [DataMember]
        public int DisableUserId { get; set; }

        /// <summary>
        /// 停用時間
        /// </summary>
        [Column("DISABLE_DATETIME")]
        [DataMember]
        public DateTime DisableDateTime { get; set; }

        /// <summary>
        /// 功能资料
        /// </summary>
        //[ForeignKey("MODULE_ID")]
        public virtual ProgramInfo Program { get; set; }

    }
}