Files
mayfly-go/server/internal/db/router/db.go

69 lines
1.6 KiB
Go
Raw Normal View History

package router
2021-04-16 15:10:07 +08:00
import (
2022-09-09 18:26:08 +08:00
"mayfly-go/internal/db/api"
"mayfly-go/internal/db/application"
2023-07-03 21:42:04 +08:00
msgapp "mayfly-go/internal/msg/application"
2022-10-26 20:49:29 +08:00
tagapp "mayfly-go/internal/tag/application"
2023-01-14 16:29:52 +08:00
"mayfly-go/pkg/req"
2021-04-16 15:10:07 +08:00
"github.com/gin-gonic/gin"
)
func InitDbRouter(router *gin.RouterGroup) {
db := router.Group("dbs")
d := &api.Db{
DbApp: application.GetDbApp(),
DbSqlExecApp: application.GetDbSqlExecApp(),
MsgApp: msgapp.GetMsgApp(),
TagApp: tagapp.GetTagTreeApp(),
}
reqs := [...]*req.Conf{
// 获取数据库列表
req.NewGet("", d.Dbs),
req.NewGet("/tags", d.DbTags),
req.NewPost("", d.Save).Log(req.NewLogSave("db-保存数据库信息")),
// 获取数据库实例的所有数据库名
req.NewPost("/databases", d.GetDatabaseNames),
req.NewGet(":dbId/pwd", d.GetDbPwd),
req.NewDelete(":dbId", d.DeleteDb).Log(req.NewLogSave("db-删除数据库信息")),
req.NewGet(":dbId/t-infos", d.TableInfos),
req.NewGet(":dbId/t-index", d.TableIndex),
req.NewGet(":dbId/t-create-ddl", d.GetCreateTableDdl),
req.NewPost(":dbId/exec-sql", d.ExecSql).Log(req.NewLog("db-执行Sql")),
req.NewPost(":dbId/exec-sql-file", d.ExecSqlFile).Log(req.NewLogSave("db-执行Sql文件")),
req.NewGet(":dbId/dump", d.DumpSql).Log(req.NewLogSave("db-导出sql文件")).NoRes(),
req.NewGet(":dbId/t-metadata", d.TableMA),
req.NewGet(":dbId/c-metadata", d.ColumnMA),
req.NewGet(":dbId/hint-tables", d.HintTables),
// 用户sql相关
req.NewPost(":dbId/sql", d.SaveSql),
req.NewGet(":dbId/sql", d.GetSql),
req.NewDelete(":dbId/sql", d.DeleteSql),
req.NewGet(":dbId/sql-names", d.GetSqlNames),
2021-04-16 15:10:07 +08:00
}
req.BatchSetGroup(db, reqs[:])
2021-04-16 15:10:07 +08:00
}