62 lines
1.3 KiB
Go
62 lines
1.3 KiB
Go
package router
|
|
|
|
import (
|
|
"sdk-generator/internal/config"
|
|
"sdk-generator/internal/entitys"
|
|
"sdk-generator/internal/service"
|
|
|
|
"github.com/gofiber/fiber/v2"
|
|
)
|
|
|
|
type AppModule struct {
|
|
cfg *config.Config
|
|
page *service.PageService
|
|
sdk *service.SDKService
|
|
}
|
|
|
|
func NewAppModule(
|
|
cfg *config.Config,
|
|
sdk *service.SDKService,
|
|
page *service.PageService,
|
|
) *AppModule {
|
|
return &AppModule{
|
|
cfg: cfg,
|
|
sdk: sdk,
|
|
page: page,
|
|
}
|
|
}
|
|
|
|
func (a *AppModule) Register(app fiber.Router) {
|
|
// 静态文件
|
|
app.Static("/static", "./web/static")
|
|
// 页面路由
|
|
app.Get("/", a.page.Index)
|
|
|
|
r := app.Group("api/v1/")
|
|
registerResponse(r)
|
|
r.Get("health", func(c *fiber.Ctx) error {
|
|
c.Response().SetBody([]byte("1"))
|
|
return nil
|
|
})
|
|
// API 路由
|
|
api := app.Group("/api/v1")
|
|
// 精炼文档
|
|
api.Post("/refine", vali(a.sdk.Refine, &entitys.RefineRequest{}))
|
|
|
|
// 精炼文档
|
|
api.Post("/refine/list", vali(a.sdk.ListRefine, &entitys.ListDocRequest{}))
|
|
|
|
// 精炼文档
|
|
api.Post("/refine/update", vali(a.sdk.UpdateRefine, &entitys.UpdateDocRequest{}))
|
|
|
|
// 上传文档生成代码
|
|
api.Post("/generate", vali(a.sdk.Generate, &entitys.GenerateRequest{}))
|
|
|
|
// 查询生成任务状态
|
|
api.Get("/tasks/:task_id", a.sdk.GetTaskStatus)
|
|
|
|
// 列出所有任务
|
|
api.Post("/tasks/list", vali(a.sdk.ListTasks, &entitys.ListTaskRequest{}))
|
|
|
|
}
|