using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Bowin.Common.Utility;
using Bowin.Common.Data;
using Bowin.Common.JSON;
using Bowin.Web.Controls.Mvc;
using EMIS.Web.Controls;
using EMIS.Utility;
using EMIS.ViewModel;
using EMIS.ViewModel.EnrollManage.SpecialtyManage;
using EMIS.CommonLogic.EnrollManage.SpecialtyManage;
namespace EMIS.Web.Controllers.EnrollManage.SpecialtyManage
{
[Authorization]
public class SpecialtyClassSettingController : Controller
{
public ISpecialtyClassSettingServices SpecialtyClassSettingServices { get; set; }
///
/// 专业分班页面
///
///
public ActionResult List()
{
return View();
}
///
/// 专业信息页面列表查询
///
///
///
[HttpPost]
public ActionResult List(QueryParamsModel pararms)
{
ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(pararms);
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");
return base.Json(SpecialtyClassSettingServices.GetSpecialtyClassSettingViewGrid(configuretView, standardID, educationID, learningformID, learnSystem, (int)pararms.page, (int)pararms.rows));
}
///
/// 复制新增
///
///
///
public ActionResult CopyAdd(Guid specialtyClassSettingID)
{
SpecialtyClassSettingView specialtyClassSettingView = new SpecialtyClassSettingView();
specialtyClassSettingView = SpecialtyClassSettingServices.GetSpecialtyClassSettingView(specialtyClassSettingID);
return View("Edit", specialtyClassSettingView);
}
///
/// 复制新增
///
///
///
[HttpPost]
public ActionResult CopyAdd(SpecialtyClassSettingView specialtyClassSettingView)
{
specialtyClassSettingView.SpecialtyClassSettingID = Guid.Empty;
return this.Edit(specialtyClassSettingView);
}
///
/// 编辑(新增、修改,业务主键:专业信息ID)
///
///
///
[HttpGet]
public ActionResult Edit(Guid? specialtyClassSettingID)
{
SpecialtyClassSettingView specialtyClassSettingView = new SpecialtyClassSettingView();
if (specialtyClassSettingID.HasValue && specialtyClassSettingID != Guid.Empty)
{
specialtyClassSettingView = SpecialtyClassSettingServices.GetSpecialtyClassSettingView(specialtyClassSettingID);
}
else
{
specialtyClassSettingView.PlanRecruitStudentCount = 0;
specialtyClassSettingView.ClassArrangeStudentCount = 0;
specialtyClassSettingView.ClassMaxStudentCount = 0;
specialtyClassSettingView.ClassNumber = 1;
}
return View(specialtyClassSettingView);
}
///
/// 编辑(新增、修改,业务主键:专业信息ID)
///
///
///
[HttpPost]
public ActionResult Edit(SpecialtyClassSettingView specialtyClassSettingView)
{
try
{
SpecialtyClassSettingServices.SpecialtyClassSettingEdit(specialtyClassSettingView);
return Json(new ReturnMessage()
{
IsSuccess = true,
Message = "保存成功。"
});
}
catch (Exception ex)
{
return Json(new ReturnMessage()
{
IsSuccess = false,
Message = "保存失败,原因:" + ex.Message
});
}
}
///
/// 专业分班批量新增
///
///
[HttpGet]
public ActionResult SpecialtyClassSettingBatchAdd()
{
SpecialtyClassSettingView specialtyClassSettingView = new SpecialtyClassSettingView();
return View(specialtyClassSettingView);
}
///
/// 专业分班批量新增
///
///
///
public ActionResult SpecialtyClassSettingBatchAdd(SpecialtyClassSettingView specialtyClassSettingView)
{
try
{
var specialtyIDList = Request["specialtyIDs"].JsonToObject>();
string result = SpecialtyClassSettingServices.SpecialtyClassSettingBatchAdd(specialtyIDList, specialtyClassSettingView);
return Json(new ReturnMessage()
{
IsSuccess = true,
Message = "新增成功" + result + "。"
});
}
catch (Exception ex)
{
return Json(new ReturnMessage()
{
IsSuccess = false,
Message = "新增失败,原因:" + ex.Message
});
}
}
///
/// 查询专业分班中未新增的专业信息SpecialtyView
///
///
///
[HttpPost]
public ActionResult SpecialtyNoAddList(QueryParamsModel pararms)
{
ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(pararms);
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 scienceclassID = pararms.getExtraInt("DictionaryScienceclass") == DropdownList.SELECT_ALL ? null : pararms.getExtraInt("DictionaryScienceclass");
return base.Json(SpecialtyClassSettingServices.GetSpecialtyViewNoAdd(configuretView, standardID, educationID, learningformID, learnSystem, scienceclassID, (int)pararms.page, (int)pararms.rows));
}
///
/// 批量修改(计划招生人数、每班预招人数、每班最大人数)
///
///
///
///
///
///
public ActionResult BatchModifyControl(string specialtyClassSettingIDs, int? planRecruitStudentCount, int? classArrangeStudentCount, int? classMaxStudentCount)
{
try
{
List list = specialtyClassSettingIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => (Guid?)new Guid(x)).ToList();
string result = SpecialtyClassSettingServices.BatchModify(list, planRecruitStudentCount, classArrangeStudentCount, classMaxStudentCount);
return Json(new ReturnMessage()
{
IsSuccess = true,
Message = "批量修改成功" + result + "。"
});
}
catch (Exception ex)
{
return Json(new ReturnMessage()
{
IsSuccess = false,
Message = "批量修改失败,原因:" + ex.Message
});
}
}
///
/// 删除
///
///
///
[HttpPost]
public ActionResult Delete(string specialtyClassSettingIDs)
{
try
{
List list = specialtyClassSettingIDs.Split(',').Where(x => !string.IsNullOrEmpty(x)).Select(x => (Guid?)new Guid(x)).ToList();
SpecialtyClassSettingServices.SpecialtyClassSettingDelete(list);
return base.Json(new ReturnMessage { IsSuccess = true, Message = "删除成功。" });
}
catch (Exception ex)
{
return base.Json(new ReturnMessage { IsSuccess = false, Message = "删除失败,原因:" + ex.Message });
}
}
///
/// Excel导出
///
///
///
[HttpPost]
public ActionResult Excel()
{
try
{
NpoiExcelHelper neh = new NpoiExcelHelper();
ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(null);
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 dt = SpecialtyClassSettingServices.GetSpecialtyClassSettingViewList(configuretView, standardID, educationID, learningformID, learnSystem)
.Select(x => new
{
x.Code,
x.StandardID,
x.Name,
x.EducationName,
x.LearningformName,
LearnSystem = x.LearnSystem.HasValue ? x.LearnSystem.Value.ToString("#.#") : null,
x.ScienceclassName,
x.PropertyName,
x.StandardTitleName,
x.StandardLevelName,
x.PlanRecruitStudentCount,
x.ClassArrangeStudentCount,
x.ClassMaxStudentCount,
x.ClassNumber
}).ToTable();
string[] liststring = {
"专业代码", "专业ID(Value)", "专业名称", RSL.Get("EducationID"),
"学习形式", "学制", "专业科类", "专业属性", "专业称号", "称号级别",
"计划招生人数", "每班预招人数", "每班最大人数", "班级个数"
};
neh.Export(dt, liststring, "专业分班信息" + DateTime.Now.ToString("yyyyMMdd"));
return Json(new ReturnMessage()
{
IsSuccess = true,
Message = "导出成功。"
});
}
catch (Exception ex)
{
return Json(new ReturnMessage()
{
IsSuccess = false,
Message = "导出失败,原因:" + ex.Message
});
}
}
}
}