using APT.Infrastructure.Core;
using APT.Infrastructure.Utility;
using System;
using System.ComponentModel;

namespace APT.BaseData.Domain.Entities.FM
{
    [Description("枚举项")]
    [Redis("ID")]
    public class T_FM_ENUM_ITEM : MesEntityBase
    {
        /// <summary>
        /// 名称。
        /// </summary>
        [Description("项目名称")]
        [DataFieldLength(30)]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public string NAME { get; set; }

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

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

        [Description("枚举顺序")]
        public int NUM { get; set; }

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

        [Description("偏移量")]
        public decimal OFFSET { get; set; }

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

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

        /// <summary>
        /// 配置小数点位数
        /// </summary>
        [Description("小数点位数")]
        public int POINTNUM { get; set; }

        [Description("导航属性：枚举")]
        public T_FM_ENUM Nav_Enum { get; set; }

        [Description("源ID")]
        public Guid? SRC_ID { get; set; }

        /// <summary>
        /// 以此枚举为标准
        /// </summary>
        [Description("标准")]
        [FormFieldEdit]
        [EnumName("RunStatus")]
        public int STANDARD_STATUS { get; set; }
    }
}
