using APT.BaseData.Domain.Entities.FM;
using APT.Infrastructure.Core;
using APT.MS.Domain.Enums;
using System;
using System.Collections.Generic;
using System.ComponentModel;
namespace APT.MS.Domain.Entities.HM
{
    /// 
    /// 任务分析表
    /// 
    [Description("任务分析表")]
    public class T_HM_TASK_ANALYZE : MesEntityBase
    {
        /// 
        /// 任务分析类型(关键任务、许可作业、一般任务)
        /// 
        [Description("任务分析类型")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        [EnumName("HMTaskAnalyzeTypeEnum")]
        public HMTaskAnalyzeTypeEnum TASK_ANALYZE_TYPE { get; set; }
        /// 
        /// 编码
        /// 
        [Description("编码")]
        [DataFieldLength(50)]
        public string CODE { get; set; }
        /// 
        /// 名称
        /// 
        [Description("名称")]
        [DataFieldLength(50)]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public string NAME { get; set; }
        /// 
        /// 发起部门
        /// 
        [Description("发起部门")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        [DataFieldForeignKey("Nav_Department")]
        public Guid? DEPARTMENT_ID { get; set; }
        /// 
        /// 导航:识别部门
        /// 
        [Description("导航:发起部门")]
        public virtual T_FM_DEPARTMENT Nav_Department { get; set; }
        /// 
        /// 完成时间
        /// 
        [Description("完成时间")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public DateTime? COMPLETION_TIME { get; set; }
        /// 
        /// 作业任务识别分析
        /// 
        [Description("作业任务识别分析")]
        [FormFieldEdit]
        [DataFieldForeignKey("Nav_DistinguishAnalyze")]
        public Guid OPERATION_TASK_DISTINGUISH_ANALYZE_ID { get; set; }
        /// 
        /// 导航:作业任务识别分析
        /// 
        [Description("导航:作业任务识别分析")]
        public virtual T_HM_OPERATION_TASK_DISTINGUISH_ANALYZE Nav_DistinguishAnalyze { get; set; }
        /// 
        /// 导航:识别分析详情
        /// 
        [Description("导航:分析详情")]
        [FormFieldEdit]
        public virtual ICollection Nav_AnalyzeDetails { get; set; }
        /// 
        /// 导航:识别分析人员
        /// 
        [Description("导航:识别分析人员")]
        [FormFieldEdit]
        public virtual ICollection Nav_Users { get; set; }
        /// 
        /// 状态(待审核、已审核)
        /// 
        [Description("状态")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        [EnumName("FOPreMeetingStatusEnum")]
        public FOPreMeetingStatusEnum STATUS { get; set; }
    }
}