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

namespace APT.MS.Domain.Entities.BI
{
    /// <summary>
    /// 风险统计2
    /// </summary>
    [Description("风险统计2")]
    public class T_BI_RISK_LEVEL2 : MesEntityBase
    {
        [Description("生产单元")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public int MineType { get; set; }
        [Description("风险类别")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public EvaluateLevelEnum RiskType { get; set; }
        [Description("部门名称")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        [DataFieldLength(50)]
        public string DepName { get; set; }
        [Description("统计数量")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public int RiskCount { get; set; }
        /// <summary>
        /// 部门
        /// </summary>
        [Description("部门")]
        [DataFieldForeignKey("Nav_Department")]
        [FormFieldTable]
        [FormFieldEdit]
        public Guid? DEPARTMENT_ID { get; set; }
        /// <summary>
        /// 导航属性：所属部门
        /// </summary>
        [Description("导航属性：所属部门")]
        public T_FM_DEPARTMENT Nav_Department { get; set; }
        /// <summary>
        /// 上级部门
        /// </summary>
        [Description("上级部门")]
        [DataFieldForeignKey("Nav_ParentDepartment")]
        [FormFieldTable]
        [FormFieldEdit]
        public Guid? PARENT_DEPARTMENT_ID { get; set; }
        /// <summary>
        /// 导航属性：所属部门
        /// </summary>
        [Description("导航属性：所属部门")]
        public T_FM_DEPARTMENT Nav_ParentDepartment { get; set; }
        [Description("部门层级")]
        [EnumName("FMDepartmentType")]
        public FMDepartmentType DEPARTMENT_TYPE { get; set; }
    }
}
