TableInfoController.java 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. package com.customer.controller;
  2. import com.customer.service.ITableInfoService;
  3. import com.customer.utils.AjaxResult;
  4. import com.customer.vo.TableInfoVO;
  5. import org.springframework.web.bind.annotation.*;
  6. import javax.annotation.Resource;
  7. import java.util.List;
  8. import java.util.Map;
  9. @RestController
  10. @RequestMapping("tableInfo")
  11. public class TableInfoController {
  12. @Resource
  13. private ITableInfoService tableInfoService;
  14. @PostMapping("/createDatabase")
  15. public AjaxResult crateDatabase(@RequestBody Map<String, Object> map){
  16. String dataBaseName = (String) map.get("dataBaseName");
  17. String tableName = (String) map.get("tableName");
  18. if(tableInfoService.mysqlTableExist(dataBaseName,tableName)>0){
  19. return AjaxResult.warn("当前数据库中表已存在");
  20. }
  21. tableInfoService.createMysqlDataBase(map);
  22. return AjaxResult.success();
  23. }
  24. @PostMapping("/createSqlServerDataBase")
  25. public AjaxResult createSqlServerDataBase(@RequestBody Map<String, Object> map) throws Exception {
  26. String dataBaseName = (String) map.get("dataBaseName");
  27. String tableName = (String) map.get("tableName");
  28. if(tableInfoService.sqlServerTableExist(dataBaseName,tableName)>0){
  29. return AjaxResult.warn("当前数据库中表已存在");
  30. }
  31. tableInfoService.createSqlServerDataBase(map);
  32. return AjaxResult.success();
  33. }
  34. @PostMapping("/createDmDataBase")
  35. public AjaxResult createDmDataBase(@RequestBody Map<String, Object> map){
  36. String dataBaseName = (String) map.get("dataBaseName");
  37. String tableName = (String) map.get("tableName");
  38. if(tableInfoService.dmTableExist(dataBaseName,tableName)>0){
  39. return AjaxResult.warn("当前数据库中表已存在");
  40. }
  41. tableInfoService.createDmDataBase(map);
  42. return AjaxResult.success();
  43. }
  44. @PostMapping("/createOracleTable")
  45. public AjaxResult createOracleTable(@RequestBody Map<String, Object> map){
  46. String tableName = (String) map.get("tableName");
  47. if(tableInfoService.oracleTableExist(tableName)>0){
  48. return AjaxResult.warn("当前数据库中表已存在");
  49. }
  50. tableInfoService.createOracleTable(map);
  51. return AjaxResult.success();
  52. }
  53. //---------------------------------------通用接口(支持mysql、sqlserver、达梦)-----------------------------------------------------
  54. /**
  55. * 新增数据库和表
  56. */
  57. @PostMapping("/createTable")
  58. public AjaxResult createTable(@RequestBody Map<String, Object> map){
  59. return tableInfoService.createTable(map);
  60. }
  61. /**
  62. * 根据当前数据源显示对应的数据表列表
  63. */
  64. @PostMapping("/tableInfoList")
  65. public AjaxResult tableInfoList(@RequestBody Map<String,Object> map){
  66. return tableInfoService.tableInfoList(map);
  67. }
  68. /**
  69. * 根据当前数据源删除对应的数据表
  70. */
  71. @DeleteMapping("/removeTable/{tableName}")
  72. public AjaxResult removeTable(@PathVariable String tableName){
  73. return tableInfoService.dropTable(tableName);
  74. }
  75. /**
  76. * 获取表字段
  77. */
  78. @GetMapping("/tableFieldInfo")
  79. public AjaxResult tableFieldInfo(@RequestParam("tableName") String tableName){
  80. return AjaxResult.success(tableInfoService.tableFieldInfo(tableName));
  81. }
  82. /**
  83. * 修改数据表
  84. */
  85. @PostMapping("/editTable")
  86. public AjaxResult editTable(@RequestBody Map<String, Object> map){
  87. return tableInfoService.updateTable(map);
  88. }
  89. //---------------------------------------通用接口-----------------------------------------------------
  90. @PutMapping("/editMysqlTable")
  91. public AjaxResult editMysqlTable(@RequestBody Map<String, Object> map){
  92. String tableName = (String) map.get("tableName");
  93. if(tableInfoService.selectDataCount(tableName)>0){
  94. return AjaxResult.warn("表中有数据,不能修改!");
  95. }
  96. tableInfoService.updateMysqlTable(map);
  97. return AjaxResult.success();
  98. }
  99. /**
  100. * 删除sqlserver数据表
  101. */
  102. @DeleteMapping("/dropServerTable/{tableName}")
  103. public AjaxResult dropServerTable(@PathVariable String tableName){
  104. if(tableInfoService.selectSqlServerDataCount(tableName)>0){
  105. return AjaxResult.warn("表中有数据,不能删除!");
  106. }
  107. tableInfoService.dropSqlserverTable(tableName);
  108. return AjaxResult.success();
  109. }
  110. /**
  111. * 修改sqlserver数据表
  112. */
  113. @PutMapping("/editSqlserverTable")
  114. public AjaxResult editSqlserverTable(@RequestBody Map<String, Object> map){
  115. String tableName = (String) map.get("tableName");
  116. if(tableInfoService.selectSqlServerDataCount(tableName)>0){
  117. return AjaxResult.warn("表中有数据,不能修改!");
  118. }
  119. tableInfoService.updateSqlserverTable(map);
  120. return AjaxResult.success();
  121. }
  122. }