using APT.BaseData.Domain.ApiModel.PF;
using APT.Infrastructure.Core;
using APT.Infrastructure.Utility;
using System;
using System.Collections.Generic;
using System.ComponentModel;
namespace APT.BaseData.Domain.Entities.FM
{
    [Description("角色表")]
    /// 
    /// 角色
    /// 
    [Redis("")]
    [IgnoreT4] public partial class T_FM_ROLE : MesEntityBase
	{
		public T_FM_ROLE()
		{
			this.ROLE_TYPE = 0;
		}
		[Description("编码")]
        /// 
        /// 编码
        /// 
		public string CODE { get; set; }
        [Description("名称")]
        /// 
        /// 角色名称
        /// 
        [AcronymField("NAME_ACRONYM")]
        public string NAME { get; set; }
        /// 
        /// 名称首字母缩写
        /// 
        [Description("名称首字母缩写")]
        public string NAME_ACRONYM { get; set; }
        /// 
        /// 平台类型 PFPlatTypeEnum
        /// 
        [EnumName("PFPlatTypeEnum")]
        [Description("平台类型")]
        public int PLATFORM_TYPE { get; set; }
		/// 
		/// 角色类型
		/// 
		[EnumName("FMRoleTypeEnum")]
		[Description("角色类型")]
		public int? ROLE_TYPE { get; set; }
		/// 
		/// FMEnableStatusEnum
		/// 
		[Description("启用标志")]
		[EnumName("FMEnableStatusEnum")]
		public int ENABLE_STATUS { get; set; }
		[Description("备注")]
		public string REMARK { get; set; }
        [Description("授权数据")]
        [DataFieldIngore]
        public List CheckKeys { get; set; }
        //[Description("自由变更返工工序")]
        //public bool CAN_CHANGE_REWORK { get; set; }
        [Description("是否开启短信验证")]
        [FormFieldTable]
        [FormFieldEdit]
        public bool IS_CHECK_MESSAGE { get; set; }
        [Description("导航:菜单列表")]
        /// 菜单授权列表
        public virtual ICollection Nav_MenuPermissions { get; set; }
        [Description("导航:区域列表")]
        /// 
        /// 区域信息列表
        /// 
        public virtual ICollection Nav_Panels { get; set; }
        [Description("导航:关联表")]
        /// 
        /// 关联表
        /// 
        public virtual ICollection Nav_UserBelongRoles { get; set; }
        [Description("授权部门")]
        [DataFieldIngore]
        public List DepartmentCheckedKeys { get; set; }
    }
}