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.Enums;
using System;
using System.Collections.Generic;
using System.ComponentModel;
namespace APT.MS.Domain.Entities.DM
{
    /// 
    /// 设备检查单
    /// 
    [Description("设备检查")]
    public class T_DM_DEVICE_CHECK : MesEntityBase
    {
        /// 
        /// T_DM_DEVICE_BASE_CHECK ID
        /// 
        [Description("设备设施维保计划")]
        public Guid? PLANID { get; set; }
        /// 
        /// 编码
        /// 
        [Description("编码")]
        [CodeRule((int)PFCodeRuleType.机电管理)]
        [CUnique]
        [FormFieldTable]
        [FormFieldEdit]
        [DataFieldLength(50)]
        public string CODE { get; set; }
        /// 
        /// 名称
        /// 
        [Description("名称")]
        [DataFieldLength(300)]
        public string NAME { get; set; }
        /// 
        /// 检查类型
        /// 
        [Description("检查类型")]
        [FormFieldTable]
        [FormFieldQuery]
        public CheckType CHECKTYPE { get; set; }
        /// 
        /// 点检时间
        /// 
        [Description("点检时间")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public DateTime? RECORD_DATE { get; set; }
        /// 
        /// 开始时间
        /// 
        [Description("开始时间")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public DateTime? START_TIME { get; set; }
        /// 
        /// 结束时间
        /// 
        [Description("结束时间")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public DateTime? END_TIME { get; set; }
        /// 
        /// 点检人员
        /// 
        [Description("点检人员")]
        public virtual ICollection Nav_ListUser { get; set; }
        /// 
        /// 班组
        /// 
        [Description("班组")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        [DataFieldLength(200)]
        public string TEAM_NAME { get; set; }
        /// 
        /// 班组
        /// 
        [Description("班组")]
        public Guid? TEAM_ID { get; set; }
        /// 
        /// 班次
        /// 
        [Description("班次")]
        [DataFieldForeignKey("Nav_Scheduling")]
        public Guid? SCHEDULIN_ID { get; set; }
        /// 
        /// 班次
        /// 
        [Description("班次")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public virtual T_FM_DEPARTMENT_SCHEDULING Nav_Scheduling { get; set; }
        /// 
        /// 设备设施库
        /// 
        [Description("设备设施库")]
        [DataFieldForeignKey("Nav_DeviceBase")]
        public Guid? DEVICEBASE_ID { get; set; }
        /// 
        /// 设备设施库
        /// 
        [Description("设备设施库")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public virtual T_DM_DEVICE_BASE Nav_DeviceBase { get; set; }
        /// 
        /// 设备名称
        /// 
        [Description("设备名称")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        [DataFieldLength(200)]
        public string MACHINE_NAME { get; set; }
        /// 
        /// 规格
        /// 
        [Description("规格")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        [DataFieldLength(100)]
        public string SPEC { get; set; }
        /// 
        /// 设备编号
        /// 
        [Description("设备编号")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        [DataFieldLength(100)]
        public string MACHINE_CODE { get; set; }
        /// 
        /// 设备位置
        /// 
        [Description("设备位置")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        [DataFieldLength(200)]
        public string POSITION_NAME { get; set; }
        /// 
        /// 记录明细列表
        /// 
        [Description("记录明细列表")]
        public virtual ICollection Nav_ListDetail { get; set; }
        /// 
        /// 附件
        /// 
        [Description("附件")]
        public virtual ICollection Nav_Files { get; set; }
        /// 
        /// 状态
        /// 
        [Description("状态")]
        [FormFieldTable]
        [FormFieldQuery]
        public PFStandardStatus STATUS { get; set; }
    }
}