This commit is contained in:
2025-12-06 13:56:00 +08:00
parent 05b6623e75
commit 89367fb2ee
22 changed files with 2186 additions and 74 deletions

View File

@@ -574,6 +574,11 @@ func NewContainer() *Container {
article_repo.NewGormScheduledTaskRepository,
fx.As(new(domain_article_repo.ScheduledTaskRepository)),
),
// 公告仓储 - 同时注册具体类型和接口类型
fx.Annotate(
article_repo.NewGormAnnouncementRepository,
fx.As(new(domain_article_repo.AnnouncementRepository)),
),
),
// API域仓储层
@@ -678,6 +683,8 @@ func NewContainer() *Container {
certification_service.NewEnterpriseInfoSubmitRecordService,
// 文章领域服务
article_service.NewArticleService,
// 公告领域服务
article_service.NewAnnouncementService,
// 统计领域服务
statistics_service.NewStatisticsAggregateService,
statistics_service.NewStatisticsCalculationService,
@@ -778,6 +785,7 @@ func NewContainer() *Container {
cfg *config.Config,
logger *zap.Logger,
articleApplicationService article.ArticleApplicationService,
announcementApplicationService article.AnnouncementApplicationService,
apiApplicationService api_app.ApiApplicationService,
walletService finance_services.WalletAggregateService,
subscriptionService *product_services.ProductSubscriptionService,
@@ -788,6 +796,7 @@ func NewContainer() *Container {
redisAddr,
logger,
articleApplicationService,
announcementApplicationService,
apiApplicationService,
walletService,
subscriptionService,
@@ -944,6 +953,23 @@ func NewContainer() *Container {
},
fx.As(new(article.ArticleApplicationService)),
),
// 公告应用服务 - 绑定到接口
fx.Annotate(
func(
announcementRepo domain_article_repo.AnnouncementRepository,
announcementService *article_service.AnnouncementService,
taskManager task_interfaces.TaskManager,
logger *zap.Logger,
) article.AnnouncementApplicationService {
return article.NewAnnouncementApplicationService(
announcementRepo,
announcementService,
taskManager,
logger,
)
},
fx.As(new(article.AnnouncementApplicationService)),
),
// 统计应用服务 - 绑定到接口
fx.Annotate(
func(
@@ -1064,6 +1090,15 @@ func NewContainer() *Container {
) *handlers.ArticleHandler {
return handlers.NewArticleHandler(appService, responseBuilder, validator, logger)
},
// 公告HTTP处理器
func(
appService article.AnnouncementApplicationService,
responseBuilder interfaces.ResponseBuilder,
validator interfaces.RequestValidator,
logger *zap.Logger,
) *handlers.AnnouncementHandler {
return handlers.NewAnnouncementHandler(appService, responseBuilder, validator, logger)
},
),
// 路由注册
@@ -1080,6 +1115,8 @@ func NewContainer() *Container {
routes.NewProductAdminRoutes,
// 文章路由
routes.NewArticleRoutes,
// 公告路由
routes.NewAnnouncementRoutes,
// API路由
routes.NewApiRoutes,
// 统计路由
@@ -1191,6 +1228,7 @@ func RegisterRoutes(
productRoutes *routes.ProductRoutes,
productAdminRoutes *routes.ProductAdminRoutes,
articleRoutes *routes.ArticleRoutes,
announcementRoutes *routes.AnnouncementRoutes,
apiRoutes *routes.ApiRoutes,
statisticsRoutes *routes.StatisticsRoutes,
cfg *config.Config,
@@ -1208,6 +1246,7 @@ func RegisterRoutes(
productRoutes.Register(router)
productAdminRoutes.Register(router)
articleRoutes.Register(router)
announcementRoutes.Register(router)
statisticsRoutes.Register(router)
// 打印注册的路由信息