using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
using EMIS.ViewModel.Cache;

namespace EMIS.ViewModel
{
    public class ExamProjectControlView
    {
        [DisplayName("批次报名控制")]
        public Guid ExaminationBatchProjectControlID { get; set; }

        //[Required]
        [DisplayName("标准专业")]
        public int? StandardID { get; set; }

        [Required]
        [DisplayName("年级")]
        public int? SchoolyearNumID { get; set; }
         
        [DisplayName("是否线上缴费")]
        public bool? IsOnlinePay { get; set; }

        [Required]
        [DisplayName("考试批次项目设置")]
        public string ExaminationBatchProject { get; set; }

        [DisplayName("项目收费标准")]
        public string ExaminationProjectFee { get; set; }

        [DisplayName("院系所")]
        public string CollegeName { get; set; }

        public string SchoolyearNumName { get; set; }

        /// <summary>
        /// 专业名称
        /// </summary>
        [DisplayName("专业名称")]
        public string StandardName
        {
            get
            {
                return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Standard.ToString())
                    .Where(x => x.Value == StandardID)
                    .Select(x => x.Name).FirstOrDefault();
            }
        }

         [DisplayName("院系所")]
        public Guid? CollegeID { get; set; }


         //[Required]
         [DisplayName("年级")]
        public int? SchoolyearID { get; set; }

        [Required]
         [DisplayName("项目收费标准")]
        public Guid? ExaminationProjectFeeID { get; set; }

        [Required]
        [DisplayName("学年学期")]
        public Guid SchoolYearCode { get; set; }

        [DisplayName("考试批次")]
        public Guid? ExaminationBatchID { get; set; }

        [Required]
        [DisplayName("考试批次项目设置")]
        public Guid? ExaminationBatchProjectID { get; set; }

        public Guid? ExaminationProjectID { get; set; }
         [DisplayName("项目类型")]
        public string ExaminationType { get; set; }

         [DisplayName("项目名称")]
        public string ProjectName { get; set; }

        public string Name { get; set; }
         public string Schoolyear { get; set; }

         public string IsOnlinePayName { get; set; }

         public string CollegeCode { get; set; }

         /// <summary>
         /// 专业代码
         /// </summary>
         [DisplayName("专业代码")]
         public string StandardCode
         {
             get
             {
                 var inistStandardCode = IdNameExt.GetDictionaryItem(DictionaryItem.CF_Standard.ToString())
                     .Where(x => x.Value == StandardID)
                     .Select(x => x.Code).FirstOrDefault();
                 return (inistStandardCode != null ? inistStandardCode.PadLeft(6, '0') : "");
             }
         }
          [DisplayName("项目类型")]
         public Guid? ExaminationTypeID { get; set; }
        
    }
}