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{})) }