using APT.Infrastructure.Core;
using APT.MS.Domain.Enums;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace APT.MS.Domain.Entities.HM
{
    /// <summary>
    /// 作业环节
    /// </summary>
    [Description("作业环节")]
    public class T_HM_OPERATION_STEP : MesEntityBase
    {
        /// <summary>
        /// 编码
        /// </summary>
        [Description("编码")]
        [DataFieldLength(50)]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public string CODE { get; set; }

        /// <summary>
        /// 名称
        /// </summary>
        [Description("名称")]
        [DataFieldLength(50)]
        [FormFieldTable]
        [FormFieldQuery]
        [FormFieldEdit]
        public string NAME { get; set; }

        /// <summary>
        /// 状态 作废 = 0,有效 = 1,
        /// </summary>
        [Description("状态")]
        [EnumName("STATUSEnum")]
        public STATUSEnum STATUS { get; set; }

        /// <summary>
        /// 导航属性：作业前安全确认
        /// </summary>
        [Description("导航属性：作业前安全确认")]
        public List<T_HM_OPERATION_STEP_SAFE_CONFIRM> Nav_SafeConfirms { get; set; }

        /// <summary>
        /// 导航属性：作业流程及安全措施
        /// </summary>
        [Description("导航属性：作业流程及安全措施")]
        public List<T_HM_OPERATION_STEP_SAFE_MEASURE> Nav_SafeMeasures { get; set; }

        /// <summary>
        /// 导航属性：作业后处理措施
        /// </summary>
        [Description("导航属性：作业后处理措施")]
        public List<T_HM_OPERATION_STEP_DEAL_MEASURE> Nav_DealMeasures { get; set; }

        [Description("是否特殊作业")]
        public bool IS_SPECIAL { get; set; }

        [Description("八大作业")]
        [EnumName("StepTypeEnum")]
        public StepTypeEnum? STEP_TYPE { get; set; }
    }
}
