using APT.Infrastructure.Core;
using System;
using System.Collections.Generic;
using System.ComponentModel;

namespace APT.BaseData.Domain.Entities.FM
{
    /// <summary>
    /// 枚举类主表。
    /// </summary>
    [Description("枚举管理")]
    [DataClassIndex(new string[] { "CODE", "ORG_ID" }, true)]
    public class T_FM_ENUM : MesEntityBase
    {
        /// <summary>
        /// 枚举编码。
        /// </summary>      
        [Description("枚举编码")]
        [DataFieldLength(30)]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public string CODE { get; set; }

        /// <summary>
        /// 名称。
        /// </summary>
        [Description("枚举名称")]
        [DataFieldLength(30)]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public string NAME { get; set; }

        [Description("枚举类别ID")]
        public Guid ENUM_TYPE_ID { get; set; }


        [Description("枚举值类型")]
        [EnumName("FMEnumValueType")]
        public int VALUE_TYPE { get; set; }

        /// <summary>
        /// 启用标志
        /// </summary>
        [Description("启用标志")]
        [FormFieldEdit]
        [EnumName("FMEnableStatusEnum")]
        public int ENABLE_STATUS { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [Description("备注")]
        [FormFieldEdit]
        public string REMARK { get; set; }

        [Description("导航属性:枚举类别")]
        public virtual T_FM_ENUM_TYPE Nav_EnumType { get; set; }

        [Description("导航属性:枚举项")]
        public virtual ICollection<T_FM_ENUM_ITEM> Nav_EnumItems { get; set; }
        [Description("源ID")]
        public Guid? SRC_ID { get; set; }
    }
}
