using APT.BaseData.Domain.Entities.FM;
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_OVERHAUL : MesEntityBase
    {
        /// 
        /// 编码
        /// 
        [Description("编码")]
        public string CODE { get; set; }
        /// 
        /// 检修时间
        /// 
        [Description("检修时间")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public DateTime OVERHAUL_TIME { get; set; }
        /// 
        /// 外部援助单位
        /// 
        [Description("外部援助单位")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public string EXTERNAL_SUPPORT { get; set; }
        /// 
        /// 是否申请外部援助
        ///  
        [Description("是否申请外部援助")]
        public bool IS_HELP { get; set; }
        /// 
        /// 检修人员
        /// 
        [Description("检修人员")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        [DataFieldForeignKey("Nav_User")]
        public Guid? USER_ID { get; set; }
        /// 
        /// 检修人员
        /// 
        [Description("检修人员")]
        public T_FM_USER Nav_User { get; set; }
        /// 
        /// 设备设施名称
        /// 
        [Description("设备设施名称")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        [DataFieldForeignKey("Nav_Device")]
        public Guid? DEVICE_BASE_ID { get; set; }
        /// 
        /// 导航_设备设施名称
        /// 
        [Description("导航_设备设施名称")]
        public T_DM_DEVICE_BASE Nav_Device { get; set; }
        /// 
        /// 设备名称
        /// 
        [Description("设备名称")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public string MACHINE_NAME { get; set; }
        /// 
        /// 规格
        /// 
        [Description("规格")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public string SPEC { get; set; }
        /// 
        /// 设备编号
        /// 
        [Description("设备编号")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public string MACHINE_CODE { get; set; }
        /// 
        /// 设备位置
        /// 
        [Description("设备位置")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public string POSITION { get; set; }
        /// 
        /// 故障描述
        /// 
        [Description("故障描述")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public string MALFUCTION { get; set; }
        /// 
        /// 检修意见
        /// 
        [Description("检修意见")]
        [EnumName("DMRepairOpinionEnum")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public DMRepairOpinionEnum OPINION { get; set; }
        /// 
        /// 检修情况描述
        /// 
        [Description("检修情况描述")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public string DESCRIPTION { get; set; }
        
        /// 
        ///故障报修
        /// 
        [Description("故障报修")]
        [DataFieldForeignKey("Nav_Repair")]
        public Guid? REPAIR_ID { get; set; }
        /// 
        ///导航_故障报修
        /// 
        [Description("导航_故障报修")]
        public T_DM_DEVICE_REPAIR Nav_Repair { get; set; }
        /// 
        /// 附件列表
        /// 
        [Description("附件列表")]
        public List Nav_Files { get; set; }
        /// 
        /// 验收意见
        /// 
        [Description("验收意见")]
        [FormFieldEdit]
        public CheckOptionEnum CHECK_OPINION { get; set; }
        /// 
        /// 状态:故障记录,检修中,完成
        ///  
        [Description("状态")]
        [FormFieldTable]
        [FormFieldQuery]
        [EnumName("PFStandardStatus")]
        public PFStandardStatus STATUS { get; set; }
        [Description("是否发布")]
        [DataFieldIngore]
        public string PUBLISH { get; set; }
    }
}