using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using EMIS.ViewModel.ExaminationApply; using EMIS.CommonLogic.ExaminationApply; using EMIS.ViewModel; using EMIS.Web.Controls; using Bowin.Common.Data; using Bowin.Common.Utility; using Bowin.Common.Exceptions; using Bowin.Web.Controls.Mvc; namespace EMIS.Web.Controllers.ExaminationApply { [Authorization] public class ExaminationSubjectsController : Controller { public IExaminationSubjectsServices ExaminationSubjectServices { get; set; } // // GET: /ExaminationSubjects/ public ActionResult List() { return View(); } /// /// 列表查询 /// /// /// [HttpPost] public ActionResult List(QueryParamsModel pararms) { ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(pararms); var examinationFormID = pararms.getExtraInt("ExaminationFormDropdown") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("ExaminationFormDropdown"); ; if (configuretView.Attribute == Bowin.Web.Controls.Mvc.DropdownList.SELECT_ALL.ToString()) configuretView.Attribute = ""; return base.Json(ExaminationSubjectServices.GetExaminationSubjectViewList(configuretView, examinationFormID, (int)pararms.page, (int)pararms.rows)); } public ActionResult Edit(Guid? ExaminationSubjectID) { ExaminationSubjectView examinationSubjectView = new ExaminationSubjectView(); if (ExaminationSubjectID != null && ExaminationSubjectID != Guid.Empty) { examinationSubjectView = ExaminationSubjectServices.GetExaminationSubjectViewInfo(ExaminationSubjectID); } ViewBag.ID = ExaminationSubjectID; return View(examinationSubjectView); } /// /// 修改 /// /// [HttpPost] public ActionResult Edit(ExaminationSubjectView examinationSubjectView) { try { var user = HttpContext.User as EMIS.Utility.FormValidate.CustomPrincipal; ExaminationSubjectServices.Save(examinationSubjectView); return Json(new ReturnMessage() { IsSuccess = true, Message = "保存成功!" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "保存失败:" + ex.Message }); } } /// /// 删除 /// /// /// [HttpPost] public ActionResult Delete(string examinationSubjectIDs) { try { var examinationSubjectIDList = examinationSubjectIDs.Split(',').Select(x => (Guid?)new Guid(x)).ToList(); ExaminationSubjectServices.Delete(examinationSubjectIDList); return base.Json("删除成功"); } catch (Exception ex) { string mge = ex.Message; System.Data.SqlClient.SqlException num = ExceptionHelper.GetSqlException(ex); if (num != null) { if (num.Number == 547) mge = "请先删除所有关联的数据,如:要求通过科目为该考试科目的数据、或者考场安排等"; } return base.Json("删除失败,原因:" + mge + "!"); } } [HttpPost] public ActionResult Excel() { NpoiExcelHelper neh = new NpoiExcelHelper(); ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(null); var examinationFormID = Request.Form["ExaminationFormDropdown"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["ExaminationFormDropdown"].ParseStrTo(); ; if (configuretView.Attribute == Bowin.Web.Controls.Mvc.DropdownList.SELECT_ALL.ToString()) configuretView.Attribute = ""; var dt = ExaminationSubjectServices.GetExaminationSubjectViewList(configuretView, examinationFormID, null).Select(x => new { x.Name, //ExaminationDate = (x.ExaminationDate.HasValue ? x.ExaminationDate.Value.ToString("yyyy-MM-dd") : ""), //x.ExaminationTypeName, x.ExaminationFormName, //x.PeopleNumLimit, //x.SchoolyearCode }).ToTable(); string[] liststring = { "考试科目", "考试性质"}; neh.Export(dt, liststring, "考试科目信息"); return RedirectToAction("MsgShow", "Common", new { msg = "导出成功!", url = Url.Content("~/ExaminationSubjects/List").AddMenuParameter() }); } public ActionResult Validation(string ExaminationTypeIDs, string SchoolyearIDs, string ExaminationFormIDs, string names) { List list2 = new List(); foreach (var i in ExaminationFormIDs.Split(',')) { list2.Add(Convert.ToInt32(i)); } List list3 = new List(); foreach (var i in names.Split(',')) { list3.Add(i); } string[] result = ExaminationSubjectServices.Validation(list2, list3); return Json(new ReturnMessage() { IsSuccess = result[0] == "true" ? true : false, Message = result[1] }); } } }