AreaController.cs 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. using LeaRun.Application.Busines.SystemManage;
  2. using LeaRun.Application.Code;
  3. using LeaRun.Application.Entity.SystemManage;
  4. using LeaRun.Util;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Web.Mvc;
  8. namespace LeaRun.Application.Web.Areas.SystemManage.Controllers
  9. {
  10. /// <summary>
  11. /// 版 本 6.1
  12. /// Copyright (c) 2013-2016 上海力软信息技术有限公司
  13. /// 创建人:佘赐雄
  14. /// 日 期:2015.11.12 16:40
  15. /// 描 述:区域管理
  16. /// </summary>
  17. public class AreaController : MvcControllerBase
  18. {
  19. private AreaBLL areaBLL = new AreaBLL();
  20. #region 视图功能
  21. /// <summary>
  22. /// 区域管理
  23. /// </summary>
  24. /// <returns></returns>
  25. [HttpGet]
  26. [HandlerAuthorize(PermissionMode.Enforce)]
  27. public ActionResult Index()
  28. {
  29. return View();
  30. }
  31. /// <summary>
  32. /// 区域表单
  33. /// </summary>
  34. /// <returns></returns>
  35. [HttpGet]
  36. [HandlerAuthorize(PermissionMode.Enforce)]
  37. public ActionResult Form()
  38. {
  39. return View();
  40. }
  41. /// <summary>
  42. /// 区域详细
  43. /// </summary>
  44. /// <returns></returns>
  45. [HttpGet]
  46. [HandlerAuthorize(PermissionMode.Enforce)]
  47. public ActionResult Detail()
  48. {
  49. return View();
  50. }
  51. #endregion
  52. #region 获取数据
  53. /// <summary>
  54. /// 区域列表
  55. /// </summary>
  56. /// <param name="value">当前主键</param>
  57. /// <returns>返回树形Json</returns>
  58. [HttpGet]
  59. public ActionResult GetTreeJson(string value)
  60. {
  61. string parentId = value == null ? "0" : value;
  62. var filterdata = areaBLL.GetList(parentId).ToList();
  63. StringBuilder sb = new StringBuilder();
  64. sb.Append("[");
  65. if (filterdata.Count > 0)
  66. {
  67. foreach (AreaEntity item in filterdata)
  68. {
  69. bool hasChildren = areaBLL.GetList(item.AreaId).ToList().Count == 0 ? false : true;
  70. sb.Append("{");
  71. sb.Append("\"id\":\"" + item.AreaId + "\",");
  72. sb.Append("\"text\":\"" + item.AreaName + "\",");
  73. sb.Append("\"value\":\"" + item.AreaId + "\",");
  74. sb.Append("\"isexpand\":false,");
  75. sb.Append("\"complete\":false,");
  76. sb.Append("\"hasChildren\":" + hasChildren.ToString().ToLower() + "");
  77. sb.Append("},");
  78. }
  79. sb = sb.Remove(sb.Length - 1, 1);
  80. }
  81. sb.Append("]");
  82. return Content(sb.ToString());
  83. }
  84. /// <summary>
  85. /// 区域列表
  86. /// </summary>
  87. /// <param name="value">当前主键</param>
  88. /// <param name="keyword">关键字查询</param>
  89. /// <returns>返回列表Json</returns>
  90. [HttpGet]
  91. public ActionResult GetListJson(string value, string keyword)
  92. {
  93. string parentId = value == null ? "0" : value;
  94. var data = areaBLL.GetList(parentId, keyword).ToList();
  95. return Content(data.ToJson());
  96. }
  97. /// <summary>
  98. /// 区域列表(主要是绑定下拉框)
  99. /// </summary>
  100. /// <param name="parentId">节点Id</param>
  101. /// <returns>返回列表Json</returns>
  102. [HttpGet]
  103. public ActionResult GetAreaListJson(string parentId)
  104. {
  105. var data = areaBLL.GetAreaList(parentId == null ? "0" : parentId);
  106. return Content(data.ToJson());
  107. }
  108. /// <summary>
  109. /// 区域实体
  110. /// </summary>
  111. /// <param name="keyValue">主键值</param>
  112. /// <returns>返回对象Json</returns>
  113. [HttpGet]
  114. public ActionResult GetFormJson(string keyValue)
  115. {
  116. var data = areaBLL.GetEntity(keyValue);
  117. return Content(data.ToJson());
  118. }
  119. #endregion
  120. #region 提交数据
  121. /// <summary>
  122. /// 删除区域
  123. /// </summary>
  124. /// <param name="keyValue">主键值</param>
  125. /// <returns></returns>
  126. [HttpPost]
  127. [ValidateAntiForgeryToken]
  128. [AjaxOnly]
  129. [HandlerAuthorize(PermissionMode.Enforce)]
  130. public ActionResult RemoveForm(string keyValue)
  131. {
  132. areaBLL.RemoveForm(keyValue);
  133. return Success("删除成功。");
  134. }
  135. /// <summary>
  136. /// 保存区域表单(新增、修改)
  137. /// </summary>
  138. /// <param name="keyValue">主键值</param>
  139. /// <param name="areaEntity">区域实体</param>
  140. /// <returns></returns>
  141. [HttpPost]
  142. [ValidateAntiForgeryToken]
  143. [AjaxOnly]
  144. public ActionResult SaveForm(string keyValue, AreaEntity areaEntity)
  145. {
  146. areaBLL.SaveForm(keyValue, areaEntity);
  147. return Success("操作成功。");
  148. }
  149. #endregion
  150. }
  151. }