using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using EMIS.CommonLogic.GraduationManage.GraduationSetting; using EMIS.ViewModel; using EMIS.Web.Controls; using EMIS.ViewModel.GraduationManage.GraduationSetting; using Bowin.Common.Utility; using Bowin.Common.Data; using Bowin.Web.Controls.Mvc; using Bowin.Common.Linq.Entity; namespace EMIS.Web.Controllers.GraduationManage.GraduationSetting { [Authorization] public class GraduationConditionPackageController : Controller { public IGraduationConditionPackageServices GraduationConditionPackageServices { get; set; } public IGraduationConditionServices GraduationConditionServices { 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(GraduationConditionPackageServices.GetGradConditionPackageViewGrid(configuretView, isDefault, (int)pararms.page, (int)pararms.rows)); } /// /// 复制新增 /// /// /// public ActionResult CopyAdd(Guid GraduationConditionPackageID) { GraduationConditionPackageView graduationConditionPackageView = new GraduationConditionPackageView(); graduationConditionPackageView = GraduationConditionPackageServices.GetGraduationConditionPackageView(GraduationConditionPackageID); return View("Edit", graduationConditionPackageView); } /// /// 复制新增 /// /// /// [HttpPost] public ActionResult CopyAdd(GraduationConditionPackageView graduationConditionPackageView) { graduationConditionPackageView.GraduationConditionPackageID = Guid.Empty; return this.Edit(graduationConditionPackageView); } /// /// 编辑(新增、修改) /// /// /// [HttpGet] public ActionResult Edit(Guid? GraduationConditionPackageID) { ViewBag.Type = Request.Params["Type"];//临时性加参数控制、屏蔽列表进入无保存按钮权限 GraduationConditionPackageView graduationConditionPackageView = new GraduationConditionPackageView(); if (GraduationConditionPackageID.HasValue && GraduationConditionPackageID != Guid.Empty) { graduationConditionPackageView = GraduationConditionPackageServices.GetGraduationConditionPackageView(GraduationConditionPackageID); } else { graduationConditionPackageView.StudentTypeID = (int)CF_STUDENTTYPE.DefaultType; graduationConditionPackageView.IsDefault = true; } return View(graduationConditionPackageView); } /// /// 编辑(新增、修改) /// 注:判断是否默认状态(同一种学生类别,只有一种默认公式) /// 暂时不考虑当公式被引用时,不可修改公式中条件的情况 /// /// /// [HttpPost] public ActionResult Edit(GraduationConditionPackageView graduationConditionPackageView) { try { var graduationConditionViewList = DataGrid.GetTableData("dgGraduationConditionList"); GraduationConditionPackageServices.GraduationConditionPackageEdit(graduationConditionPackageView, graduationConditionViewList); return Json(new ReturnMessage() { IsSuccess = true, Message = "保存成功。" }); } catch (Exception ex) { return Json(new ReturnMessage() { IsSuccess = false, Message = "保存失败,原因:" + ex.Message + "。" }); } } /// /// 删除(当对应的毕业公式被引用时,不可删除--毕业公式、对应的毕业条件) /// /// /// [HttpPost] public ActionResult Delete(string graduationConditionPackageIDs) { try { List list = graduationConditionPackageIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)) .Select(x => (Guid?)new Guid(x)).ToList(); GraduationConditionPackageServices.GraduationConditionPackageDelete(list); return base.Json("删除成功。"); } catch (Exception ex) { return base.Json("删除失败,原因:" + ex.Message); } } /// /// 毕业条件添加页面 /// /// public ActionResult GraduationConditionList() { return View(); } /// /// 毕业条件添加页面查询列表 /// /// /// [HttpPost] public ActionResult GraduationConditionList(QueryParamsModel pararms) { ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(pararms); var graduationConditionPackageID = Request["GraduationConditionPackageID"].ParseStrTo(); var isCurrent = (int)CF_GeneralPurpose.IsYes; return base.Json(GraduationConditionPackageServices.GetGraduationConditionNoViewGrid(configuretView, graduationConditionPackageID, isCurrent, (int)pararms.page, (int)pararms.rows)); } /// /// 毕业公式对应的毕业条件列表页面(根据对应的毕业公式ID查询) /// /// /// public ActionResult GraduationConditionViewList(Guid? GraduationConditionPackageID) { var graduationConditionPackageList = new List(); if (GraduationConditionPackageID.HasValue && GraduationConditionPackageID != Guid.Empty) { graduationConditionPackageList = GraduationConditionPackageServices.GetGraduationConditionList(GraduationConditionPackageID); } return Json(new GridResultSet() { rows = graduationConditionPackageList, total = graduationConditionPackageList.Count }); } /// /// 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 dt = GraduationConditionPackageServices.GetGradConditionPackageViewList(configuretView, isDefault) .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 = "导出成功。" }); } } }