You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

180 lines
5.3 KiB

  1. using Learun.Application.AppMagager;
  2. using Learun.Util;
  3. using System.IO;
  4. using System.Web;
  5. using System.Web.Mvc;
  6. namespace Learun.Application.Web.Areas.AppManager.Controllers
  7. {
  8. /// <summary>
  9. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  10. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  11. /// 创 建:超级管理员
  12. /// 日 期:2018-07-02 15:31
  13. /// 描 述:App首页图片管理
  14. /// </summary>
  15. public class DTImgController : MvcControllerBase
  16. {
  17. private DTImgIBLL dTImgIBLL = new DTImgBLL();
  18. #region 视图功能
  19. /// <summary>
  20. /// 主页面
  21. /// <summary>
  22. /// <returns></returns>
  23. [HttpGet]
  24. public ActionResult Index()
  25. {
  26. return View();
  27. }
  28. /// <summary>
  29. /// 表单页
  30. /// <summary>
  31. /// <returns></returns>
  32. [HttpGet]
  33. public ActionResult Form()
  34. {
  35. return View();
  36. }
  37. #endregion
  38. #region 获取数据
  39. /// <summary>
  40. /// 获取列表数据
  41. /// <summary>
  42. /// <returns></returns>
  43. [HttpGet]
  44. [AjaxOnly]
  45. public ActionResult GetList()
  46. {
  47. var data = dTImgIBLL.GetList();
  48. return JsonResult(data);
  49. }
  50. /// <summary>
  51. /// 获取列表分页数据
  52. /// <param name="pagination">分页参数</param>
  53. /// <summary>
  54. /// <returns></returns>
  55. [HttpGet]
  56. [AjaxOnly]
  57. public ActionResult GetPageList(string pagination, string queryJson)
  58. {
  59. Pagination paginationobj = pagination.ToObject<Pagination>();
  60. var data = dTImgIBLL.GetPageList(paginationobj, queryJson);
  61. var jsonData = new
  62. {
  63. rows = data,
  64. total = paginationobj.total,
  65. page = paginationobj.page,
  66. records = paginationobj.records
  67. };
  68. return JsonResult(jsonData);
  69. }
  70. /// <summary>
  71. /// 获取表单数据
  72. /// <param name="keyValue">主键</param>
  73. /// <summary>
  74. /// <returns></returns>
  75. [HttpGet]
  76. [AjaxOnly]
  77. public ActionResult GetFormData(string keyValue)
  78. {
  79. var data = dTImgIBLL.GetEntity(keyValue);
  80. return JsonResult(data);
  81. }
  82. #endregion
  83. #region 提交数据
  84. /// <summary>
  85. /// 删除实体数据
  86. /// <param name="keyValue">主键</param>
  87. /// <summary>
  88. /// <returns></returns>
  89. [HttpPost]
  90. [AjaxOnly]
  91. public ActionResult DeleteForm(string keyValue)
  92. {
  93. dTImgIBLL.DeleteEntity(keyValue);
  94. return Success("删除成功!");
  95. }
  96. /// <summary>
  97. /// 保存实体数据(新增、修改)
  98. /// <param name="keyValue">主键</param>
  99. /// <summary>
  100. /// <returns></returns>
  101. [HttpPost]
  102. [ValidateAntiForgeryToken]
  103. [AjaxOnly]
  104. public ActionResult SaveForm(string keyValue, DTImgEntity entity)
  105. {
  106. dTImgIBLL.SaveEntity(keyValue, entity);
  107. return Success("保存成功!");
  108. }
  109. /// <summary>
  110. /// 保存图片和存储数据
  111. /// </summary>
  112. /// <param name="keyValue">主键</param>
  113. /// <param name="entity">实体</param>
  114. /// <returns></returns>
  115. [HttpPost]
  116. public ActionResult UploadFile(string keyValue, DTImgEntity entity)
  117. {
  118. HttpFileCollection files = System.Web.HttpContext.Current.Request.Files;
  119. //没有文件上传,直接返回
  120. if (files[0].ContentLength == 0 || string.IsNullOrEmpty(files[0].FileName))
  121. {
  122. return HttpNotFound();
  123. }
  124. string FileEextension = Path.GetExtension(files[0].FileName);
  125. entity.F_FileName = FileEextension;
  126. dTImgIBLL.SaveEntity(keyValue, entity);
  127. string fileHeadImg = Config.GetValue("fileAppDTImg");
  128. string fullFileName = string.Format("{0}/{1}{2}", fileHeadImg, entity.F_Id, FileEextension);
  129. //创建文件夹,保存文件
  130. string path = Path.GetDirectoryName(fullFileName);
  131. Directory.CreateDirectory(path);
  132. files[0].SaveAs(fullFileName);
  133. return Success("保存成功。");
  134. }
  135. /// <summary>
  136. /// 获取设置图片
  137. /// </summary>
  138. /// <param name="keyValue">主键</param>
  139. /// <returns></returns>
  140. [HttpGet]
  141. public ActionResult GetImg(string keyValue)
  142. {
  143. dTImgIBLL.GetImg(keyValue);
  144. return Success("获取成功。");
  145. }
  146. /// <summary>
  147. /// 启用/停用
  148. /// </summary>
  149. /// <param name="keyValue">主键</param>
  150. /// <param name="state">状态1启用0禁用</param>
  151. /// <returns></returns>
  152. [HttpPost]
  153. [AjaxOnly]
  154. public ActionResult UpDateSate(string keyValue, int state)
  155. {
  156. dTImgIBLL.UpdateState(keyValue, state);
  157. return Success((state == 1 ? "启用" : "禁用") + "成功!");
  158. }
  159. #endregion
  160. }
  161. }