using APT.Infrastructure.Core;
using APT.MS.Domain.Entities.HM;
using System;
using System.Collections.Generic;
using System.ComponentModel;

namespace APT.MS.Domain.Entities.BS
{
    /// <summary>
    /// 检查内容表
    /// </summary>
    [Description("检查内容表")]
    public class T_BS_CHECK_CONTENT : MesEntityBase
    {
        /// <summary>
        /// 检查依据
        /// </summary>
        [Description("检查依据")]
        [FormFieldTable]
        [FormFieldEdit]
        [DataFieldLength(500)]
        public string PROOF { get; set; }

        /// <summary>
        /// 排序号
        /// </summary>
        [Description("排序号")]
        [FormFieldEdit]
        public int NUM { get; set; }

        /// <summary>
        /// 检查项目ID
        /// </summary>
        [Description("检查项目ID")]
        [DataFieldForeignKey("Nav_CheckProject")]
        [FormFieldEdit]
        public Guid? CHECK_PROJECT_ID { get; set; }

        /// <summary>
        /// 检查项目
        /// </summary>
        [Description("导航：检查项目")]
        public virtual T_BS_CHECK_PROJECT Nav_CheckProject { get; set; }

        /// <summary>
        /// 问题等级  重大 = 10,A = 20,B = 30,C = 40,D = 50,
        /// </summary>
        [Description("问题等级")]
        [EnumName("BSQuestionLevelEnum")]
        [FormFieldEdit]
        public int QUESTION_LEVEL { get; set; }

        /// <summary>
        /// 是否重大隐患 否 = 0,是 = 1,
        /// </summary>
        [Description("是否重大隐患")]
        [EnumName("BSSeriousRiskEnum")]
        [FormFieldEdit]
        public int SERIOUS_RISK { get; set; }

        /// <summary>
        /// 检查问题(描述)
        /// </summary>
        [Description("导航：检查问题(描述)")]
        [FormFieldEdit]
        public virtual ICollection<T_BS_CHECK_CONTENT_QUESTION> Nav_ListContentQuestions { get; set; }


        /// <summary>
        /// 辨识区域（ 项目区域 ）  T_BS_CHECK_CONTENT_AREA
        /// </summary>
        [Description("导航：检查区域")]
        [FormFieldEdit]
        public virtual ICollection<T_BS_CHECK_CONTENT_HM_RISK_AREA> Nav_ListContentAreas { get; set; }

        /// <summary>
        /// 检查类型
        /// </summary>
        [Description("导航：检查类型")]
        [FormFieldEdit]
        public virtual ICollection<T_BS_CHECK_CONTENT_CHECK_TYPE> Nav_ListContentCheckTypes { get; set; }

    }
}
