From d8e2812d80a8c542d5540eaa438f7f83a2417e66 Mon Sep 17 00:00:00 2001 From: Edric Li Date: Thu, 1 Jan 2026 19:09:06 +0800 Subject: [PATCH] fix: resolve CI failures MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix gofmt formatting issue in user_service.go - Remove unused sql field from userAttributeValueRepository - Update ListWithFilters signature in test stubs to match interface - Remove Wechat field from test user data 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- backend/cmd/server/wire_gen.go | 2 +- backend/internal/repository/user_attribute_repo.go | 6 ++---- backend/internal/server/api_contract_test.go | 3 +-- backend/internal/service/admin_service_delete_test.go | 2 +- backend/internal/service/user_service.go | 8 ++++---- 5 files changed, 9 insertions(+), 12 deletions(-) diff --git a/backend/cmd/server/wire_gen.go b/backend/cmd/server/wire_gen.go index 91569497..5cbc774d 100644 --- a/backend/cmd/server/wire_gen.go +++ b/backend/cmd/server/wire_gen.go @@ -118,7 +118,7 @@ func initializeApplication(buildInfo handler.BuildInfo) (*Application, error) { adminSubscriptionHandler := admin.NewSubscriptionHandler(subscriptionService) adminUsageHandler := admin.NewUsageHandler(usageService, apiKeyService, adminService) userAttributeDefinitionRepository := repository.NewUserAttributeDefinitionRepository(client) - userAttributeValueRepository := repository.NewUserAttributeValueRepository(client, db) + userAttributeValueRepository := repository.NewUserAttributeValueRepository(client) userAttributeService := service.NewUserAttributeService(userAttributeDefinitionRepository, userAttributeValueRepository) userAttributeHandler := admin.NewUserAttributeHandler(userAttributeService) adminHandlers := handler.ProvideAdminHandlers(dashboardHandler, adminUserHandler, groupHandler, accountHandler, oAuthHandler, openAIOAuthHandler, geminiOAuthHandler, antigravityOAuthHandler, proxyHandler, adminRedeemHandler, settingHandler, systemHandler, adminSubscriptionHandler, adminUsageHandler, userAttributeHandler) diff --git a/backend/internal/repository/user_attribute_repo.go b/backend/internal/repository/user_attribute_repo.go index 504aa91e..0b616caf 100644 --- a/backend/internal/repository/user_attribute_repo.go +++ b/backend/internal/repository/user_attribute_repo.go @@ -2,7 +2,6 @@ package repository import ( "context" - "database/sql" dbent "github.com/Wei-Shaw/sub2api/ent" "github.com/Wei-Shaw/sub2api/ent/userattributedefinition" @@ -150,12 +149,11 @@ func (r *userAttributeDefinitionRepository) ExistsByKey(ctx context.Context, key // UserAttributeValueRepository implementation type userAttributeValueRepository struct { client *dbent.Client - sql *sql.DB } // NewUserAttributeValueRepository creates a new repository instance -func NewUserAttributeValueRepository(client *dbent.Client, sqlDB *sql.DB) service.UserAttributeValueRepository { - return &userAttributeValueRepository{client: client, sql: sqlDB} +func NewUserAttributeValueRepository(client *dbent.Client) service.UserAttributeValueRepository { + return &userAttributeValueRepository{client: client} } func (r *userAttributeValueRepository) GetByUserID(ctx context.Context, userID int64) ([]service.UserAttributeValue, error) { diff --git a/backend/internal/server/api_contract_test.go b/backend/internal/server/api_contract_test.go index 51f5e43d..d053e686 100644 --- a/backend/internal/server/api_contract_test.go +++ b/backend/internal/server/api_contract_test.go @@ -347,7 +347,6 @@ func newContractDeps(t *testing.T) *contractDeps { ID: 1, Email: "alice@example.com", Username: "alice", - Wechat: "wx_alice", Notes: "hello", Role: service.RoleUser, Balance: 12.5, @@ -502,7 +501,7 @@ func (r *stubUserRepo) List(ctx context.Context, params pagination.PaginationPar return nil, nil, errors.New("not implemented") } -func (r *stubUserRepo) ListWithFilters(ctx context.Context, params pagination.PaginationParams, status, role, search string) ([]service.User, *pagination.PaginationResult, error) { +func (r *stubUserRepo) ListWithFilters(ctx context.Context, params pagination.PaginationParams, filters service.UserListFilters) ([]service.User, *pagination.PaginationResult, error) { return nil, nil, errors.New("not implemented") } diff --git a/backend/internal/service/admin_service_delete_test.go b/backend/internal/service/admin_service_delete_test.go index d27773fa..8aeaab43 100644 --- a/backend/internal/service/admin_service_delete_test.go +++ b/backend/internal/service/admin_service_delete_test.go @@ -66,7 +66,7 @@ func (s *userRepoStub) List(ctx context.Context, params pagination.PaginationPar panic("unexpected List call") } -func (s *userRepoStub) ListWithFilters(ctx context.Context, params pagination.PaginationParams, status, role, search string) ([]User, *pagination.PaginationResult, error) { +func (s *userRepoStub) ListWithFilters(ctx context.Context, params pagination.PaginationParams, filters UserListFilters) ([]User, *pagination.PaginationResult, error) { panic("unexpected ListWithFilters call") } diff --git a/backend/internal/service/user_service.go b/backend/internal/service/user_service.go index d5e1f869..08fa40b5 100644 --- a/backend/internal/service/user_service.go +++ b/backend/internal/service/user_service.go @@ -16,10 +16,10 @@ var ( // UserListFilters contains all filter options for listing users type UserListFilters struct { - Status string // User status filter - Role string // User role filter - Search string // Search in email, username - Attributes map[int64]string // Custom attribute filters: attributeID -> value + Status string // User status filter + Role string // User role filter + Search string // Search in email, username + Attributes map[int64]string // Custom attribute filters: attributeID -> value } type UserRepository interface {