using APT.BaseData.Domain.Entities;
using APT.BaseData.Domain.Entities.FM;
using APT.BaseData.Domain.Enums;
using APT.Infrastructure.Core;
using APT.MS.Domain.Entities.HM;
using APT.MS.Domain.Entities.WB;
using APT.MS.Domain.Enums;
using System;
using System.Collections.Generic;
using System.ComponentModel;
namespace APT.MS.Domain.Entities.WB
{
    /// <summary>
    /// 导航：任务明细
    /// </summary>
    [Description("导航：任务明细")]
    public class T_WB_SAFE_CHECK_TASK_DETAIL : MesEntityBase
    {
        /// <summary>
        /// 检查任务
        /// </summary>
        [Description("检查任务")]
        [DataFieldForeignKey("Nav_Parent", "Nav_Details")]
        public Guid PARENT_ID { get; set; }
        /// <summary>
        /// 导航: 试题
        /// </summary>
        [Description("导航: 调查表")]
        public T_WB_SAFE_CHECK_TASK Nav_Parent { get; set; }
        /// <summary>
        /// 序号
        /// </summary>
        [Description("序号")]
        [FormFieldEdit]
        public int ROW_NUM { get; set; }

        /// <summary>
        /// 检查库
        /// </summary>
        [Description("检查库")]
        [DataFieldForeignKey("Nav_Main")]
        public Guid? MAIN_ID { get; set; }
        /// <summary>
        /// 检查库
        /// </summary>
        [Description("检查库")]
        public T_WB_CHECK_MAIN Nav_Main { get; set; }

        /// <summary>
        /// 导航属性：检查人员
        /// </summary>
        [Description("导航属性：检查人员")]
        [FormFieldEdit]
        public ICollection<T_WB_SAFE_CHECK_TASK_DETAIL_USER> Nav_Users { get; set; }

        /// <summary>
        /// 记录人员
        /// </summary>
        [Description("记录人员")]
        [FormFieldTable]
        [DataFieldForeignKey("Nav_User")]
        public Guid? USER_ID { get; set; }
        /// <summary>
        /// 导航: 记录人员
        /// </summary>
        [Description("导航: 记录人员")]
        public T_FM_USER Nav_User { get; set; }
        /// <summary>
        /// 生产单元
        /// </summary>
        [Description("生产单元")]
        [FormFieldTable]
        [FormFieldEdit]
        [EnumName("FMProductionUnit")]
        public FMProductionUnit? MineType { get; set; }

        /// <summary>
        /// 检查区域
        /// </summary>
        [Description("检查区域")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        [DataFieldForeignKey("Nav_Area")]
        public Guid AREA_ID { get; set; }

        /// <summary>
        ///  检查区域
        /// </summary>
        [Description("检查区域")]
        public T_WB_CHECK_AREA_ENUM Nav_Area { get; set; }

        /// <summary>
        /// 检查内容
        /// </summary>
        [Description("检查内容")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        [DataFieldLength(500)]
        public string CHECK_CONTENT { get; set; }
        /// <summary>
        /// 检查依据
        /// </summary>
        [Description("检查依据")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        [DataFieldLength(500)]
        public string CHECK_BASIS { get; set; }
    }
}
