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.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_CHECK_MAIN : MesEntityBase
    {
        /// <summary>
        /// 生产单元
        /// </summary>
        [Description("生产单元")]
        [FormFieldTable]
        [FormFieldEdit]
        [EnumName("FMProductionUnit")]
        public FMProductionUnit MineType { get; set; }

        /// <summary>
        /// 生产单元设置
        /// </summary>
        [Description("生产单元设置")]
        [DataFieldIngore]
        public string MineTypeSet { get; set; }


        /// <summary>
        /// 检查类型
        /// </summary>
        [Description("检查类型")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        [DataFieldForeignKey("Nav_CheckType")]
        public Guid CHECK_TYPE_ID { get; set; }

        /// <summary>
        /// 检查类型
        /// </summary>
        [Description("检查类型")]
        public T_WB_CHECK_TYPE Nav_CheckType { get; set; }

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

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

        /// <summary>
        /// 检查内容
        /// </summary>
        [Description("检查内容")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        [DataFieldLength(300)]
        public string CHECKCONTENT { get; set; }

        /// <summary>
        /// 检查依据
        /// </summary>
        [Description("检查依据")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        [DataFieldLength(300)]
        public string CHECKPROOF { get; set; }

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