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

namespace APT.MS.Domain.Entities.BS
{
    /// <summary>
    /// 检查登记 手动添加检查记录
    /// </summary>
    public class ModelSafeCheckRecordAdd : MesEntityBase
    {
        /// <summary>
        /// 安全检查ID
        /// </summary>
        public Guid SAFE_CHECK_ID { get; set; }
        /// <summary>
        /// 部门ID
        /// </summary>
        public Guid DEPARTMENT_ID { get; set; }

        /// <summary>
        /// 检查对象
        /// </summary>
        [Description("检查对象")]
        public BSMineTypeEnum CHECKOBJECT { get; set; }

        /// <summary>
        /// 检查区域
        /// </summary>
        [Description("检查区域")]
        [DataFieldForeignKey("Nav_CheckArea")]
        public Guid RISK_AREA_ID { get; set; }

        /// <summary>
        /// 检查类型
        /// </summary>
        [Description("检查类型")]
        public Guid CHECK_TYPE_ID { get; set; }

        /// <summary>
        /// 检查层级
        /// </summary>
        [Description("检查层级")]
        public Guid CHECK_TYPE_LEVEL_ID { get; set; }

        /// <summary>
        /// 检查区域
        /// </summary>
        [Description("导航：检查区域")]
        public virtual T_HM_RISK_AREA Nav_CheckArea { get; set; }

        /// <summary>
        /// 原有表单明细数量
        /// </summary>
        public int ROW_NO { get; set; }

        /// <summary>
        /// 检查内容
        /// </summary>
        [Description("检查内容")]
        [DataFieldLength(500)]
        public string CHECKCONTENT { get; set; }

        public virtual ICollection<T_BS_SAFE_CHECK_DETAIL_USER> Nav_ListUserCheck { get; set; }

        /// <summary>
        /// 检查记录
        /// </summary>
        [Description("检查记录")]
        [FormFieldEdit]
        public virtual ICollection<ModelSafeCheckRecordDetail> Nav_ListCheckDetail { get; set; }
    }
}