using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Reflection;
using EMIS.ViewModel.CacheManage;
using EMIS.ViewModel.StudentManage.StudentProfile;
namespace EMIS.ViewModel.StudentManage.OnlineChecking
{
public class CheckingHistoryView
{
///
/// 主键ID
///
[DisplayName("主键ID")]
public Guid StudentRecordChangeHistoryID { get; set; }
///
/// 比对表ID
///
[Required]
[DisplayName("比对表ID")]
public Guid? StudentContrastID { get; set; }
///
/// 校对表名
///
[DisplayName("校对表名")]
public string TableName { get; set; }
///
/// 校对列名
///
[DisplayName("校对列名")]
public string ColumnName { get; set; }
///
/// 显示属性
///
[DisplayName("显示属性")]
public string DisplayPropertyName { get; set; }
///
/// 校对名称
///
[DisplayName("校对名称")]
public string Description { get; set; }
///
/// 校对类型
///
[Required]
[DisplayName("校对类型")]
public int? CheckingTypeID { get; set; }
///
/// 校对类型
///
[DisplayName("校对类型")]
public string CheckingTypeName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CheckingType.ToString()).Where(x => x.Value == CheckingTypeID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 用户信息ID
///
[Required]
[DisplayName("用户信息ID")]
public Guid? UserID { get; set; }
///
/// 学号
///
[DisplayName("学号")]
public string StudentNo { get; set; }
///
/// 学号
///
[DisplayName("学号")]
public string LoginID { get; set; }
///
/// 考生号
///
[DisplayName("考生号")]
public string ExamineeNum { get; set; }
///
/// 准考证号
///
[DisplayName("准考证号")]
public string AdmissionTicketNo { get; set; }
///
/// 姓名
///
[DisplayName("姓名")]
public string Name { get; set; }
///
/// 姓名
///
[DisplayName("姓名")]
public string UserName { get; set; }
///
/// 曾用名
///
[DisplayName("曾用名")]
public string UsedName { get; set; }
///
/// 班级信息ID
///
[DisplayName("班级信息ID")]
public Guid? ClassmajorID { get; set; }
///
/// 班级编号
///
[DisplayName("班级编号")]
public string ClassmajorNo { get; set; }
///
/// 班级名称
///
[DisplayName("班级名称")]
public string ClassmajorName { get; set; }
///
/// 班序
///
[DisplayName("班序")]
public int? ClassNum { get; set; }
///
/// 专业ID(Value)
///
[DisplayName("专业ID(Value)")]
public int? StandardID { get; set; }
///
/// 专业代码
///
[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 string StandardName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Standard.ToString()).Where(x => x.Value == StandardID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 培养层次
///
[Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "EducationID")]
public int? EducationID { get; set; }
///
/// 培养层次
///
[Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "EducationName")]
public string EducationName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Education.ToString()).Where(x => x.Value == EducationID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 学习形式
///
[DisplayName("学习形式")]
public int? LearningformID { get; set; }
///
/// 学习形式
///
[DisplayName("学习形式")]
public string LearningformName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Learningform.ToString()).Where(x => x.Value == LearningformID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 学制
///
[DisplayName("学制")]
public decimal? LearnSystem { get; set; }
///
/// 院系专业ID
///
[DisplayName("院系专业ID")]
public Guid? FacultymajorID { get; set; }
///
/// 院系专业编号
///
[DisplayName("院系专业编号")]
public string FacultymajorCode { get; set; }
///
/// 院系专业名称
///
[DisplayName("院系专业名称")]
public string FacultymajorName { get; set; }
///
/// 年级
///
[DisplayName("年级")]
public int? GradeID { get; set; }
///
/// 年级
///
[DisplayName("年级")]
public string GradeName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Grade.ToString()).Where(x => x.Value == GradeID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 入学学期
///
[DisplayName("入学学期")]
public int? SemesterID { get; set; }
///
/// 入学学期
///
[DisplayName("入学学期")]
public string SemesterName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Semester.ToString()).Where(x => x.Value == SemesterID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 年级专业ID
///
[DisplayName("年级专业ID")]
public Guid? GrademajorID { get; set; }
///
/// 年级专业编号
///
[DisplayName("年级专业编号")]
public string GrademajorCode { get; set; }
///
/// 年级专业名称
///
[DisplayName("年级专业名称")]
public string GrademajorName { get; set; }
///
/// 院系所ID
///
[Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "College")]
public Guid? CollegeID { get; set; }
///
/// 院系所代码
///
[Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CollegeCode")]
public string CollegeNo { get; set; }
///
/// 院系所
///
[Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "College")]
public string CollegeName { get; set; }
///
/// 校区ID
///
[Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "Campus")]
public Guid? CampusID { get; set; }
///
/// 校区代码
///
[Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CampusCode")]
public string CampusCode { get; set; }
///
/// 校区名称
///
[Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "Campus")]
public string CampusName { get; set; }
///
/// 国籍
///
[DisplayName("国籍")]
public string Country { get; set; }
///
/// 籍贯
///
[DisplayName("籍贯")]
public string Place { get; set; }
///
/// 出生地
///
[DisplayName("出生地")]
public string BornPlace { get; set; }
///
/// 性别
///
[Required]
[DisplayName("性别")]
public int? SexID { get; set; }
///
/// 性别
///
[DisplayName("性别")]
public string SexName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Sex.ToString()).Where(x => x.Value == SexID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 出生日期
///
[Required]
[DisplayName("出生日期")]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}")]
public DateTime? BirthDate { get; set; }
///
/// 民族
///
[Required]
[DisplayName("民族")]
public int? NationID { get; set; }
///
/// 民族
///
[DisplayName("民族")]
public string NationName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Nation.ToString()).Where(x => x.Value == NationID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 政治面貌
///
[Required]
[DisplayName("政治面貌")]
public int? PoliticsID { get; set; }
///
/// 政治面貌
///
[DisplayName("政治面貌")]
public string PoliticsName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Politics.ToString()).Where(x => x.Value == PoliticsID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 证件类型
///
[Required]
[DisplayName("证件类型")]
public int? CertificatesType { get; set; }
///
/// 证件类型
///
[DisplayName("证件类型")]
public string CertificatesTypeName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CertificatesType.ToString()).Where(x => x.Value == CertificatesType).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 证件号码
///
[Required]
[DisplayName("证件号码")]
[RegularExpression(@"^[0-9a-zA-Z\s?]+$", ErrorMessage = "请输入正确的证件号码格式")]
public string IDNumber { get; set; }
///
/// 学生类别
///
[Required]
[DisplayName("学生类别")]
public int? StudentType { get; set; }
///
/// 学生类别
///
[DisplayName("学生类别")]
public string StudentTypeName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_STUDENTTYPE.ToString()).Where(x => x.Value == StudentType).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 在校状态
///
[Required]
[DisplayName("在校状态")]
public int? InSchoolStatusID { get; set; }
///
/// 在校状态
///
[DisplayName("在校状态")]
public string InSchoolStatusName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_InschoolStatus.ToString()).Where(x => x.Value == InSchoolStatusID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 学籍状态
///
[Required]
[DisplayName("学籍状态")]
public int? StudentStatus { get; set; }
///
/// 学籍状态
///
[DisplayName("学籍状态")]
public string StudentStatusName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_StudentStatus.ToString()).Where(x => x.Value == StudentStatus).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 考生类别
///
[DisplayName("考生类别")]
public int? ExamineeType { get; set; }
///
/// 考生类别
///
[DisplayName("考生类别")]
public string ExamineeTypeName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_EXAMINEETYPE.ToString()).Where(x => x.Value == ExamineeType).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 入学日期
///
[DisplayName("入学日期")]
public DateTime? EntranceDate { get; set; }
///
/// 文化程度
///
[DisplayName("文化程度")]
public int? LiteracyLevelID { get; set; }
///
/// 文化程度
///
[DisplayName("文化程度")]
public string LiteracyLevelName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_LiteracyLevel.ToString()).Where(x => x.Value == LiteracyLevelID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 培养方式
///
[DisplayName("培养方式")]
public int? CultureModelID { get; set; }
///
/// 培养方式
///
[DisplayName("培养方式")]
public string CultureModelName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CULTUREMODEL.ToString()).Where(x => x.Value == CultureModelID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 圆梦计划
///
[DisplayName("圆梦计划")]
public bool IsDreamProject { get; set; }
///
/// 圆梦计划
///
[DisplayName("圆梦计划")]
public string IsDreamProjectName
{
get { return this.IsDreamProject != true ? "否" : "是"; }
}
///
/// 电子邮箱
///
[DisplayName("电子邮箱")]
[RegularExpression(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$", ErrorMessage = "请输入正确的格式")]
public string Email { get; set; }
///
/// 家庭电话
///
[DisplayName("家庭电话")]
public string Telephone { get; set; }
///
/// 移动电话
///
[DisplayName("移动电话")]
public string Mobile { get; set; }
///
/// 邮政编码
///
[DisplayName("邮政编码")]
[RegularExpression(@"[1-9]\d{5}(?!\d)", ErrorMessage = "请输入正确的格式")]
public string ZIPCode { get; set; }
///
/// 微信号
///
[DisplayName("微信号")]
public string WeChatNum { get; set; }
///
/// QQ
///
[DisplayName("QQ")]
[RegularExpression(@"[1-9][0-9]{4,}", ErrorMessage = "请输入正确的格式")]
public string QQ { get; set; }
///
/// 健康状况
///
[DisplayName("健康状况")]
public int? HealthStateID { get; set; }
///
/// 健康状况
///
[DisplayName("健康状况")]
public string HealthStateName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_HealthState.ToString()).Where(x => x.Value == HealthStateID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 血型
///
[DisplayName("血型")]
public int? BloodGroup { get; set; }
///
/// 血型名称
///
[DisplayName("血型名称")]
public string BloodGroupName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_BLOODGROUP.ToString()).Where(x => x.Value == BloodGroup).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 特长
///
[DisplayName("特长")]
public string Specialty { get; set; }
///
/// 身高(cm)
///
[DisplayName("身高(cm)")]
[RegularExpression(@"^\d+(\.\d+)?$", ErrorMessage = "请输入数字")]
public string Height { get; set; }
///
/// 体重(kg)
///
[DisplayName("体重(kg)")]
[RegularExpression(@"^\d+(\.\d+)?$", ErrorMessage = "请输入数字")]
public string Weight { get; set; }
///
/// 导师姓名
///
[DisplayName("导师姓名")]
public string DirectorName { get; set; }
///
/// 总分
///
[DisplayName("总分")]
[RegularExpression(@"^[0-9]+([.]{1}[0-9]+){0,1}$", ErrorMessage = "请输入数字")]
public decimal? Score { get; set; }
///
/// 入学方式
///
[DisplayName("入学方式")]
public int? EntranceWayID { get; set; }
///
/// 入学方式
///
[DisplayName("入学方式")]
public string EntranceWayName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_EntranceWay.ToString()).Where(x => x.Value == EntranceWayID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 考生特征
///
[DisplayName("考生特征")]
public int? FeaturesID { get; set; }
///
/// 考生特征
///
[DisplayName("考生特征")]
public string FeaturesName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Features.ToString()).Where(x => x.Value == FeaturesID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 生源所属地
///
[DisplayName("生源所属地")]
public int? TerritorialID { get; set; }
///
/// 生源所属地
///
[DisplayName("生源所属地")]
public string TerritorialName
{
get
{
return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Province.ToString()).Where(x => x.Value == TerritorialID).Select(x => x.Name).FirstOrDefault();
}
}
///
/// 来源地区
///
[DisplayName("来源地区")]
public string Area { get; set; }
///
/// 家庭住址
///
[DisplayName("家庭住址")]
public string HomeAddress { get; set; }
///
/// 工作单位
///
[DisplayName("工作单位")]
public string WorkUnit { get; set; }
///
/// 通信地址
///
[DisplayName("通信地址")]
public string Address { get; set; }
///
/// 收件人
///
[DisplayName("收件人")]
public string Recipient { get; set; }
///
/// 宿舍地址
///
[DisplayName("宿舍地址")]
public string Dormitory { get; set; }
///
/// 开户银行
///
[DisplayName("开户银行")]
public string BankName { get; set; }
///
/// 银行卡号
///
[DisplayName("银行卡号")]
[RegularExpression(@"^[0-9]*$", ErrorMessage = "只能输入数字")]
public string CardNo { get; set; }
///
/// 学籍卡编号
///
[DisplayName("学籍卡编号")]
[RegularExpression(@"^[0-9a-zA-Z\s?]+$", ErrorMessage = "只能输入数字和英文字母")]
public string StudentCardNo { get; set; }
///
/// 学籍照片Url
///
[DisplayName("学籍照片")]
public string PhotoUrl { get; set; }
///
/// 预计毕业日期
///
[DisplayName("预计毕业日期")]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}")]
public DateTime? PlanningGraduateDate { get; set; }
///
/// 毕业日期
///
[DisplayName("毕业日期")]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}")]
public DateTime? GraduateDate { get; set; }
///
/// 毕结业证书编号
///
[DisplayName("毕结业证书编号")]
[RegularExpression(@"^[0-9a-zA-Z\s?]+$", ErrorMessage = "请输入数字或英文字母")]
public string GraduateCardNo { get; set; }
///
/// 补证编号(补办证书编号)
///
[DisplayName("补证编号")]
[RegularExpression(@"^[0-9a-zA-Z\s?]+$", ErrorMessage = "请输入数字或英文字母")]
public string ReplaceGraduateNo { get; set; }
///
/// 学位有无
///
[DisplayName("学位有无")]
public bool DegreeStatus { get; set; }
///
/// 学位有无
///
[DisplayName("学位有无")]
public string DegreeStatusName
{
get { return this.DegreeStatus != true ? "无" : "有"; }
}
///
/// 学历照片
///
[DisplayName("学历照片")]
public string GraduationPictureUrl { get; set; }
///
/// 在校经历
///
[DisplayName("在校经历")]
public string Career { get; set; }
///
/// 是否核对
///
[DisplayName("是否核对")]
public bool IsProofread { get; set; }
///
/// 是否核对
///
[DisplayName("是否核对")]
public string IsProofreadName
{
get { return this.IsProofread != true ? "否" : "是"; }
}
///
/// 备注
///
[DisplayName("备注")]
public string Remark { get; set; }
///
/// IP地址
///
[DisplayName("IP地址")]
public string IP { get; set; }
///
/// 校对前信息StudentViewSource
///
[DisplayName("校对前信息")]
public StudentView StudentViewSource { get; set; }
///
/// 校对后信息StudentViewContrast
///
[DisplayName("校对后信息")]
public StudentView StudentViewContrast { get; set; }
///
/// 校对前值
///
[DisplayName("校对前值")]
public object CheckingBeforeValue
{
get
{
return GetColumnValue(StudentViewSource, ColumnName);
}
}
///
/// 校对前内容
///
[DisplayName("校对前内容")]
public string CheckingBeforeContent
{
get
{
return GetColumnValue(StudentViewSource, ColumnName, DisplayPropertyName);
}
}
///
/// 校对后值
///
[DisplayName("校对后值")]
public object CheckingAfterValue
{
get
{
return GetColumnValue(StudentViewContrast, ColumnName);
}
}
///
/// 校对后内容
///
[DisplayName("校对后内容")]
public string CheckingAfterContent
{
get
{
return GetColumnValue(StudentViewContrast, ColumnName, DisplayPropertyName);
}
}
///
/// ColumnValue
///
///
///
///
///
[DisplayName("ColumnValue")]
public object GetColumnValue(T tableName, string columnName)
{
PropertyInfo[] properties = tableName.GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public);
foreach (PropertyInfo pro in properties)
{
if (pro.PropertyType.IsValueType || pro.PropertyType.Name.StartsWith("String"))
{
if (String.Equals(pro.Name, columnName, StringComparison.CurrentCultureIgnoreCase))
{
return pro.GetValue(tableName, null);
}
}
}
return null;
}
///
/// ColumnValue
///
///
///
///
///
///
[DisplayName("ColumnValue")]
public string GetColumnValue(T tableName, string columnName, string displayPropertyName)
{
PropertyInfo[] properties = tableName.GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public);
foreach (PropertyInfo pro in properties)
{
if (pro.PropertyType.IsValueType || pro.PropertyType.Name.StartsWith("String"))
{
if (string.IsNullOrWhiteSpace(displayPropertyName))
{
if (String.Equals(pro.Name, columnName, StringComparison.CurrentCultureIgnoreCase))
{
return pro.GetValue(tableName, null) == null ? "" : pro.GetValue(tableName, null).ToString();
}
}
else
{
if (String.Equals(pro.Name, displayPropertyName, StringComparison.CurrentCultureIgnoreCase))
{
return pro.GetValue(tableName, null) == null ? "" : pro.GetValue(tableName, null).ToString();
}
}
}
}
return null;
}
///
/// 审核状态
///
[DisplayName("审核状态")]
public int? ApprovalStatus { get; set; }
///
/// 审核状态
///
[DisplayName("审核状态")]
public string ApprovalStatusName { get; set; }
///
/// 处理意见
///
[DisplayName("处理意见")]
public string Comment { get; set; }
///
/// 审核时间
///
[DisplayName("审核时间")]
public DateTime? ApprovalTime { get; set; }
///
/// 状态
///
[DisplayName("状态")]
public int? RecordStatus { get; set; }
///
/// 创建人
///
[DisplayName("创建人")]
public Guid? CreateUserID { get; set; }
///
/// 创建时间
///
[DisplayName("创建时间")]
public DateTime? CreateTime { get; set; }
///
/// 修改人
///
[DisplayName("修改人")]
public Guid? ModifyUserID { get; set; }
///
/// 修改时间
///
[DisplayName("修改时间")]
public DateTime? ModifyTime { get; set; }
}
}