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; } } }