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.
 
 
 
 
 
 

128 lines
4.8 KiB

  1. using Learun.DataBase.Repository;
  2. using Learun.Util;
  3. using System.Collections.Generic;
  4. using System.Data;
  5. namespace Learun.Application.Base.SystemModule
  6. {
  7. /// <summary>
  8. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  9. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  10. /// 创建人:陈彬彬
  11. /// 日 期:2017.03.08
  12. /// 描 述:数据库连接
  13. /// </summary>
  14. public interface DatabaseLinkIBLL
  15. {
  16. #region 获取数据
  17. /// <summary>
  18. /// 获取列表数据
  19. /// </summary>
  20. /// <returns></returns>
  21. List<DatabaseLinkEntity> GetList();
  22. /// <summary>
  23. /// 获取映射数据
  24. /// </summary>
  25. /// <returns></returns>
  26. Dictionary<string, DatabaseLinkModel> GetMap();
  27. /// <summary>
  28. /// 获取列表数据(去掉连接串地址信息)
  29. /// </summary>
  30. /// <returns></returns>
  31. List<DatabaseLinkEntity> GetListByNoConnection();
  32. /// <summary>
  33. /// 获取列表数据
  34. /// </summary>
  35. /// <param name="keyword">关键字</param>
  36. /// <returns></returns>
  37. List<DatabaseLinkEntity> GetListByNoConnection(string keyword);
  38. /// <summary>
  39. /// 获取树形数据
  40. /// </summary>
  41. /// <returns></returns>
  42. List<TreeModel> GetTreeList();
  43. /// <summary>
  44. /// 获取树形数据
  45. /// </summary>
  46. /// <returns></returns>
  47. List<TreeModel> GetTreeListEx();
  48. /// <summary>
  49. /// 获取数据连接实体
  50. /// </summary>
  51. /// <param name="databaseLinkId">主键</param>
  52. /// <returns></returns>
  53. DatabaseLinkEntity GetEntity(string databaseLinkId);
  54. #endregion
  55. #region 提交数据
  56. /// <summary>
  57. /// 删除自定义查询条件
  58. /// </summary>
  59. /// <param name="keyValue">主键</param>
  60. void VirtualDelete(string keyValue);
  61. /// <summary>
  62. /// 保存自定义查询(新增、修改)
  63. /// </summary>
  64. /// <param name="keyValue">主键值</param>
  65. /// <param name="departmentEntity">部门实体</param>
  66. /// <returns></returns>
  67. bool SaveEntity(string keyValue, DatabaseLinkEntity databaseLinkEntity);
  68. #endregion
  69. #region 扩展方法
  70. /// <summary>
  71. /// 测试数据数据库是否能连接成功
  72. /// </summary>
  73. /// <param name="connection">连接串</param>
  74. /// <param name="dbType">数据库类型</param>
  75. /// <param name="keyValue">主键</param>
  76. bool TestConnection(string connection, string dbType, string keyValue);
  77. /// <summary>
  78. /// 根据指定数据库执行sql语句
  79. /// </summary>
  80. /// <param name="databaseLinkId">数据库主键</param>
  81. /// <param name="sql">sql语句</param>
  82. /// <param name="dbParameter">参数</param>
  83. void ExecuteBySql(string databaseLinkId, string sql, object dbParameter = null);
  84. /// <summary>
  85. /// 根据指定数据库执行存储过程
  86. /// </summary>
  87. /// <param name="databaseLinkId">数据库主键</param>
  88. /// <param name="procName">存储过程</param>
  89. /// <param name="dbParameter">参数</param>
  90. void ExecuteByProc(string databaseLinkId, string procName, object dbParameter = null);
  91. /// <summary>
  92. /// 根据数据库执行sql语句,查询数据->datatable
  93. /// </summary>
  94. /// <param name="databaseLinkId">数据库主键</param>
  95. /// <param name="sql">sql语句</param>
  96. /// <param name="dbParameter">参数</param>
  97. /// <returns></returns>
  98. DataTable FindTable(string databaseLinkId, string sql, object dbParameter = null);
  99. /// <summary>
  100. /// 根据数据库执行sql语句,查询数据->datatable(分页)
  101. /// </summary>
  102. /// <param name="databaseLinkId">数据库主键</param>
  103. /// <param name="sql">sql语句</param>
  104. /// <param name="dbParameter">参数</param>
  105. /// <param name="pagination">分页参数</param>
  106. /// <returns></returns>
  107. DataTable FindTable(string databaseLinkId, string sql, object dbParameter, Pagination pagination);
  108. /// <summary>
  109. /// 开启事务
  110. /// </summary>
  111. /// <param name="entity">数据库连接信息</param>
  112. /// <returns></returns>
  113. IRepository BeginTrans(string databaseLinkId);
  114. /// <summary>
  115. /// 根据指定数据库执行sql语句(事务)
  116. /// </summary>
  117. /// <param name="sql">sql语句</param>
  118. /// <param name="dbParameter">参数</param>
  119. /// <param name="数据库连接">db</param>
  120. void ExecuteBySqlTrans(string sql, object dbParameter, IRepository db);
  121. #endregion
  122. }
  123. }