DatabaseTableController.cs 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. using Vo;
  2. using Microsoft.AspNetCore.Mvc;
  3. using Model;
  4. using Services;
  5. using Model.Base;
  6. using Vo.Admin;
  7. using Mapster;
  8. using Infrastructure;
  9. using Dto.Admin;
  10. using Util;
  11. using Common;
  12. using Tasks;
  13. namespace Controllers.Admin
  14. {
  15. /// <summary>
  16. /// DatabaseTable)Controller
  17. /// </summary>
  18. // [Route("${Router}$")]
  19. // [ApiExplorerSettings(GroupName = "DatabaseTable")]
  20. public class DatabaseTableController : BaseController
  21. {
  22. /// <summary>
  23. /// api分组接口
  24. /// </summary>
  25. private readonly IDatabaseTableService _DatabaseTableService;
  26. private readonly IDatabaseInfoService _DatabaseInfoService;
  27. public DatabaseTableController(IDatabaseTableService DatabaseTableService, IDatabaseInfoService DatabaseInfoService)
  28. {
  29. _DatabaseTableService = DatabaseTableService;
  30. _DatabaseInfoService = DatabaseInfoService;
  31. }
  32. /// <param name="page">分页参数</param>
  33. /// <summary>
  34. /// 列表
  35. /// </summary>
  36. /// <param name="page">分页对象</param>
  37. /// <param name="param">参数请求体</param>
  38. /// <returns>列表</returns>
  39. [HttpGet]
  40. [Route("/v1/omega_source/DatabaseTable/getDatabaseTableList")]
  41. public IActionResult getDatabaseTableList([FromQuery] PagerInfo page, [FromQuery] DatabaseTable param)
  42. {
  43. var response = _DatabaseTableService.getDatabaseTableList(page, param);
  44. return SUCCESS(response);
  45. }
  46. /// <summary>
  47. /// 详情
  48. /// </summary>
  49. /// <param name="param">参数请求体</param>
  50. /// <returns>详情</returns>
  51. [HttpGet]
  52. [Route("/v1/omega_source/DatabaseTable/getDatabaseTableQuery")]
  53. public IActionResult getDatabaseTableQuery([FromQuery] DatabaseTable param)
  54. {
  55. var response = _DatabaseTableService.GetFirst(m => m.id == param.id).Adapt<GetDatabaseTableQueryVo>();
  56. return SUCCESS(response);
  57. }
  58. /// <summary>
  59. /// 添加
  60. /// </summary>
  61. /// <param name="param">参数请求体</param>
  62. /// <returns>添加</returns>
  63. [HttpPost]
  64. [Route("/v1/omega_source/DatabaseTable/addDatabaseTable")]
  65. public IActionResult addDatabaseTable([FromBody] DatabaseTable param)
  66. {
  67. var modal = param.Adapt<DatabaseTable>().ToCreate(HttpContext);
  68. var response = _DatabaseTableService.addDatabaseTable(modal);
  69. return SUCCESS(response);
  70. }
  71. /// <summary>
  72. /// 修改
  73. /// </summary>
  74. /// <param name="param">参数请求体</param>
  75. /// <returns>修改</returns>
  76. [HttpPut]
  77. [Route("/v1/omega_source/DatabaseTable/updateDatabaseTable")]
  78. public IActionResult updateDatabaseTable([FromBody] DatabaseTable param)
  79. {
  80. var modal = param.Adapt<DatabaseTable>().ToUpdate(HttpContext);
  81. var response = _DatabaseTableService.Update(modal, true);
  82. return SUCCESS(response);
  83. }
  84. /// <summary>
  85. /// 删除
  86. /// </summary>
  87. /// <param name="id">ID</param>
  88. /// <returns>删除</returns>
  89. [HttpDelete]
  90. [Route("/v1/omega_source/DatabaseTable/deleteDatabaseTable/{id}")]
  91. public IActionResult deleteDatabaseTable(int id)
  92. {
  93. var response = _DatabaseTableService.Delete(id);
  94. return SUCCESS(response);
  95. }
  96. /// <summary>
  97. /// 克隆表
  98. /// </summary>
  99. /// <param name="param">参数请求体</param>
  100. /// <returns>克隆表</returns>
  101. [HttpPost]
  102. [Route("/v1/omega_source/DatabaseTable/copyDatabaseTable")]
  103. public IActionResult copyDatabaseTable([FromBody] CopyDatabaseTableDto param)
  104. {
  105. _DatabaseTableService.copyDatabaseTable(param);
  106. return SUCCESS("ok");
  107. }
  108. /// <summary>
  109. /// 生成
  110. /// </summary>
  111. /// <param name="param">参数请求体</param>
  112. /// <returns>生成</returns>
  113. [HttpPut]
  114. [Route("/v1/omega_source/DatabaseTable/makeDatabaseTable")]
  115. public IActionResult makeDatabaseTable([FromBody] MakeDatabaseTableDto param)
  116. {
  117. if(param.id.Length == 0)
  118. {
  119. return ToResponse(ResultCode.FAIL, "表ID不能为空");
  120. }
  121. TokenModel loginUser = JwtUtil.GetLoginUser(HttpContext);
  122. var tableId = param.id[0];
  123. var databaseTable = _DatabaseTableService.GetFirst(m => m.id == tableId) ?? new DatabaseTable();
  124. var databaseInfo = _DatabaseInfoService.GetFirst(m => m.id == databaseTable.databaseId) ?? new DatabaseInfo();
  125. string res = _DatabaseTableService.makeDatabaseTable(param, databaseInfo, loginUser);
  126. string id = MakeHelper.Instance.DoQueue(res);
  127. Dictionary<string, object> dic = new Dictionary<string, object>();
  128. dic.Add("makeObjectId", id);
  129. return SUCCESS(dic);
  130. }
  131. /// <summary>
  132. /// 根据服务ID查询列表
  133. /// </summary>
  134. /// <param name="page">分页对象</param>
  135. /// <param name="param">参数请求体</param>
  136. /// <returns>根据服务ID查询列表</returns>
  137. [HttpGet]
  138. [Route("/v1/omega_source/DatabaseTable/getDatabaseTableListByIds")]
  139. public IActionResult getDatabaseTableListByIds([FromQuery] PagerInfo page, [FromQuery] GetDatabaseTableListByIdsDto param)
  140. {
  141. var response = _DatabaseTableService.getDatabaseTableListByIds(page, param);
  142. return SUCCESS(response);
  143. }
  144. [HttpGet]
  145. [Route("/v1/omega_source/DatabaseTable/getTableListByIds")]
  146. public IActionResult getTableListByIds([FromQuery] GetTableListByIdsDto param)
  147. {
  148. List<int> idList = Tools.SpitIntArrary(param.ids).ToList();
  149. var response = _DatabaseTableService.GetList(m => idList.Contains(m.id)).ToList();
  150. return SUCCESS(response);
  151. }
  152. }
  153. }