- 新增 ops 错误日志记录器(ops_error_logger.go) - 新增 ops 主处理器(ops_handler.go) - 新增告警管理处理器(ops_alerts_handler.go) - 新增仪表板处理器(ops_dashboard_handler.go) - 新增实时监控处理器(ops_realtime_handler.go) - 新增配置管理处理器(ops_settings_handler.go) - 新增 WebSocket 处理器(ops_ws_handler.go) - 扩展设置 DTO 支持 ops 配置 - 新增客户端请求 ID 中间件(client_request_id.go) - 新增 WebSocket 查询令牌认证中间件(ws_query_token_auth.go) - 更新管理员认证中间件支持 ops 路由 - 注册 handler 依赖注入
121 lines
3.5 KiB
Go
121 lines
3.5 KiB
Go
package handler
|
|
|
|
import (
|
|
"github.com/Wei-Shaw/sub2api/internal/handler/admin"
|
|
"github.com/Wei-Shaw/sub2api/internal/service"
|
|
|
|
"github.com/google/wire"
|
|
)
|
|
|
|
// ProvideAdminHandlers creates the AdminHandlers struct
|
|
func ProvideAdminHandlers(
|
|
dashboardHandler *admin.DashboardHandler,
|
|
userHandler *admin.UserHandler,
|
|
groupHandler *admin.GroupHandler,
|
|
accountHandler *admin.AccountHandler,
|
|
oauthHandler *admin.OAuthHandler,
|
|
openaiOAuthHandler *admin.OpenAIOAuthHandler,
|
|
geminiOAuthHandler *admin.GeminiOAuthHandler,
|
|
antigravityOAuthHandler *admin.AntigravityOAuthHandler,
|
|
proxyHandler *admin.ProxyHandler,
|
|
redeemHandler *admin.RedeemHandler,
|
|
settingHandler *admin.SettingHandler,
|
|
opsHandler *admin.OpsHandler,
|
|
systemHandler *admin.SystemHandler,
|
|
subscriptionHandler *admin.SubscriptionHandler,
|
|
usageHandler *admin.UsageHandler,
|
|
userAttributeHandler *admin.UserAttributeHandler,
|
|
) *AdminHandlers {
|
|
return &AdminHandlers{
|
|
Dashboard: dashboardHandler,
|
|
User: userHandler,
|
|
Group: groupHandler,
|
|
Account: accountHandler,
|
|
OAuth: oauthHandler,
|
|
OpenAIOAuth: openaiOAuthHandler,
|
|
GeminiOAuth: geminiOAuthHandler,
|
|
AntigravityOAuth: antigravityOAuthHandler,
|
|
Proxy: proxyHandler,
|
|
Redeem: redeemHandler,
|
|
Setting: settingHandler,
|
|
Ops: opsHandler,
|
|
System: systemHandler,
|
|
Subscription: subscriptionHandler,
|
|
Usage: usageHandler,
|
|
UserAttribute: userAttributeHandler,
|
|
}
|
|
}
|
|
|
|
// ProvideSystemHandler creates admin.SystemHandler with UpdateService
|
|
func ProvideSystemHandler(updateService *service.UpdateService) *admin.SystemHandler {
|
|
return admin.NewSystemHandler(updateService)
|
|
}
|
|
|
|
// ProvideSettingHandler creates SettingHandler with version from BuildInfo
|
|
func ProvideSettingHandler(settingService *service.SettingService, buildInfo BuildInfo) *SettingHandler {
|
|
return NewSettingHandler(settingService, buildInfo.Version)
|
|
}
|
|
|
|
// ProvideHandlers creates the Handlers struct
|
|
func ProvideHandlers(
|
|
authHandler *AuthHandler,
|
|
userHandler *UserHandler,
|
|
apiKeyHandler *APIKeyHandler,
|
|
usageHandler *UsageHandler,
|
|
redeemHandler *RedeemHandler,
|
|
subscriptionHandler *SubscriptionHandler,
|
|
adminHandlers *AdminHandlers,
|
|
gatewayHandler *GatewayHandler,
|
|
openaiGatewayHandler *OpenAIGatewayHandler,
|
|
settingHandler *SettingHandler,
|
|
) *Handlers {
|
|
return &Handlers{
|
|
Auth: authHandler,
|
|
User: userHandler,
|
|
APIKey: apiKeyHandler,
|
|
Usage: usageHandler,
|
|
Redeem: redeemHandler,
|
|
Subscription: subscriptionHandler,
|
|
Admin: adminHandlers,
|
|
Gateway: gatewayHandler,
|
|
OpenAIGateway: openaiGatewayHandler,
|
|
Setting: settingHandler,
|
|
}
|
|
}
|
|
|
|
// ProviderSet is the Wire provider set for all handlers
|
|
var ProviderSet = wire.NewSet(
|
|
// Top-level handlers
|
|
NewAuthHandler,
|
|
NewUserHandler,
|
|
NewAPIKeyHandler,
|
|
NewUsageHandler,
|
|
NewRedeemHandler,
|
|
NewSubscriptionHandler,
|
|
NewGatewayHandler,
|
|
NewOpenAIGatewayHandler,
|
|
ProvideSettingHandler,
|
|
|
|
// Admin handlers
|
|
admin.NewDashboardHandler,
|
|
admin.NewUserHandler,
|
|
admin.NewGroupHandler,
|
|
admin.NewAccountHandler,
|
|
admin.NewOAuthHandler,
|
|
admin.NewOpenAIOAuthHandler,
|
|
admin.NewGeminiOAuthHandler,
|
|
admin.NewAntigravityOAuthHandler,
|
|
admin.NewProxyHandler,
|
|
admin.NewRedeemHandler,
|
|
admin.NewSettingHandler,
|
|
admin.NewOpsHandler,
|
|
ProvideSystemHandler,
|
|
admin.NewSubscriptionHandler,
|
|
admin.NewUsageHandler,
|
|
admin.NewUserAttributeHandler,
|
|
|
|
// AdminHandlers and Handlers constructors
|
|
ProvideAdminHandlers,
|
|
ProvideHandlers,
|
|
)
|