using APT.BaseData.Domain.Entities.FM;
using APT.BaseData.Domain.Enums;
using APT.Infrastructure.Core;
using APT.MS.Domain.Entities.BS;
using APT.MS.Domain.Enums;
using APT.MS.Domain.Enums.SK;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;

namespace APT.MS.Domain.Entities.SK
{
    [Description("检查部门")]
    public class T_SK_ENTERPRISE_LIBRARY_TEMP_CONTENT_DEPART : MesEntityBase
    {
        /// 基础库
        /// </summary>
        [Description("基础库")]
        [DataFieldForeignKey("Nav_Content", "Nav_Departs")]
        public Guid ENTERPRISE_LIBRARY_TEMP_CONTENT_ID { get; set; }

        /// <summary>
        /// 导航属性：基础库
        /// </summary>
        [Description("导航属性：基础库")]
        public T_SK_ENTERPRISE_LIBRARY_TEMP_CONTENT Nav_Content { get; set; }

        [Description("检查层级")]
        [EnumName("SKDepartmentTypeEnum")]
        public SKDepartmentTypeEnum CHECK_TYPE { get; set; }

        [Description("检查部门")]
        [DataFieldForeignKey("Nav_Department")]
        public Guid? DEPARTMENT_ID { get; set; }

        [Description("导航属性：检查部门")]
        public T_FM_DEPARTMENT Nav_Department { get; set; }

        [Description("检查岗位")]
        [FormFieldEdit]
        public ICollection<T_SK_ENTERPRISE_LIBRARY_TEMP_CONTENT_POST> Nav_Posts { get; set; }

        [Description("检查类型")]
        [DataFieldForeignKey("Nav_CheckType")]
        public Guid? CHECK_TYPE_ID { get; set; }

        /// <summary>
        /// 导航：检查类型表
        /// </summary>
        [Description("导航：检查类型")]
        public virtual T_BS_CHECK_TYPE Nav_CheckType { get; set; }

        [Description("检查周期")]
        [EnumName("SKPLANCHECKFREQUENCYEnum")]
        public SKPLANCHECKFREQUENCYEnum CHECK_CYCLE { get; set; }

        [Description("内容编号")]
        public string CONTENT_CODE { get; set; }

        [Description("措施编号")]
        public string MEASURE_CODE { get; set; }

        [Description("顺序")]
        public int? NUM { get; set; }
    }
}
