2023-08-27 11:07:29 +08:00
|
|
|
package router
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"mayfly-go/internal/db/api"
|
2024-01-21 22:52:20 +08:00
|
|
|
"mayfly-go/pkg/biz"
|
|
|
|
|
"mayfly-go/pkg/ioc"
|
2023-08-27 11:07:29 +08:00
|
|
|
"mayfly-go/pkg/req"
|
|
|
|
|
|
|
|
|
|
"github.com/gin-gonic/gin"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func InitInstanceRouter(router *gin.RouterGroup) {
|
|
|
|
|
instances := router.Group("/instances")
|
|
|
|
|
|
2024-01-21 22:52:20 +08:00
|
|
|
d := new(api.Instance)
|
|
|
|
|
biz.ErrIsNil(ioc.Inject(d))
|
2023-08-27 11:07:29 +08:00
|
|
|
|
|
|
|
|
reqs := [...]*req.Conf{
|
|
|
|
|
// 获取数据库列表
|
|
|
|
|
req.NewGet("", d.Instances),
|
|
|
|
|
|
2023-11-12 20:14:44 +08:00
|
|
|
req.NewPost("/test-conn", d.TestConn),
|
|
|
|
|
|
2023-08-27 11:07:29 +08:00
|
|
|
req.NewPost("", d.SaveInstance).Log(req.NewLogSave("db-保存数据库实例信息")),
|
|
|
|
|
|
2023-08-30 22:41:42 +08:00
|
|
|
req.NewGet(":instanceId", d.GetInstance),
|
2023-12-20 17:29:16 +08:00
|
|
|
|
2023-08-30 22:41:42 +08:00
|
|
|
req.NewGet(":instanceId/pwd", d.GetInstancePwd),
|
2023-12-20 17:29:16 +08:00
|
|
|
|
2023-08-30 22:41:42 +08:00
|
|
|
// 获取数据库实例的所有数据库名
|
|
|
|
|
req.NewGet(":instanceId/databases", d.GetDatabaseNames),
|
2023-08-27 11:07:29 +08:00
|
|
|
|
2023-12-20 17:29:16 +08:00
|
|
|
req.NewGet(":instanceId/server-info", d.GetDbServer),
|
|
|
|
|
|
2023-08-30 22:41:42 +08:00
|
|
|
req.NewDelete(":instanceId", d.DeleteInstance).Log(req.NewLogSave("db-删除数据库实例")),
|
2023-08-27 11:07:29 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
req.BatchSetGroup(instances, reqs[:])
|
|
|
|
|
}
|