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.
 
 
 
 
 
 

153 lines
4.2 KiB

  1. using Learun.Application.Base.SystemModule;
  2. using Learun.Util;
  3. using System.Web.Mvc;
  4. namespace Learun.Application.Web.Areas.LR_SystemModule.Controllers
  5. {
  6. /// <summary>
  7. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  8. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  9. /// 创建人:陈彬彬
  10. /// 日 期:2017.04.01
  11. /// 描 述:数据库连接
  12. /// </summary>
  13. public class DatabaseLinkController : MvcControllerBase
  14. {
  15. DatabaseLinkIBLL databaseLinkIBLL = new DatabaseLinkBLL();
  16. #region 获取视图
  17. /// <summary>
  18. /// 管理页面
  19. /// </summary>
  20. /// <returns></returns>
  21. [HttpGet]
  22. public ActionResult Index()
  23. {
  24. return View();
  25. }
  26. /// <summary>
  27. /// 表单页面
  28. /// </summary>
  29. /// <returns></returns>
  30. [HttpGet]
  31. public ActionResult Form()
  32. {
  33. return View();
  34. }
  35. #endregion
  36. #region 获取数据
  37. /// <summary>
  38. /// 获取数据列表
  39. /// </summary>
  40. /// <param name="keyword">关键字</param>
  41. /// <returns></returns>
  42. [HttpGet]
  43. [AjaxOnly]
  44. public ActionResult GetList(string keyword)
  45. {
  46. var data = databaseLinkIBLL.GetListByNoConnection(keyword);
  47. return JsonResult(data);
  48. }
  49. /// <summary>
  50. /// 获取映射数据
  51. /// </summary>
  52. /// <returns></returns>
  53. [HttpGet]
  54. [AjaxOnly]
  55. public ActionResult GetMap(string ver)
  56. {
  57. var data = databaseLinkIBLL.GetMap();
  58. string md5 = Md5Helper.Encrypt(data.ToJson(), 32);
  59. if (md5 == ver)
  60. {
  61. return Success("no update");
  62. }
  63. else
  64. {
  65. var jsondata = new
  66. {
  67. data = data,
  68. ver = md5
  69. };
  70. return JsonResult(jsondata);
  71. }
  72. }
  73. /// <summary>
  74. /// 获取树形数据
  75. /// </summary>
  76. /// <returns></returns>
  77. [HttpGet]
  78. [AjaxOnly]
  79. public ActionResult GetTreeList()
  80. {
  81. var data = databaseLinkIBLL.GetTreeList();
  82. return JsonResult(data);
  83. }
  84. #endregion
  85. #region 提交数据
  86. /// <summary>
  87. /// 保存表单数据
  88. /// </summary>
  89. /// <param name="keyValue">主键</param>
  90. /// <param name="entity">实体</param>
  91. /// <returns></returns>
  92. [HttpPost]
  93. [ValidateAntiForgeryToken]
  94. [AjaxOnly]
  95. public ActionResult SaveForm(string keyValue, DatabaseLinkEntity entity)
  96. {
  97. bool res = databaseLinkIBLL.SaveEntity(keyValue, entity);
  98. if (res)
  99. {
  100. return Success("保存成功!");
  101. }
  102. else
  103. {
  104. return Fail("保存失败,连接串信息有误!");
  105. }
  106. }
  107. /// <summary>
  108. /// 删除表单数据
  109. /// </summary>
  110. /// <param name="keyValue">主键</param>
  111. /// <returns></returns>
  112. [HttpPost]
  113. [AjaxOnly]
  114. public ActionResult DeleteForm(string keyValue)
  115. {
  116. databaseLinkIBLL.VirtualDelete(keyValue);
  117. return Success("删除成功!");
  118. }
  119. #endregion
  120. #region 扩展方法
  121. /// <summary>
  122. /// 测试连接串是否正确
  123. /// </summary>
  124. /// <param name="connection">连接串</param>
  125. /// <param name="dbType">数据库类型</param>
  126. /// <param name="keyValue">主键</param>
  127. /// <returns></returns>
  128. [HttpPost]
  129. [AjaxOnly]
  130. public ActionResult TestConnection(string connection, string dbType,string keyValue)
  131. {
  132. bool res = databaseLinkIBLL.TestConnection(connection, dbType,keyValue);
  133. if (res)
  134. {
  135. return Success("连接成功!");
  136. }
  137. else
  138. {
  139. return Fail("连接失败,连接串信息有误!");
  140. }
  141. }
  142. #endregion
  143. }
  144. }