/*  代码由框架生成,任何更改都可能导致被代码生成器覆盖，可自行修改。
* Ghrp_PerformanceItem.cs
*
*功 能： N / A
* 类 名： Ghrp_PerformanceItem
*
* Ver    变更日期 负责人  变更内容
* ───────────────────────────────────
*V0.01  2025/4/23 14:05:59  SimonHsiao   初版
*
* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved.
*┌──────────────────────────────────┐
*│　此技术信息为本公司机密信息，未经本公司书面同意禁止向第三方披露．　│
*│　作者：SimonHsiao                                                  │
*└──────────────────────────────────┘
*/ 
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using SqlSugar;

namespace Tiobon.Core.Model.Models
{

    /// <summary>
    /// 考核指标 (Model)
    /// </summary>
    [SugarTable("Ghrp_PerformanceItem", "Ghrp_PerformanceItem"), Entity(TableCnName = "考核指标", TableName = "Ghrp_PerformanceItem")]
    public class Ghrp_PerformanceItem : BasePoco
    {

        /// <summary>
        /// 指标编号
        /// </summary>
        [Display(Name = "ItemNo"), Description("指标编号"), MaxLength(500, ErrorMessage = "指标编号 不能超过 500 个字符")]
        public string ItemNo { get; set; }

        /// <summary>
        /// 指标内容
        /// </summary>
        [Display(Name = "ItemName"), Description("指标内容"), MaxLength(-1, ErrorMessage = "指标内容 不能超过 -1 个字符")]
        public string ItemName { get; set; }

        /// <summary>
        /// 指标说明
        /// </summary>
        [Display(Name = "ItemCaption"), Description("指标说明"), MaxLength(-1, ErrorMessage = "指标说明 不能超过 -1 个字符")]
        public string ItemCaption { get; set; }

        /// <summary>
        /// 目标达成说明
        /// </summary>
        [Display(Name = "TargetCaption"), Description("目标达成说明"), MaxLength(-1, ErrorMessage = "目标达成说明 不能超过 -1 个字符")]
        public string TargetCaption { get; set; }

        /// <summary>
        /// 一级指标分类
        /// </summary>
        [Display(Name = "ItemType1"), Description("一级指标分类"), MaxLength(255, ErrorMessage = "一级指标分类 不能超过 255 个字符")]
        public string ItemType1 { get; set; }

        /// <summary>
        /// 二级指标分类
        /// </summary>
        [Display(Name = "ItemType2"), Description("二级指标分类"), MaxLength(255, ErrorMessage = "二级指标分类 不能超过 255 个字符")]
        public string ItemType2 { get; set; }

        /// <summary>
        /// 三级指标分类
        /// </summary>
        [Display(Name = "ItemType3"), Description("三级指标分类"), MaxLength(255, ErrorMessage = "三级指标分类 不能超过 255 个字符")]
        public string ItemType3 { get; set; }

        /// <summary>
        /// 默认权重(%)
        /// </summary>
        [Display(Name = "ItemWeight"), Description("默认权重(%)"), Column(TypeName = "decimal(18,2)")]
        public decimal? ItemWeight { get; set; }

        /// <summary>
        /// 指标性质
        /// </summary>
        [Display(Name = "ItemKind"), Description("指标性质"), MaxLength(255, ErrorMessage = "指标性质 不能超过 255 个字符")]
        public string ItemKind { get; set; }

        /// <summary>
        /// 评估部门分类
        /// </summary>
        [Display(Name = "DeptType"), Description("评估部门分类"), MaxLength(255, ErrorMessage = "评估部门分类 不能超过 255 个字符")]
        public string DeptType { get; set; }

        /// <summary>
        /// 标签1
        /// </summary>
        [Display(Name = "Tag1"), Description("标签1"), MaxLength(255, ErrorMessage = "标签1 不能超过 255 个字符")]
        public string Tag1 { get; set; }

