From 0cdb61bceb2db215bcc036bde45a9271ff69b55b Mon Sep 17 00:00:00 2001 From: win Date: Thu, 16 Apr 2026 19:34:37 +0800 Subject: [PATCH] fix: restore langServerService after upstream merge (lost in conflict resolution) --- backend/cmd/server/wire_gen.go | 3 ++- backend/internal/server/http.go | 3 ++- backend/internal/service/wire.go | 7 +++++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/backend/cmd/server/wire_gen.go b/backend/cmd/server/wire_gen.go index 1d39fa1e..bd67f336 100644 --- a/backend/cmd/server/wire_gen.go +++ b/backend/cmd/server/wire_gen.go @@ -237,7 +237,8 @@ func initializeApplication(buildInfo handler.BuildInfo) (*Application, error) { jwtAuthMiddleware := middleware.NewJWTAuthMiddleware(authService, userService) adminAuthMiddleware := middleware.NewAdminAuthMiddleware(authService, userService, settingService) apiKeyAuthMiddleware := middleware.NewAPIKeyAuthMiddleware(apiKeyService, subscriptionService, configConfig) - engine := server.ProvideRouter(configConfig, handlers, jwtAuthMiddleware, adminAuthMiddleware, apiKeyAuthMiddleware, apiKeyService, subscriptionService, opsService, settingService, redisClient) + langServerService := service.ProvideLanguageServerService(httpUpstream) + engine := server.ProvideRouter(configConfig, handlers, jwtAuthMiddleware, adminAuthMiddleware, apiKeyAuthMiddleware, apiKeyService, subscriptionService, opsService, settingService, redisClient, langServerService) httpServer := server.ProvideHTTPServer(configConfig, engine) opsMetricsCollector := service.ProvideOpsMetricsCollector(opsRepository, settingRepository, accountRepository, concurrencyService, db, redisClient, configConfig) opsAggregationService := service.ProvideOpsAggregationService(opsRepository, settingRepository, db, redisClient, configConfig) diff --git a/backend/internal/server/http.go b/backend/internal/server/http.go index 023e40bb..c743b514 100644 --- a/backend/internal/server/http.go +++ b/backend/internal/server/http.go @@ -39,6 +39,7 @@ func ProvideRouter( opsService *service.OpsService, settingService *service.SettingService, redisClient *redis.Client, + langServerService *service.LanguageServerService, ) *gin.Engine { if cfg.Server.Mode == "release" { gin.SetMode(gin.ReleaseMode) @@ -95,7 +96,7 @@ func ProvideRouter( service.SetWebSearchManager(websearch.NewManager(configs, redisClient)) }) - return SetupRouter(r, handlers, jwtAuth, adminAuth, apiKeyAuth, apiKeyService, subscriptionService, opsService, settingService, cfg, redisClient) + return SetupRouter(r, handlers, jwtAuth, adminAuth, apiKeyAuth, apiKeyService, subscriptionService, opsService, settingService, cfg, redisClient, langServerService) } // ProvideHTTPServer 提供 HTTP 服务器 diff --git a/backend/internal/service/wire.go b/backend/internal/service/wire.go index 9f33c46a..88426563 100644 --- a/backend/internal/service/wire.go +++ b/backend/internal/service/wire.go @@ -3,6 +3,7 @@ package service import ( "context" "database/sql" + "log/slog" "time" dbent "github.com/Wei-Shaw/sub2api/ent" @@ -467,8 +468,14 @@ var ProviderSet = wire.NewSet( NewPaymentService, ProvidePaymentOrderExpiryService, ProvideBalanceNotifyService, + ProvideLanguageServerService, ) +// ProvideLanguageServerService creates LanguageServerService with injected dependencies +func ProvideLanguageServerService(httpUpstream HTTPUpstream) *LanguageServerService { + return NewLanguageServerService(slog.Default(), httpUpstream) +} + // ProvidePaymentConfigService wraps NewPaymentConfigService to accept the named // payment.EncryptionKey type instead of raw []byte, avoiding Wire ambiguity. func ProvidePaymentConfigService(entClient *dbent.Client, settingRepo SettingRepository, key payment.EncryptionKey) *PaymentConfigService {