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

namespace AMESCoreStudio.WebApi.Models.SYS
{
    /// <summary>
    /// 用户角色資料表
    /// </summary>
    [Table("USER_ROLE", Schema = "JHSYS")]

    public class UserRole
    {
        /// <summary>
        /// 角色模組編號
        /// </summary>
        [Key]
        [Column("USER_ROLEID")]
        [DataMember]
        public int UserRoleID { get; set; }

        /// <summary>
        /// 用户編號
        /// </summary>
        [Column("USER_ID")]
        [DataMember]
        [Required]
        [Display(Name = "用户編號")]
        public int UserID { get; set; }

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

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

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

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

        /// <summary>
        /// 角色资料
        /// </summary>
        //[ForeignKey("MODULE_ID")]
        public virtual RoleInfo Role { get; set; }

    }
}