        /// <summary>
        /// 标签2
        /// </summary>
        [Display(Name = "Tag2"), Description("标签2"), MaxLength(255, ErrorMessage = "标签2 不能超过 255 个字符")]
        public string Tag2 { get; set; }

        /// <summary>
        /// 标签3
        /// </summary>
        [Display(Name = "Tag3"), Description("标签3"), MaxLength(255, ErrorMessage = "标签3 不能超过 255 个字符")]
        public string Tag3 { get; set; }

        /// <summary>
        /// 有效开始日
        /// </summary>
        public DateTime? BeginDate { get; set; }

        /// <summary>
        /// 有效结束日
        /// </summary>
        public DateTime? EndDate { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [Display(Name = "RemarkSz"), Description("备注"), MaxLength(2000, ErrorMessage = "备注 不能超过 2000 个字符")]
        public string RemarkSz { get; set; }

        /// <summary>
        /// 排序
        /// </summary>
        public int? SortNo { get; set; }

        /// <summary>
        /// 默认标志
        /// </summary>
        public int? IsDefault { get; set; }

        /// <summary>
        /// 预留字段1
        /// </summary>
        [Display(Name = "Reverse1"), Description("预留字段1"), MaxLength(1000, ErrorMessage = "预留字段1 不能超过 1000 个字符")]
        public string Reverse1 { get; set; }

        /// <summary>
        /// 预留字段2
        /// </summary>
        [Display(Name = "Reverse2"), Description("预留字段2"), MaxLength(1000, ErrorMessage = "预留字段2 不能超过 1000 个字符")]
        public string Reverse2 { get; set; }

        /// <summary>
        /// 预留字段3
        /// </summary>
        [Display(Name = "Reverse3"), Description("预留字段3"), MaxLength(1000, ErrorMessage = "预留字段3 不能超过 1000 个字符")]
        public string Reverse3 { get; set; }

        /// <summary>
        /// 预留字段4
        /// </summary>
        [Display(Name = "Reverse4"), Description("预留字段4"), MaxLength(1000, ErrorMessage = "预留字段4 不能超过 1000 个字符")]
        public string Reverse4 { get; set; }

        /// <summary>
        /// 预留字段5
        /// </summary>
        [Display(Name = "Reverse5"), Description("预留字段5"), MaxLength(1000, ErrorMessage = "预留字段5 不能超过 1000 个字符")]
        public string Reverse5 { get; set; }

        /// <summary>
        /// 预留字段6
        /// </summary>
        [Display(Name = "Reverse6"), Description("预留字段6"), MaxLength(1000, ErrorMessage = "预留字段6 不能超过 1000 个字符")]
        public string Reverse6 { get; set; }

        /// <summary>
        /// 预留字段7
        /// </summary>
        [Display(Name = "Reverse7"), Description("预留字段7"), MaxLength(1000, ErrorMessage = "预留字段7 不能超过 1000 个字符")]
        public string Reverse7 { get; set; }

        /// <summary>
        /// 预留字段8
        /// </summary>
        [Display(Name = "Reverse8"), Description("预留字段8"), MaxLength(1000, ErrorMessage = "预留字段8 不能超过 1000 个字符")]
        public string Reverse8 { get; set; }

        /// <summary>
        /// 预留字段9
        /// </summary>
        [Display(Name = "Reverse9"), Description("预留字段9"), MaxLength(1000, ErrorMessage = "预留字段9 不能超过 1000 个字符")]
        public string Reverse9 { get; set; }

        /// <summary>
        /// 预留字段10
        /// </summary>
        [Display(Name = "Reverse10"), Description("预留字段10"), MaxLength(1000, ErrorMessage = "预留字段10 不能超过 1000 个字符")]
        public string Reverse10 { get; set; }

        /// <summary>
        /// 预留字段11
        /// </summary>
        public int? ReverseI1 { get; set; }

        /// <summary>
        /// 预留字段12
        /// </summary>
        public int? ReverseI2 { get; set; }

        /// <summary>
        /// 内置
        /// </summary>
        public int? BuiltIn { get; set; }
        
    }
}
