package routes import ( "github.com/gofiber/fiber/v2" "github.com/break/junhong_cmp_fiber/internal/handler/admin" "github.com/break/junhong_cmp_fiber/internal/model/dto" "github.com/break/junhong_cmp_fiber/pkg/openapi" ) // registerPollingCleanupRoutes 注册轮询数据清理路由 func registerPollingCleanupRoutes(router fiber.Router, handler *admin.PollingCleanupHandler, doc *openapi.Generator, basePath string) { // 清理配置管理 configs := router.Group("/data-cleanup-configs") configsPath := basePath + "/data-cleanup-configs" Register(configs, doc, configsPath, "POST", "", handler.CreateConfig, RouteSpec{ Summary: "创建数据清理配置", Tags: []string{"轮询管理-数据清理"}, Input: new(dto.CreateDataCleanupConfigReq), Output: new(dto.DataCleanupConfigResp), Auth: true, }) Register(configs, doc, configsPath, "GET", "", handler.ListConfigs, RouteSpec{ Summary: "获取数据清理配置列表", Tags: []string{"轮询管理-数据清理"}, Input: nil, Output: new(dto.DataCleanupConfigListResp), Auth: true, }) Register(configs, doc, configsPath, "GET", "/:id", handler.GetConfig, RouteSpec{ Summary: "获取数据清理配置详情", Tags: []string{"轮询管理-数据清理"}, Input: new(dto.IDReq), Output: new(dto.DataCleanupConfigResp), Auth: true, }) Register(configs, doc, configsPath, "PUT", "/:id", handler.UpdateConfig, RouteSpec{ Summary: "更新数据清理配置", Tags: []string{"轮询管理-数据清理"}, Input: new(dto.UpdateDataCleanupConfigParams), Output: nil, Auth: true, }) Register(configs, doc, configsPath, "DELETE", "/:id", handler.DeleteConfig, RouteSpec{ Summary: "删除数据清理配置", Tags: []string{"轮询管理-数据清理"}, Input: new(dto.IDReq), Output: nil, Auth: true, }) // 清理日志 logsPath := basePath + "/data-cleanup-logs" Register(router, doc, logsPath, "GET", "/data-cleanup-logs", handler.ListLogs, RouteSpec{ Summary: "获取数据清理日志列表", Tags: []string{"轮询管理-数据清理"}, Input: new(dto.ListDataCleanupLogReq), Output: new(dto.DataCleanupLogListResp), Auth: true, }) // 清理操作 cleanupPath := basePath + "/data-cleanup" Register(router, doc, cleanupPath+"/preview", "GET", "/data-cleanup/preview", handler.Preview, RouteSpec{ Summary: "预览待清理数据", Tags: []string{"轮询管理-数据清理"}, Input: nil, Output: new(dto.DataCleanupPreviewResp), Auth: true, }) Register(router, doc, cleanupPath+"/progress", "GET", "/data-cleanup/progress", handler.GetProgress, RouteSpec{ Summary: "获取数据清理进度", Tags: []string{"轮询管理-数据清理"}, Input: nil, Output: new(dto.DataCleanupProgressResp), Auth: true, }) Register(router, doc, cleanupPath+"/trigger", "POST", "/data-cleanup/trigger", handler.TriggerCleanup, RouteSpec{ Summary: "手动触发数据清理", Tags: []string{"轮询管理-数据清理"}, Input: new(dto.TriggerDataCleanupReq), Output: nil, Auth: true, }) }