UniversityController.cs 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.Mvc;
  6. using EMIS.Web.Controls;
  7. using Bowin.Common.JSON;
  8. using EMIS.Entities;
  9. using Bowin.Common.Linq.Entity;
  10. using EMIS.CommonLogic.AdministrativeOrgan;
  11. using EMIS.ViewModel;
  12. using EMIS.CommonLogic.SystemServices;
  13. using Bowin.Web.Controls.Mvc;
  14. using Bowin.Common.Utility;
  15. using System.Data;
  16. using Bowin.Common.Data;
  17. using Bowin.Common.Exceptions;
  18. using EMIS.Utility;
  19. namespace EMIS.Web.Controllers.AdministrativeOrgan
  20. {
  21. [Authorization]
  22. public class UniversityController : Controller
  23. {
  24. public IUniversityServices UniversityServices { get; set; }
  25. /// <summary>
  26. /// 学校信息页面
  27. /// </summary>
  28. /// <returns></returns>
  29. public ActionResult List()
  30. {
  31. return View();
  32. }
  33. /// <summary>
  34. /// 学校信息列表查询
  35. /// </summary>
  36. /// <param name="pararms"></param>
  37. /// <returns></returns>
  38. [HttpPost]
  39. public ActionResult List(QueryParamsModel pararms)
  40. {
  41. ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(pararms);
  42. return base.Json(UniversityServices.GetUniversityViewGrid(configuretView, (int)pararms.page, (int)pararms.rows));
  43. }
  44. /// <summary>
  45. /// 学校信息下拉查询
  46. /// </summary>
  47. /// <param name="pararms"></param>
  48. /// <returns></returns>
  49. [HttpPost]
  50. public ActionResult DropdownListBanid()
  51. {
  52. List<DropdownListItem> list = UniversityServices.GetUniversityList()
  53. .Select(x => new DropdownListItem
  54. {
  55. Text = x.Name,
  56. Value = x.UniversityID.ToString()
  57. }).ToList();
  58. return base.Json(list);
  59. }
  60. /// <summary>
  61. /// 复制新增
  62. /// </summary>
  63. /// <param name="universityID"></param>
  64. /// <returns></returns>
  65. public ActionResult CopyAdd(Guid universityID)
  66. {
  67. UniversityView universityView = new UniversityView();
  68. universityView = UniversityServices.GetUniversityView(universityID);
  69. return View("Edit", universityView);
  70. }
  71. /// <summary>
  72. /// 复制新增
  73. /// </summary>
  74. /// <param name="universityView"></param>
  75. /// <returns></returns>
  76. [HttpPost]
  77. public ActionResult CopyAdd(UniversityView universityView)
  78. {
  79. universityView.UniversityID = Guid.Empty;
  80. return this.Edit(universityView);
  81. }
  82. /// <summary>
  83. /// 编辑(新增、修改,业务主键:学校代码或学校名称)
  84. /// </summary>
  85. /// <param name="universityID"></param>
  86. /// <returns></returns>
  87. [HttpGet]
  88. public ActionResult Edit(Guid? universityID)
  89. {
  90. ViewBag.Type = Request.Params["Type"];//临时性加参数控制、屏蔽列表进入无保存按钮权限
  91. UniversityView universityView = new UniversityView();
  92. if (universityID != null && universityID != Guid.Empty)
  93. {
  94. universityView = UniversityServices.GetUniversityView(universityID);
  95. }
  96. return View(universityView);
  97. }
  98. /// <summary>
  99. /// 编辑(新增、修改,业务主键:学校代码或学校名称)
  100. /// </summary>
  101. /// <param name="pararms"></param>
  102. /// <returns></returns>
  103. [HttpPost]
  104. public ActionResult Edit(UniversityView universityView)
  105. {
  106. try
  107. {
  108. UniversityServices.UniversityEdit(universityView);
  109. return Json(new ReturnMessage()
  110. {
  111. IsSuccess = true,
  112. Message = "保存成功。"
  113. });
  114. }
  115. catch (Exception ex)
  116. {
  117. return Json(new ReturnMessage()
  118. {
  119. IsSuccess = false,
  120. Message = "保存失败,原因:" + ex.Message
  121. });
  122. }
  123. }
  124. /// <summary>
  125. /// 删除
  126. /// </summary>
  127. /// <param name="universityID"></param>
  128. /// <returns></returns>
  129. [HttpPost]
  130. public ActionResult Delete(string universityIDs)
  131. {
  132. try
  133. {
  134. List<Guid?> list = universityIDs.Split(',').Where(x => !string.IsNullOrEmpty(x))
  135. .Select(x => (Guid?)new Guid(x)).ToList();
  136. UniversityServices.UniversityDelete(list);
  137. return base.Json("删除成功。");
  138. }
  139. catch (Exception ex)
  140. {
  141. string mge = ex.Message;
  142. System.Data.SqlClient.SqlException num = ExceptionHelper.GetSqlException(ex);
  143. if (num != null)
  144. {
  145. if (num.Number == 547)
  146. {
  147. mge = "请先删除与其有关联的数据,如:" + RSL.Get("Campus") + "、" + RSL.Get("College") + "等";
  148. }
  149. }
  150. return base.Json("删除失败,原因:" + mge);
  151. }
  152. }
  153. /// <summary>
  154. /// Excel导出
  155. /// </summary>
  156. /// <param name="pararms"></param>
  157. /// <returns></returns>
  158. [HttpPost]
  159. public ActionResult Excel(UniversityView pararms)
  160. {
  161. NpoiExcelHelper neh = new NpoiExcelHelper();
  162. ConfiguretView configuretView = ConfiguretExtensions.GetConfiguretermsView(null);
  163. var dt = UniversityServices.GetUniversityViewList(configuretView)
  164. .Select(x => new
  165. {
  166. x.Code,
  167. x.Name,
  168. x.SimpleName,
  169. x.EnglishName,
  170. x.ProvinceName,
  171. x.CityName,
  172. x.HeadMasterName,
  173. x.PartyManageName,
  174. x.Telephone,
  175. x.ZIPCode,
  176. x.FAX,
  177. x.Email,
  178. x.BuildDate,
  179. x.SchoolMotto,
  180. x.HistoryEvolution,
  181. x.HomePage,
  182. x.Address,
  183. x.EnglishAddress
  184. }).ToTable();
  185. string[] liststring = {
  186. "学校代码", "学校名称", "学校简称", "英文名称", "所属省份", "所属市", "校长",
  187. "党务负责人", "联系电话", "邮政编码", "传真", "电子邮件", "创校日期", "校训",
  188. "历史沿革", "主页地址", "学校地址" , "学校英文地址"
  189. };
  190. neh.Export(dt, liststring, "学校信息" + DateTime.Now.ToString("yyyyMMdd"));
  191. return Json(new ReturnMessage()
  192. {
  193. IsSuccess = true,
  194. Message = "导出成功。"
  195. });
  196. }
  197. }
  198. }