index.ts 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. import request from '@/config/axios'
  2. export type CodegenTableVO = {
  3. id: number
  4. tableId: number
  5. isParentMenuIdValid: boolean
  6. dataSourceConfigId: number
  7. scene: number
  8. tableName: string
  9. tableComment: string
  10. remark: string
  11. moduleName: string
  12. businessName: string
  13. className: string
  14. classComment: string
  15. author: string
  16. createTime: Date
  17. updateTime: Date
  18. templateType: number
  19. parentMenuId: number
  20. }
  21. export type CodegenColumnVO = {
  22. id: number
  23. tableId: number
  24. columnName: string
  25. dataType: string
  26. columnComment: string
  27. nullable: number
  28. primaryKey: number
  29. ordinalPosition: number
  30. javaType: string
  31. javaField: string
  32. dictType: string
  33. example: string
  34. createOperation: number
  35. updateOperation: number
  36. listOperation: number
  37. listOperationCondition: string
  38. listOperationResult: number
  39. htmlType: string
  40. }
  41. export type DatabaseTableVO = {
  42. name: string
  43. comment: string
  44. }
  45. export type CodegenDetailVO = {
  46. table: CodegenTableVO
  47. columns: CodegenColumnVO[]
  48. }
  49. export type CodegenPreviewVO = {
  50. filePath: string
  51. code: string
  52. }
  53. export type CodegenUpdateReqVO = {
  54. table: CodegenTableVO | any
  55. columns: CodegenColumnVO[]
  56. }
  57. export type CodegenCreateListReqVO = {
  58. dataSourceConfigId: number
  59. tableNames: string[]
  60. }
  61. // 查询列表代码生成表定义
  62. export const getCodegenTableList = (dataSourceConfigId: number) => {
  63. return request.get({ url: '/infra/codegen/table/list?dataSourceConfigId=' + dataSourceConfigId })
  64. }
  65. // 查询列表代码生成表定义
  66. export const getCodegenTablePage = (params: PageParam) => {
  67. return request.get({ url: '/infra/codegen/table/page', params })
  68. }
  69. // 查询详情代码生成表定义
  70. export const getCodegenTable = (id: number) => {
  71. return request.get({ url: '/infra/codegen/detail?tableId=' + id })
  72. }
  73. // 新增代码生成表定义
  74. export const createCodegenTable = (data: CodegenCreateListReqVO) => {
  75. return request.post({ url: '/infra/codegen/create', data })
  76. }
  77. // 修改代码生成表定义
  78. export const updateCodegenTable = (data: CodegenUpdateReqVO) => {
  79. return request.put({ url: '/infra/codegen/update', data })
  80. }
  81. // 基于数据库的表结构,同步数据库的表和字段定义
  82. export const syncCodegenFromDB = (id: number) => {
  83. return request.put({ url: '/infra/codegen/sync-from-db?tableId=' + id })
  84. }
  85. // 预览生成代码
  86. export const previewCodegen = (id: number) => {
  87. return request.get({ url: '/infra/codegen/preview?tableId=' + id })
  88. }
  89. // 下载生成代码
  90. export const downloadCodegen = (id: number) => {
  91. return request.download({ url: '/infra/codegen/download?tableId=' + id })
  92. }
  93. // 获得表定义
  94. export const getSchemaTableList = (params) => {
  95. return request.get({ url: '/infra/codegen/db/table/list', params })
  96. }
  97. // 基于数据库的表结构,创建代码生成器的表定义
  98. export const createCodegenList = (data) => {
  99. return request.post({ url: '/infra/codegen/create-list', data })
  100. }
  101. // 删除代码生成表定义
  102. export const deleteCodegenTable = (id: number) => {
  103. return request.delete({ url: '/infra/codegen/delete?tableId=' + id })
  104. }