mirror of
https://gitee.com/dromara/mayfly-go
synced 2025-12-05 15:30:25 +08:00
58 lines
1.3 KiB
Go
58 lines
1.3 KiB
Go
package router
|
|
|
|
import (
|
|
"mayfly-go/internal/db/api"
|
|
"mayfly-go/internal/db/imsg"
|
|
"mayfly-go/pkg/biz"
|
|
"mayfly-go/pkg/ioc"
|
|
"mayfly-go/pkg/req"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
func InitDbRouter(router *gin.RouterGroup) {
|
|
db := router.Group("dbs")
|
|
|
|
d := new(api.Db)
|
|
biz.ErrIsNil(ioc.Inject(d))
|
|
|
|
dashbord := new(api.Dashbord)
|
|
biz.ErrIsNil(ioc.Inject(dashbord))
|
|
|
|
reqs := [...]*req.Conf{
|
|
req.NewGet("dashbord", dashbord.Dashbord),
|
|
|
|
// 获取数据库列表
|
|
req.NewGet("", d.Dbs),
|
|
|
|
req.NewPost("", d.Save).Log(req.NewLogSaveI(imsg.LogDbSave)),
|
|
|
|
req.NewDelete(":dbId", d.DeleteDb).Log(req.NewLogSaveI(imsg.LogDbDelete)),
|
|
|
|
req.NewGet(":dbId/t-create-ddl", d.GetTableDDL),
|
|
|
|
req.NewGet(":dbId/version", d.GetVersion),
|
|
|
|
req.NewGet(":dbId/pg/schemas", d.GetSchemas),
|
|
|
|
req.NewPost(":dbId/exec-sql", d.ExecSql).Log(req.NewLogI(imsg.LogDbRunSql)),
|
|
|
|
req.NewPost(":dbId/exec-sql-file", d.ExecSqlFile).Log(req.NewLogSaveI(imsg.LogDbRunSqlFile)).RequiredPermissionCode("db:sqlscript:run"),
|
|
|
|
req.NewGet(":dbId/dump", d.DumpSql).Log(req.NewLogSaveI(imsg.LogDbDump)).NoRes(),
|
|
|
|
req.NewGet(":dbId/t-infos", d.TableInfos),
|
|
|
|
req.NewGet(":dbId/t-index", d.TableIndex),
|
|
|
|
req.NewGet(":dbId/c-metadata", d.ColumnMA),
|
|
|
|
req.NewGet(":dbId/hint-tables", d.HintTables),
|
|
|
|
req.NewPost(":dbId/copy-table", d.CopyTable),
|
|
}
|
|
|
|
req.BatchSetGroup(db, reqs[:])
|
|
|
|
}
|