using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using EMIS.ViewModel.CacheManage;
using System.ComponentModel;

namespace EMIS.ViewModel.RetakeManage
{
    public class RetakeStudentView
    {
        /// <summary>
        /// 学年学期ID
        /// </summary>
        [DisplayName("学年学期ID")]
        public Guid? SchoolyearID { get; set; }

        /// <summary>
        /// 用户ID
        /// </summary>
        [DisplayName("用户ID")]
        public Guid? UserID { get; set; }

        /// <summary>
        /// 课程信息ID
        /// </summary>
        [DisplayName("课程信息ID")]
        public Guid? CoursematerialID { get; set; }

        /// <summary>
        /// 课程代码
        /// </summary>
        [DisplayName("课程代码")]
        public string CourseCode { get; set; }

        /// <summary>
        /// 课程名称
        /// </summary>
        [DisplayName("课程名称")]
        public string CourseName { get; set; }

        /// <summary>
        /// 课程简称
        /// </summary>
        [DisplayName("课程简称")]
        public string Abbreviation { get; set; }

        /// <summary>
        /// 课程类型
        /// </summary>
        [DisplayName("课程类型")]
        public int? CourseTypeID { get; set; }

        /// <summary>
        /// 课程类型
        /// </summary>
        [DisplayName("课程类型")]
        public string CourseTypeDesc
        {
            get
            {
                return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CourseType.ToString())
                    .Where(x => x.Value == CourseTypeID)
                    .Select(x => x.Name).FirstOrDefault();
            }
        }

        /// <summary>
        /// 课程学分
        /// </summary>
        [DisplayName("课程学分")]
        public decimal? CourseCredit { get; set; }

        /// <summary>
        /// 成绩学分
        /// </summary>
        [DisplayName("学分")]
        public decimal? Credit { get; set; }

        /// <summary>
        /// 总成绩
        /// </summary>
        [DisplayName("总成绩")]
        public decimal? TotalScore { get; set; }

        /// <summary>
        /// 开课学年
        /// </summary>
        [DisplayName("开课学年")]
        public int? SchoolyearNumID { get; set; }

        /// <summary>
        /// 开课学年
        /// </summary>
        [DisplayName("开课学年")]
        public string SchoolyearNumDesc
        {
            get
            {
                return IdNameExt.GetDictionaryItem(DictionaryItem.CF_SchoolyearNum.ToString())
                    .Where(x => x.Value == SchoolyearNumID)
                    .Select(x => x.Name).FirstOrDefault();
            }
        }

        /// <summary>
        /// 开课学期
        /// </summary>
        [DisplayName("开课学期")]
        public int? StarttermID { get; set; }

        /// <summary>
        /// 开课学期
        /// </summary>
        [DisplayName("开课学期")]
        public string StarttermDesc
        {
            get
            {
                return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Startterm.ToString())
                    .Where(x => x.Value == StarttermID)
                    .Select(x => x.Name).FirstOrDefault();
            }
        }
    }
}