using APT.BaseData.Domain.Entities;
using APT.BaseData.Domain.Entities.FM;
using APT.BaseData.Domain.Enums;
using APT.BaseData.Domain.Enums.PF;
using APT.Infrastructure.Core;
using APT.MS.Domain.Entities.HM;
using APT.MS.Domain.Enums;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace APT.MS.Domain.Entities.CM
{
    /// <summary>
    /// 导航属性：预案类型
    /// </summary>
    [Description("预案类型")]
    public class T_CM_URGENT_EVENT_CONTINGENCY_PLAN : MesEntityBase
    {
        /// <summary>
        /// 潜在紧急事件ID
        /// </summary>
        [Description("潜在紧急事件")]
        [DataFieldForeignKey("Nav_UrgentEvent", "Nav_ListEventContingencyPlan")]
        public Guid URGENT_EVENT_ID { get; set; }

        /// <summary>
        /// 导航属性：潜在紧急事件
        /// </summary>
        [Description("潜在紧急事件")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public T_CM_URGENT_EVENT Nav_UrgentEvent { get; set; }

        /// <summary>
        /// 预案类型ID
        /// </summary>
        [Description("预案类型")]
        [DataFieldForeignKey("Nav_ContingencyType")]
        public Guid CONTINGENCY_TYPE_ID { get; set; }

        /// <summary>
        /// 导航属性：预案类型
        /// </summary>
        [Description("预案类型")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public virtual T_CM_CONTINGENCY_TYPE Nav_ContingencyType { get; set; }

        /// <summary>
        /// 是否编制 否 = 20,是 = 10,
        /// </summary>
        [Description("是否编制")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public YesNoEnum IS_DRAW_UP { get; set; }

        /// <summary>
        /// 部门ID
        /// </summary>
        [Description("部门")]
        [DataFieldForeignKey("Nav_Department")]
        public Guid DEPARTMENT_ID { get; set; }

        /// <summary>
        /// 导航属性：部门
        /// </summary>
        [Description("部门")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public T_FM_DEPARTMENT Nav_Department { get; set; }

        /// <summary>
        /// 责任人
        /// </summary>
        [Description("责任人")]
        [DataFieldForeignKey("Nav_User")]
        public Guid USER_ID { get; set; }

        /// <summary>
        /// 导航属性：责任人
        /// </summary>
        [Description("责任人")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public T_FM_USER Nav_User { get; set; }

        /// <summary>
        /// 要求完成时间
        /// </summary>
        [Description("要求完成时间")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public DateTime COMPLETE_TIME { get; set; }

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