using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.IO; using System.Web; using System.Web.Mvc; using Bowin.Common.Utility; using Bowin.Common.Data; using Bowin.Web.Controls.Mvc; using EMIS.Utility; using EMIS.Web.Controls; using EMIS.ViewModel; using EMIS.ViewModel.EnrollManage.NewStudentManage; using EMIS.CommonLogic.EnrollManage.NewStudentManage; using EMIS.CommonLogic.StudentManage.StudentProfile; namespace EMIS.Web.Controllers.EnrollManage.NewStudentManage { [Authorization] public class NewStudentEnterController : Controller { public INewStudentEnterServices newStudentEnterServices { get; set; } public Lazy StudentServices { get; set; } /// /// 录取名单页面 /// /// public ActionResult List() { return View(); } /// /// 录取名单页面列表查询 /// /// /// [HttpPost] public ActionResult List(QueryParamsModel pararms) { ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(pararms); var campusID = pararms.getExtraGuid("CampusDropdown"); var collegeID = pararms.getExtraGuid("CollegeDropdown"); var gradeID = pararms.getExtraInt("DictionaryGrade") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryGrade"); var standardID = pararms.getExtraInt("DictionaryStandard") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryStandard"); var educationID = pararms.getExtraInt("DictionaryEducation") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryEducation"); var learningformID = pararms.getExtraInt("DictionaryLearningform") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryLearningform"); var learnSystem = pararms.getExtraString("DictionaryLearnSystem"); var grademajorID = pararms.getExtraGuid("GrademajorComboGrid"); var classmajorID = pararms.getExtraGuid("ClassmajorComboGrid"); var generalPurpose = pararms.getExtraInt("DictionaryGeneralPurpose") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryGeneralPurpose"); var generalExist = pararms.getExtraInt("DictionaryGeneralExist") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryGeneralExist"); var newStudentEnterStatus = pararms.getExtraInt("DictionaryNewStudentEnterStatus") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryNewStudentEnterStatus"); return base.Json(newStudentEnterServices.GetNewStudentEnterViewGrid(configuretView, campusID, collegeID, gradeID, standardID, educationID, learningformID, learnSystem, grademajorID, classmajorID, generalPurpose, generalExist, newStudentEnterStatus, (int)pararms.page, (int)pararms.rows)); } /// /// 复制新增 /// /// /// public ActionResult CopyAdd(Guid newStudentID) { NewStudentView newStudentView = new NewStudentView(); newStudentView = newStudentEnterServices.GetNewStudentEnterView(newStudentID); return View("Edit", newStudentView); } /// /// 复制新增 /// /// /// [HttpPost] public ActionResult CopyAdd(NewStudentView newStudentView) { newStudentView.NewStudentID = Guid.Empty; return this.Edit(newStudentView); } /// /// 编辑(新增、修改,业务主键:考生号唯一) /// 注:需对相应的业务进行处理,如:学号等 /// /// /// /// [HttpGet] public ActionResult Edit(Guid? newNewStudentID, string type) { NewStudentView newStudentView = new NewStudentView(); if (newNewStudentID.HasValue && newNewStudentID != Guid.Empty) { newStudentView = newStudentEnterServices.GetNewStudentEnterView(newNewStudentID); if (type == "copyAdd") { newStudentView.NewStudentID = Guid.Empty; //newStudentView.ExamineeNum = null; //newStudentView.AdmissionTicketNo = null; //newStudentView.Name = null; //newStudentView.IDNumber = null; newStudentView.RecruitPictureUrl = null; } } else { newStudentView.NationID = (int)CF_Nation.Han; newStudentView.PoliticsID = (int)CF_Politics.YouthLeague; newStudentView.CertificatesType = (int)CF_CertificatesType.IdCrad; newStudentView.GradeID = BaseExtensions.GetCurrentYearID(); newStudentView.SemesterID = BaseExtensions.GetEntranceSemesterID(); newStudentView.AssignStatus = (int)CF_AssignStatus.Assigned; } return View(newStudentView); } /// /// 编辑(新增、修改,业务主键:考生号唯一) /// 注:需对相应的业务进行处理,如:学号等 /// /// /// [HttpPost] public ActionResult Edit(NewStudentView newStudentView) { try { var accepts = new List { ".jpg", ".jpeg", ".png", ".bmp" }; var postedFile = Request.Files["RecruitPictureUrl"]; if (!string.IsNullOrEmpty(postedFile.FileName) && !accepts.Contains(Path.GetExtension(postedFile.FileName).ToLower())) { throw new Exception("只允许上传.jpg、.jpeg、.png、.bmp格式的文件。"); } string photoUrl = FileUploadHelper.UploadFile(postedFile); newStudentEnterServices.NewStudentEnterEdit(newStudentView, photoUrl); return RedirectToAction("MsgShow", "Common", new { WindowID = Request["WindowID"], msg = "保存成功。", url = Url.Action("List").AddMenuParameter() }); } catch (Exception ex) { return RedirectToAction("MsgShowAndOpen", "Common", new { WindowID = Request["WindowID"], msg = "保存失败,原因:" + ex.Message }); } } /// /// 删除 /// /// /// [HttpPost] public ActionResult Delete(string newStudentIDs) { try { List list = newStudentIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => (Guid?)new Guid(x)).ToList(); newStudentEnterServices.NewStudentEnterDelete(list); return Json(new ReturnMessage() { IsSuccess = true, Message = "删除成功。" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "删除失败,原因:" + ex.Message }); } } /// /// 删除照片(单个删除) /// /// /// [HttpPost] public ActionResult DeletePhoto(Guid? newStudentID) { try { this.newStudentEnterServices.DeletePhoto(newStudentID); return Json(new ReturnMessage() { IsSuccess = true, Message = "删除照片成功。" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "删除照片失败:" + ex.Message }); } } /// /// 删除照片(批量删除) /// /// /// [HttpPost] public ActionResult PicDelete(string newStudentIDs) { try { List list = newStudentIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => (Guid?)new Guid(x)).ToList(); this.newStudentEnterServices.PicDelete(list); return Json(new ReturnMessage() { IsSuccess = true, Message = "删除照片成功。" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "删除照片失败:" + ex.Message }); } } /// /// 取消分配 /// /// /// [HttpPost] public ActionResult CancelAssignCollege(string newStudentIDs) { try { List list = newStudentIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => (Guid?)new Guid(x)).ToList(); string result = newStudentEnterServices.NewStudentEnterCancelAssignCollege(list); return Json(new ReturnMessage() { IsSuccess = true, Message = "取消分配成功" + result + "。" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "取消分配失败,原因:" + ex.Message }); } } /// /// 导入照片 /// /// /// /// [HttpGet] public ActionResult PicImport(string errorFile, string operationTips) { ViewBag.ErrorFile = errorFile; if (string.IsNullOrEmpty(operationTips)) { operationTips = "点击查看失败原因..."; } ViewBag.operationTips = operationTips; return View(); } /// /// 导入照片 /// /// /// /// [HttpPost] public ActionResult PicImport(HttpPostedFileBase file, string importPicType) { try { if (file.ContentLength <= 0) { throw new Exception("请选择你要上传的照片(注:格式为zip或rar的压缩包文件)。"); } var acceptFileExtensions = new[] { ".zip", ".rar" }; var fileExtensionName = Path.GetExtension(file.FileName); if (!acceptFileExtensions.Contains(fileExtensionName)) { throw new Exception("格式错误,只允许上传zip或rar格式的压缩包文件。"); } string fileSourceWebPath = null; string errorSourceWebPath = null; var photoPathList = FileUploadHelper.UploadFileAndExtractFile(file, out fileSourceWebPath, out errorSourceWebPath); System.IO.File.Delete(Server.MapPath(fileSourceWebPath)); if (photoPathList == null || photoPathList.Count <= 0) { throw new Exception("压缩包中文件为空。"); } var acceptPicExtensions = new[] { ".jpg", ".jpeg", ".png", ".bmp" }; List newPhotoPathList = new List(); foreach (var photoPath in photoPathList) { string photoExtensionName = Path.GetExtension(photoPath).ToLower(); if (acceptPicExtensions.Contains(photoExtensionName)) { newPhotoPathList.Add(photoPath); } else { throw new Exception("压缩包中含有不支持的照片格式。"); } } int? inCount = 0; int? errCount = 0; var errDataTable = new DataTable(); newStudentEnterServices.NewStudentEnterPicImport(newPhotoPathList, importPicType, out inCount, out errCount, out errDataTable); if (errDataTable != null && errDataTable.Rows.Count > 0) { NpoiExcelHelper npoiExcelHelper = new NpoiExcelHelper(); npoiExcelHelper.SaveInServer(errDataTable, Server.MapPath(errorSourceWebPath)); string errorWebPath = string.Format("{0}", errorSourceWebPath); ViewBag.ErrorFile = errorWebPath; string Errinfo = string.Format("提示:{0}个照片导入成功,{1}个照片导入失败,点击查看。", inCount, errCount); ViewBag.operationTips = Errinfo; return RedirectToAction("MsgShow", "Common", new { WindowID = "none", msg = Errinfo, url = Url.Action("PicImport").AddMenuParameter() + "&errorFile=" + errorWebPath + "&operationTips=" + Errinfo + "&WindowID=" + Request["WindowID"] }); } else { string successInfo = string.Format("提示:{0}个照片导入成功。", inCount); return RedirectToAction("MsgShow", "Common", new { WindowID = Request["WindowID"], msg = successInfo, url = Url.Action("List").AddMenuParameter() }); } } catch (Exception ex) { return RedirectToAction("MsgShow", "Common", new { WindowID = "none", msg = "导入照片失败,原因:" + ex.Message, url = Url.Action("PicImport").AddMenuParameter() + "&WindowID=" + Request["WindowID"] }); } } /// /// 导入标识 /// /// /// /// [HttpGet] public ActionResult DoubtImport(string errorFile, string operationTips) { ViewBag.ErrorFile = errorFile; if (string.IsNullOrEmpty(operationTips)) { operationTips = "点击查看失败原因..."; } ViewBag.operationTips = operationTips; return View(); } /// /// 导入标识 /// /// /// [HttpPost] public ActionResult DoubtImport(HttpPostedFileBase file) { try { if (!NpoiExcelHelper.GetIsCompatible(file.FileName)) { throw new Exception("格式错误,只允许导入xls或xlsx格式的Excel文件。"); } //注:只获取Excel模板中的有效列 Dictionary cellheader = new Dictionary { { "Name", "姓名" }, //姓名 { "IDNumber", "身份证号" }, //身份证号 { "ErrorMessage", "未导入原因" } }; StringBuilder errorMsg = new StringBuilder(); // 错误信息 string sourceWebPath = FileUploadHelper.UploadFile(file); var sourcePhysicalPath = Server.MapPath(sourceWebPath); List errList = new List(); List dataList = new List(); int? inCount = 0; //导入个数 int? upCount = 0; //更新个数 int? errCount = 0; //失败个数 //导入 newStudentEnterServices.NewStudentEnterDoubtImport(cellheader, out inCount, out upCount, out errList, out errCount, sourcePhysicalPath); System.IO.File.Delete(sourcePhysicalPath);//删除本地缓存文件 if (errList.Count() > 0) { //获取错误数据文件路径 string errorWebPath = string.Format("{0}", NpoiExcelHelper.EntityListToExcel2003(cellheader, errList, "名单标记导入失败文件", sourcePhysicalPath)); ViewBag.ErrorFile = errorWebPath; string Errinfo = string.Format("提示:{0}个名单标记成功,{1}个名单标记更新成功,{2}个名单标记失败,点击查看。", inCount, upCount, errCount); ViewBag.operationTips = Errinfo; return RedirectToAction("MsgShow", "Common", new { WindowID = "none", msg = Errinfo, url = Url.Action("DoubtImport").AddMenuParameter() + "&errorFile=" + errorWebPath + "&operationTips=" + Errinfo + "&WindowID=" + Request["WindowID"] }); } else { string successInfo = string.Format("提示:{0}个名单标记成功,{1}个名单标记更新成功。", inCount, upCount); return RedirectToAction("MsgShow", "Common", new { WindowID = Request["WindowID"], msg = successInfo, url = Url.Action("List").AddMenuParameter() }); } } catch (Exception ex) { return RedirectToAction("MsgShow", "Common", new { WindowID = "none", msg = "导入失败,原因:" + ex.Message, url = Url.Action("DoubtImport").AddMenuParameter() + "&WindowID=" + Request["WindowID"] }); } } /// /// 标识名单 /// /// public ActionResult DoubtList() { return View(); } /// /// 标识名单 /// /// /// /// [HttpPost] public ActionResult DoubtList(string newStudentIDs, NewStudentView newStudentView) { try { List list = newStudentIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => (Guid?)new Guid(x)).ToList(); string result = newStudentEnterServices.NewStudentEnterDoubtApprove(list); return Json(new ReturnMessage() { IsSuccess = true, Message = "成功" + result + "。" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "失败,原因:" + ex.Message }); } } /// /// 标识名单列表查询 /// /// /// [HttpPost] public ActionResult NewStudentEnterDoubtList(QueryParamsModel pararms) { ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(pararms); var campusID = pararms.getExtraGuid("CampusDropdown"); var collegeID = pararms.getExtraGuid("CollegeDropdown"); var gradeID = pararms.getExtraInt("DictionaryGrade") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryGrade"); var standardID = pararms.getExtraInt("DictionaryStandard") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryStandard"); var educationID = pararms.getExtraInt("DictionaryEducation") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryEducation"); var learningformID = pararms.getExtraInt("DictionaryLearningform") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryLearningform"); var learnSystem = pararms.getExtraString("DictionaryLearnSystem"); var isPhotoUrl = pararms.getExtraInt("IsPhotoUrlDropdown") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("IsPhotoUrlDropdown"); return base.Json(newStudentEnterServices.GetNewStudentEnterDoubtViewGrid(configuretView, campusID, collegeID, gradeID, standardID, educationID, learningformID, learnSystem, isPhotoUrl, (int)pararms.page, (int)pararms.rows)); } /// /// Excel标识名单导出 /// /// [HttpPost] public ActionResult Excel_NewStudentEnterDoubt() { NpoiExcelHelper neh = new NpoiExcelHelper(); ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(null); var campusID = Request.Form["CampusDropdown"].ParseStrTo(); var collegeID = Request.Form["CollegeDropdown"].ParseStrTo(); var gradeID = Request.Form["DictionaryGrade"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryGrade"].ParseStrTo(); var standardID = Request.Form["DictionaryStandard"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryStandard"].ParseStrTo(); var educationID = Request.Form["DictionaryEducation"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryEducation"].ParseStrTo(); var learningformID = Request.Form["DictionaryLearningform"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryLearningform"].ParseStrTo(); var learnSystem = Request.Form["DictionaryLearnSystem"].ToString(); var isPhotoUrl = Request.Form["IsPhotoUrlDropdown"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["IsPhotoUrlDropdown"].ParseStrTo(); var dt = newStudentEnterServices.GetNewStudentEnterDoubtViewList(configuretView, campusID, collegeID, gradeID, standardID, educationID, learningformID, learnSystem, isPhotoUrl) .Select(x => new { x.ExamineeNum, x.AdmissionTicketNo, x.Name, x.SexName, x.NationName, x.PoliticsName, BirthDate = x.BirthDate.HasValue ? x.BirthDate.Value.ToString("yyyy-MM-dd") : "", x.CertificatesTypeName, x.IDNumber, x.GradeID, x.SemesterName, x.StandardCode, x.StandardID, x.StandardName, x.EducationName, x.LearningformName, LearnSystem = x.LearnSystem.HasValue ? x.LearnSystem.Value.ToString("#.#") : null, EntranceDate = x.EntranceDate.HasValue ? x.EntranceDate.Value.ToString("yyyy-MM-dd") : "", x.Score, x.Telephone, x.Address, x.Dormitory, x.RecruitPictureUrl, x.CollegeNo, x.CollegeName, x.GrademajorCode, x.GrademajorName, x.ClassmajorNo, x.ClassmajorName, x.StudentNo, x.EnrollmentNo, x.IsDoubtName, x.AssignStatusName, x.RecordStatusName, x.Remark }).ToTable(); string[] liststring = { "考生号", "准考证号","姓名", "性别", "民族", "政治面貌", "出生日期", "证件类型", "身份证号", "年级", "学期", "专业代码", "专业ID(Value)", "专业名称", RSL.Get("EducationID"), "学习形式", "学制", "入学日期", "总分", "联系电话", "通讯地址", "宿舍地址", "照片Url", RSL.Get("CollegeCode"), RSL.Get("CollegeName"), "年级专业代码", "年级专业名称", "班级编号", "班级名称", "学号", "录取通知书编号", "标识状态", "分配状态", "状态", "备注" }; neh.Export(dt, liststring, "标识名单信息" + DateTime.Now.ToString("yyyyMMdd")); return Json(new ReturnMessage() { IsSuccess = true, Message = "导出成功。" }); } /// /// 初始化(班级信息、学号) /// /// /// [HttpPost] public ActionResult Init(string newStudentIDs) { try { List list = newStudentIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => (Guid?)new Guid(x)).ToList(); string result = newStudentEnterServices.NewStudentEnterInit(list); return Json(new ReturnMessage() { IsSuccess = true, Message = "初始化成功" + result + "。" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "初始化学号失败,原因:" + ex.Message }); } } /// /// 手动分配班级和生成学号(此为默认规则,初始学号为:班级编号+流水号,下一位学号为:对应的最大学号+1) /// 注:个性化配置 /// /// public ActionResult AssignClass() { return View(); } /// /// 手动分配班级和生成学号(此为默认规则,初始学号为:班级编号+流水号,下一位学号为:对应的最大学号+1) /// 注:个性化配置 /// /// /// /// [HttpPost] public ActionResult AssignClass(string newStudentIDs, NewStudentView newStudentView) { try { var newStudentIDList = newStudentIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => (Guid?)new Guid(x)).ToList(); string result = newStudentEnterServices.NewStudentEnterAssignClass(newStudentIDList, newStudentView.ClassmajorID); return Json(new ReturnMessage() { IsSuccess = true, Message = "生成成功" + result + "。" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "生成失败,原因:" + ex.Message }); } } /// /// 自动分配班级和生成学号 /// 注:个性化配置 /// 此为默认规则,初始学号为:班级编号+流水号,下一位学号为:对应的最大学号+1) /// 目前只支持,学号=班级编号+流水号的情况,针对学号生成规则不同、专业分方向、有两个班以上等等情况,需要进行扩展-普教版本 /// /// /// [HttpPost] public ActionResult AutoAssignClass(string newStudentIDs) { try { List list = newStudentIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => (Guid?)new Guid(x)).ToList(); string result = newStudentEnterServices.NewStudentEnterAutoAssignClass(list); return Json(new ReturnMessage() { IsSuccess = true, Message = "生成成功" + result + "。" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "生成失败,原因:" + ex.Message }); } } /// /// 录取通知书打印 /// /// public ActionResult AdmissionLetterReport() { var curUser = EMIS.Utility.FormValidate.CustomPrincipal.Current; ViewBag.LoginUserID = curUser.UserID.ToString(); var dataRangeID = StudentServices.Value.GetDataRangeID(); ViewBag.DataRangeID = dataRangeID; return View(); } /// /// 提交 /// /// /// [HttpPost] public ActionResult Submit(string newStudentIDs) { try { List list = newStudentIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => (Guid?)new Guid(x)).ToList(); string result = newStudentEnterServices.NewStudentEnterSubmit(list); return Json(new ReturnMessage() { IsSuccess = true, Message = "提交成功" + result + "。" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "提交失败,原因:" + ex.Message }); } } /// /// Excel导出 /// /// [HttpPost] public ActionResult Excel() { NpoiExcelHelper neh = new NpoiExcelHelper(); ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(null); var campusID = Request.Form["CampusDropdown"].ParseStrTo(); var collegeID = Request.Form["CollegeDropdown"].ParseStrTo(); var gradeID = Request.Form["DictionaryGrade"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryGrade"].ParseStrTo(); var standardID = Request.Form["DictionaryStandard"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryStandard"].ParseStrTo(); var educationID = Request.Form["DictionaryEducation"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryEducation"].ParseStrTo(); var learningformID = Request.Form["DictionaryLearningform"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryLearningform"].ParseStrTo(); var learnSystem = Request.Form["DictionaryLearnSystem"].ToString(); var grademajorID = Request.Form["GrademajorComboGrid"].ParseStrTo(); var classmajorID = Request.Form["ClassmajorComboGrid"].ParseStrTo(); var generalPurpose = Request.Form["DictionaryGeneralPurpose"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryGeneralPurpose"].ParseStrTo(); var generalExist = Request.Form["DictionaryGeneralExist"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryGeneralExist"].ParseStrTo(); var newStudentEnterStatus = Request.Form["DictionaryNewStudentEnterStatus"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryNewStudentEnterStatus"].ParseStrTo(); var dt = newStudentEnterServices.GetNewStudentEnterViewList(configuretView, campusID, collegeID, gradeID, standardID, educationID, learningformID, learnSystem, grademajorID, classmajorID, generalPurpose, generalExist, newStudentEnterStatus) .Select(x => new { x.ExamineeNum, x.AdmissionTicketNo, x.Name, x.SexName, x.NationName, x.PoliticsName, BirthDate = x.BirthDate.HasValue ? x.BirthDate.Value.ToString("yyyy-MM-dd") : "", x.CertificatesTypeName, x.IDNumber, x.GradeID, x.SemesterName, x.StandardCode, x.StandardID, x.StandardName, x.EducationName, x.LearningformName, LearnSystem = x.LearnSystem.HasValue ? x.LearnSystem.Value.ToString("#.#") : null, EntranceDate = x.EntranceDate.HasValue ? x.EntranceDate.Value.ToString("yyyy-MM-dd") : "", x.Score, x.Telephone, x.Address, x.Dormitory, x.RecruitPictureUrl, x.CollegeNo, x.CollegeName, x.GrademajorCode, x.GrademajorName, x.ClassmajorNo, x.ClassmajorName, x.StudentNo, x.EnrollmentNo, x.IsDoubtName, x.AssignStatusName, x.RecordStatusName, x.Remark }).ToTable(); string[] liststring = { "考生号", "准考证号","姓名", "性别", "民族", "政治面貌", "出生日期", "证件类型", "身份证号", "年级", "学期", "专业代码", "专业ID(Value)", "专业名称", RSL.Get("EducationID"), "学习形式", "学制", "入学日期", "总分", "联系电话", "通讯地址", "宿舍地址", "照片Url", RSL.Get("CollegeCode"), RSL.Get("CollegeName"), "年级专业代码", "年级专业名称", "班级编号", "班级名称", "学号", "录取通知书编号", "标识状态", "分配状态", "状态", "备注" }; neh.Export(dt, liststring, "录取名单信息" + DateTime.Now.ToString("yyyyMMdd")); return Json(new ReturnMessage() { IsSuccess = true, Message = "导出成功。" }); } } }