using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using EMIS.ViewModel; using EMIS.Web.Controls; using Bowin.Web.Controls.Mvc; using EMIS.CommonLogic.MinorGraduation.MinorGraduationSetting; using EMIS.ViewModel.MinorGraduation.MinorGraduationSetting; using Bowin.Common.Linq.Entity; using Bowin.Common.Utility; using Bowin.Common.Data; namespace EMIS.Web.Controllers.MinorGraduation.MinorGraduationSetting { [Authorization] public class MinorGraduationConditionPackageController : Controller { // // GET: /MinorGraduationConditionPackage/ public IMinorGraduationConditionPackageServices minorGraduationConditionPackageServices { get; set; } public IMinorGraduationConditionServices minorGraduationConditionServices { get; set; } /// /// 毕业公式页面 /// /// public ActionResult List() { return View(); } /// /// 毕业公式列表查询 /// /// /// [HttpPost] public ActionResult List(QueryParamsModel pararms) { ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(pararms); //是否默认 var isDefault = pararms.getExtraInt("IsDefaultDropDown") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("IsDefaultDropDown"); return base.Json(minorGraduationConditionPackageServices.GetMinorGraduationConditionPackageViewGrid(configuretView, isDefault, (int)pararms.page, (int)pararms.rows)); } /// /// 复制新增 /// /// /// public ActionResult CopyAdd(Guid minorGraduationConditionPackageID) { MinorGraduationConditionPackageView minorGraduationConditionPackageView = new MinorGraduationConditionPackageView(); minorGraduationConditionPackageView = minorGraduationConditionPackageServices.GetMinorGraduationConditionPackageView(minorGraduationConditionPackageID); return View("Edit", minorGraduationConditionPackageView); } /// /// 复制新增 /// /// /// [HttpPost] public ActionResult CopyAdd(MinorGraduationConditionPackageView minorGraduationConditionPackageView) { minorGraduationConditionPackageView.MinorGraduationConditionPackageID = Guid.Empty; return this.Edit(minorGraduationConditionPackageView); } /// /// 编辑(新增、修改) /// /// /// [HttpGet] public ActionResult Edit(Guid? minorGraduationConditionPackageID) { ViewBag.Type = Request.Params["Type"]; MinorGraduationConditionPackageView minorGraduationConditionPackageView = new MinorGraduationConditionPackageView(); if (minorGraduationConditionPackageID.HasValue && minorGraduationConditionPackageID != Guid.Empty) { minorGraduationConditionPackageView = minorGraduationConditionPackageServices.GetMinorGraduationConditionPackageView(minorGraduationConditionPackageID); } else { minorGraduationConditionPackageView.StudentTypeID = (int)CF_STUDENTTYPE.DefaultType; minorGraduationConditionPackageView.IsDefault = true; } return View(minorGraduationConditionPackageView); } /// /// 编辑(新增、修改) /// 注:判断是否默认状态(同一种学生类别,只有一种默认公式) /// 暂时不考虑当公式被引用时,不可修改公式中条件的情况 /// /// /// [HttpPost] public ActionResult Edit(MinorGraduationConditionPackageView minorGraduationConditionPackageView) { try { var minorGraduationConditionViewList = DataGrid.GetTableData("dgMinorGraduationConditionList"); minorGraduationConditionPackageServices.MinorGraduationConditionPackageEdit(minorGraduationConditionPackageView, minorGraduationConditionViewList); return Json(new ReturnMessage() { IsSuccess = true, Message = "保存成功。" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "保存失败,原因:" + ex.Message + "。" }); } } /// /// 删除(当对应的毕业公式被引用时,不可删除--毕业公式、对应的毕业条件) /// /// /// [HttpPost] public ActionResult Delete(string minorGraduationConditionPackageIDs) { try { List list = minorGraduationConditionPackageIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)) .Select(x => (Guid?)new Guid(x)).ToList(); minorGraduationConditionPackageServices.MinorGraduationConditionPackageDelete(list); return base.Json("删除成功。"); } catch (Exception ex) { return base.Json("删除失败,原因:" + ex.Message); } } /// /// 毕业条件列表(根据对应的毕业公式ID查询) /// /// /// public ActionResult MinorGraduationConditionViewList(Guid? minorGraduationConditionPackageID) { var minorGraduationConditionPackageList = new List(); if (minorGraduationConditionPackageID.HasValue) { minorGraduationConditionPackageList = minorGraduationConditionPackageServices .GetMinorGraduationConditionViewList(minorGraduationConditionPackageID); } return Json(new GridResultSet() { rows = minorGraduationConditionPackageList, total = minorGraduationConditionPackageList.Count }); } /// /// 毕业条件添加页面 /// /// public ActionResult MinorGraduationConditionList() { return View(); } /// /// 毕业条件添加页面查询列表 /// /// /// [HttpPost] public ActionResult MinorGraduationConditionList(QueryParamsModel pararms) { ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(pararms); //启用状态(默认为启用) var isCurrent = (int)CF_GeneralPurpose.IsYes; return base.Json(minorGraduationConditionServices.GetMinorGraduationConditionViewGrid(configuretView, isCurrent, (int)pararms.page, (int)pararms.rows)); } /// /// Excel导出 /// /// [HttpPost] public ActionResult Excel() { NpoiExcelHelper neh = new NpoiExcelHelper(); ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(null); //是否默认 int? isDefault = Request["IsDefaultDropDown"].ParseStrTo() == DropdownList.SELECT_ALL ? null : Request["IsDefaultDropDown"].ParseStrTo(); var minorGraduationConditionPackageIDString = Request.Form["SelectedID"]; var minorGraduationConditionPackageIDList = minorGraduationConditionPackageIDString.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => (Guid?)new Guid(x)).ToList(); var dt = minorGraduationConditionPackageServices.GetMinorGraduationConditionPackageViewList(configuretView, isDefault, minorGraduationConditionPackageIDList) .Select(x => new { x.Title, x.StudentTypeName, x.IsDefaultName }).ToTable(); string[] liststring = { "公式名称", "学生类别", "是否默认" }; neh.Export(dt, liststring, "辅修毕业公式信息" + DateTime.Now.ToString("yyyyMMdd")); return Json(new ReturnMessage() { IsSuccess = true, Message = "导出成功。" }); } } }