using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using Bowin.Common.Data; using Bowin.Common.Utility; using Bowin.Web.Controls.Mvc; using EMIS.CommonLogic.ScoreManage; using EMIS.ViewModel; using EMIS.Web.Controls; using EMIS.Utility.FormValidate; using EMIS.ViewModel.ScoreManage; namespace EMIS.Web.Controllers.ScoreManage { [Authorization] public class MisconductController : Controller { public IMisconductServices MisconductServices { get; set; } /// /// 违纪名单页面 /// /// public ActionResult List() { ViewBag.StartStatusID = MisconductServices.GetStartStatus(); return View(); } public ActionResult Edit(Guid? misconductID) { MisconductView misconductView = new MisconductView(); if (misconductID.HasValue) { misconductView = this.MisconductServices.GetMisconductView(misconductID.Value); } else { //默认值 misconductView.SchoolyearID = BaseExtensions.GetCurrentSchoolYearID(); } return View(misconductView); } public ActionResult View(Guid misconductID) { MisconductView misconductView = new MisconductView(); misconductView = this.MisconductServices.GetMisconductView(misconductID); return View(misconductView); } [HttpPost] public ActionResult List(QueryParamsModel pararms) { ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(pararms); var schoolyearID = pararms.getExtraGuid("ddlSchoolYear"); var collegeID = pararms.getExtraGuid("cbgCollege"); var yearID = pararms.getExtraInt("ddlYear") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("ddlYear"); var standardID = pararms.getExtraInt("cbgStandard") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("cbgStandard"); var classmajorID = pararms.getExtraGuid("cbgClassmajor"); var examsCategoryID = pararms.getExtraInt("ddlExamsCategory") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("ddlExamsCategory"); var examsStateID = pararms.getExtraInt("ddlExamsState") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("ddlExamsState"); var recordstatus = pararms.getExtraInt("ddlRecordStatus") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("ddlRecordStatus"); var learningformID = pararms.getExtraInt("LearningformDictionaryDropDown") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("LearningformDictionaryDropDown"); var education = pararms.getExtraInt("DictionaryEducation") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryEducation"); var LearnSystem = pararms.getExtraString("DictionaryLearnSystem"); return Json(MisconductServices.GetMisconductGridView(configuretView, schoolyearID, collegeID, yearID, standardID, classmajorID, examsCategoryID, examsStateID, recordstatus,learningformID,education,LearnSystem, (int)pararms.page, (int)pararms.rows)); } [HttpPost] public ActionResult Edit(MisconductView misconductView) { try { this.MisconductServices.Save(misconductView); return Json(new ReturnMessage { IsSuccess = true, Message = "保存成功。" }); } 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 schoolyearID = Request.Form["ddlSchoolYear"].ParseStrTo(); var collegeID = Request.Form["cbgCollege"].ParseStrTo(); var yearID = Request.Form["ddlYear"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["ddlYear"].ParseStrTo(); var standardID = Request.Form["cbgStandard"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["cbgStandard"].ParseStrTo(); var classmajorID = Request.Form["cbgClassmajor"].ParseStrTo(); var examsCategoryID = Request.Form["ddlExamsCategory"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["ddlExamsCategory"].ParseStrTo(); var examsStateID = Request.Form["ddlExamsState"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["ddlExamsState"].ParseStrTo(); var recordstatus = Request.Form["ddlRecordStatus"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["ddlRecordStatus"].ParseStrTo(); var learningformID = Request.Form["LearningformDictionaryDropDown"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["LearningformDictionaryDropDown"].ParseStrTo(); var education = Request.Form["DictionaryEducation"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request.Form["DictionaryEducation"].ParseStrTo(); var LearnSystem = Request.Form["DictionaryLearnSystem"].ToString(); var dt = MisconductServices.GetMisconductViewList(configuretView, schoolyearID, collegeID, yearID, standardID, classmajorID, examsCategoryID, examsStateID, recordstatus, learningformID, education, LearnSystem).Select(x => new { x.LoginID, x.Name, x.ClassmajorName, x.SchoolyearCode, x.CourseCode, x.CourseName, x.ExamsCategoryName, x.ExamsStateName, x.RecordStatusName }).ToTable(); string[] liststring = { "学号", "姓名", "班级", "学年学期", "课程代码", "课程名称", "考试性质", "考试状态", "状态" }; neh.Export(dt, liststring, "违纪名单"); return RedirectToAction("MsgShow", "Common", new { msg = "导出成功!", url = Url.Action("List").AddMenuParameter() }); } [HttpPost] public ActionResult Submit(string misconductIDs) { var misconductIDList = misconductIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => new Guid(x)).ToList(); var curUserID = CustomPrincipal.Current.UserID; if (misconductIDList.Count == 0) { return Json(new ReturnMessage { IsSuccess = false, Message = "请选择至少一条记录进行提交。" }); } try { this.MisconductServices.StartUp(misconductIDList, curUserID); return Json(new ReturnMessage { IsSuccess = true, Message = "提交成功。" }); } catch (Exception ex) { return Json(new ReturnMessage { IsSuccess = false, Message = "提交失败:" + ex.Message }); } } [HttpPost] public ActionResult Approve(string misconductIDs, Guid actionID, string comment) { var misconductIDList = misconductIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => new Guid(x)).ToList(); var curUserID = CustomPrincipal.Current.UserID; if (misconductIDList.Count == 0) { return Json(new ReturnMessage { IsSuccess = false, Message = "请选择至少一条记录进行审核。" }); } try { this.MisconductServices.Approve(misconductIDList, curUserID, actionID, comment); return Json(new ReturnMessage { IsSuccess = true, Message = "审核成功。" }); } catch (Exception ex) { return Json(new ReturnMessage { IsSuccess = false, Message = "审核失败:" + ex.Message }); } } [HttpPost] public ActionResult Cancel(string misconductIDs, string comment) { var misconductIDList = misconductIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => new Guid(x)).ToList(); var curUserID = CustomPrincipal.Current.UserID; if (misconductIDList.Count == 0) { return Json(new ReturnMessage { IsSuccess = false, Message = "请选择至少一条记录进行撤销。" }); } try { this.MisconductServices.Cancel(misconductIDList, curUserID, comment); return Json(new ReturnMessage { IsSuccess = true, Message = "撤销成功。" }); } catch (Exception ex) { return Json(new ReturnMessage { IsSuccess = false, Message = "撤销失败:" + ex.Message }); } } [HttpPost] public ActionResult Delete(string misconductIDs) { var misconductIDList = misconductIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => new Guid(x)).ToList(); try { this.MisconductServices.Delete(misconductIDList); return Json(new ReturnMessage { IsSuccess = true, Message = "删除成功。" }); } catch (Exception ex) { return Json(new ReturnMessage { IsSuccess = false, Message = "删除失败:" + ex.Message }); } } [HttpPost] public ActionResult GetMisconductExamsStateList(DropdownListBindType? bindType) { List list = MisconductServices.GetMisconductExamsStateList() .Select(x => new DropdownListItem { Text = x.Name, Value = x.Value }).ToList(); DropdownListBindType dbt = bindType == null ? DropdownListBindType.SelectAll : bindType.Value; DropdownList.FormatDropdownItemList(dbt, list); return base.Json(list); } [HttpPost] public ActionResult GetCoursematerial(QueryParamsModel pararms, Guid? schoolyearID, Guid? userID) { ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(pararms); return Json(MisconductServices.GetMisconductCoursematerialGridView(configuretView, schoolyearID, userID, (int)pararms.page, (int)pararms.rows)); } } }