初步完成举报功能

This commit is contained in:
2026-01-21 21:34:11 +08:00
parent 432b875ba4
commit 68d7318285
9 changed files with 1276 additions and 0 deletions

View File

@@ -32,6 +32,7 @@ type Container struct {
TextureRepo repository.TextureRepository
ClientRepo repository.ClientRepository
YggdrasilRepo repository.YggdrasilRepository
ReportRepo repository.ReportRepository
// Service层
UserService service.UserService
@@ -43,6 +44,7 @@ type Container struct {
SecurityService service.SecurityService
CaptchaService service.CaptchaService
SignatureService *service.SignatureService
ReportService service.ReportService
}
// NewContainer 创建依赖容器
@@ -86,6 +88,7 @@ func NewContainer(
c.TextureRepo = repository.NewTextureRepository(db)
c.ClientRepo = repository.NewClientRepository(db)
c.YggdrasilRepo = repository.NewYggdrasilRepository(db)
c.ReportRepo = repository.NewReportRepository(db)
// 初始化SignatureService作为依赖注入避免在容器中创建并立即调用
// 将SignatureService添加到容器中供其他服务使用
@@ -95,6 +98,7 @@ func NewContainer(
c.UserService = service.NewUserService(c.UserRepo, jwtService, redisClient, cacheManager, storageClient, logger)
c.ProfileService = service.NewProfileService(c.ProfileRepo, c.UserRepo, cacheManager, logger)
c.TextureService = service.NewTextureService(c.TextureRepo, c.UserRepo, storageClient, cacheManager, logger)
c.ReportService = service.NewReportService(c.ReportRepo, c.UserRepo, logger)
// 获取Yggdrasil私钥并创建JWT服务TokenService需要
// 注意这里仍然需要预先初始化因为TokenService在创建时需要YggdrasilJWT