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.TI
{
    /// <summary>
    /// 项目验收
    /// </summary>
    [Description("项目结题验收")]
    [DataRuleField("DEPARTMENT_ID")]
    public partial class T_TI_PROJECT_CHECK : MesEntityBase
    {

        /// 发起时间
        /// </summary>
        [Description("发起时间")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public DateTime? BEGINTIME { get; set; }

        /// <summary>
        /// 发起部门ID
        /// </summary>
        [Description("发起部门")]
        [FormFieldTable]
        [FormFieldEdit]
        [DataFieldForeignKey("Nav_Department")]
        public Guid? DEPARTMENT_ID { get; set; }

        /// <summary>
        /// 导航：发起部门
        /// </summary>
        [Description("发起部门")]
        [FormFieldQuery]
        public virtual T_FM_DEPARTMENT Nav_Department { get; set; }

        /// <summary>
        /// 发起人ID
        /// </summary>
        [Description("发起人")]
        [FormFieldTable]
        [FormFieldEdit]
        [DataFieldForeignKey("Nav_User")]
        public Guid? USER_ID { get; set; }

        /// <summary>
        /// 导航：发起人
        /// </summary>
        [Description("发起人员")]
        [FormFieldQuery]
        public virtual T_FM_USER Nav_User { get; set; }

        /// <summary>
        /// 计划ID
        /// </summary>
        [Description("项目")]
        [FormFieldTable]
        [FormFieldEdit]
        [DataFieldForeignKey("Nav_Project")]
        public Guid PROJECT_ID { get; set; }

        /// <summary>
        /// 导航：计划
        /// </summary>
        [Description("导航：项目")]
        [FormFieldQuery]
        public virtual T_TI_PROJECT Nav_Project { get; set; }

        /// <summary>
        /// 实际使用经费（万元）
        /// </summary>
        [Description("实际使用经费")]
        [FormFieldTable]
        [FormFieldEdit]
        [FormFieldQuery]
        public decimal? MONEY { get; set; }

        /// <summary>
        /// 导航：项目成果附件
        /// </summary>
        [Description("导航：项目成果附件")]
        public virtual ICollection<T_TI_PROJECT_CHECK_FILE> Nav_Files { get; set; }

        /// <summary>
        /// 验收结果
        /// </summary>
        [Description("验收结果")]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public TIProjectResult? RESULT { get; set; }

        /// <summary>
        /// 导航：审批附件
        /// </summary>
        [Description("导航：审批附件")]
        public virtual ICollection<T_TI_PROJECT_CHECK_WFFILE> Nav_WFFiles { get; set; }

        /// <summary>
        /// 状态
        /// </summary>
        [Description("状态")]
        [FormFieldTable]
        [FormFieldQuery]
        public PFStandardStatus STATUS { get; set; }
    }
}
