using APT.Infrastructure.Core;
using APT.Infrastructure.Utility;
using System;
using System.Collections.Generic;
using System.ComponentModel;

namespace APT.BaseData.Domain.Entities
{
    /// <summary>表单</summary>
	[Redis("ID","ID", "CODE")]
    [APT.Infrastructure.Api.RootOrg]
    [IgnoreT4]
    public partial class T_PF_FORM : MesEntityBase
    {
        /// <summary>构造函数</summary>
        public T_PF_FORM()
        {

        }
        /// <summary>编码</summary>
        [Description("编码")]
        public string CODE { get; set; }

        /// <summary>名称</summary>
        [Description("名称")]
        [AcronymField("NAME_ACRONYM")]
        public string NAME { get; set; }
        /// <summary>
        /// 名称首字母缩写
        /// </summary>
        [Description("名称首字母缩写")]
        public string NAME_ACRONYM { get; set; }

        /// <summary>平台类型
        /// PFPlatTypeEnum
        /// </summary>
        [Description("平台类型")]
        public int PLATFORM_TYPE { get; set; }


        /// <summary>表单类型 0-列表表单 1-编辑表单 2-tree表单    99-自定义表单
        /// PFFormTypeEnum 
        /// </summary>
        [Description("表单类型")]
        public int FORM_TYPE { get; set; }

        /// <summary>模块类型
        /// PFModuleTypeEnum
        /// </summary>
        [Description("模块类型")]
        public int MODULE_TYPE { get; set; }

        /// <summary>
        /// 地址
        /// </summary>
        [Description("地址")]
        public string URI { get; set; }


        /// <summary>自定义参数 参数名称=参数值  多个参数时以||分割</summary>
        [Description("自定义参数")]
        public string CUSTOM_PARAMS { get; set; }


        /// <summary>动态加载JS文件</summary>
        [Description("动态加载JS文件")]
        public string JS_FILES { get; set; }


        [Description("启用标志")]
        [EnumName("FMEnableStatusEnum")]
        public int ENABLE_STATUS { get; set; }


        [Description("表名")]
        public string TABLE_NAME { get; set; }


        /// <summary>忽略权限控制</summary>
        [Description("忽略权限控制")]
        public bool IS_IGNORE_PERMISSION { get; set; }


        /// <summary>
        /// 授权组织编号
        /// </summary>
        public string AUTH_ORG_CODES { get; set; }

        // public virtual T_FM_USER Nav_Creater { get; set; }



        [Description("备注")]
        public string REMARK { get; set; }

        [Description("源ID")]
        public Guid? SRC_ID { get; set; }

        [Description("平台类别")]
        [FormFieldTable]
        [FormFieldEdit]  
        [EnumName("PFPlatformTypeEnum")]

        public int PLATFORM_CATEGORY { get; set; }

        [Description("导航：首页图表")]
        public ICollection<T_PF_FORM_HOME_CHART> Nav_HomeCharts { get; set; }

        [Description("导航：首页统计")]
        public ICollection<T_PF_FORM_HOME_STATISTIC> Nav_HomeStatistics { get; set; }

        [Description("导航：首页排名")]
        public ICollection<T_PF_FORM_HOME_RANKING> Nav_HomeRankings { get; set; }

        [Description("导航：首页HMI")]
        public ICollection<T_PF_FORM_HOME_HMI> Nav_HomeHmis { get; set; }

        [Description("图标")]
        /// <summary>
        /// 图标
        /// </summary>
        public string ICON { get; set; }
    }
}