refactor: split backend transport and domain modules
This commit is contained in:
@@ -8,6 +8,7 @@ import (
|
||||
|
||||
"kra/internal/conf"
|
||||
"kra/internal/server"
|
||||
"kra/internal/worker"
|
||||
|
||||
"github.com/go-kratos/kratos/contrib/otel/v3/tracing"
|
||||
"github.com/go-kratos/kratos/v3"
|
||||
@@ -34,7 +35,7 @@ func init() {
|
||||
flag.StringVar(&flagconf, "conf", "../../configs", "config path, eg: -conf config.yaml")
|
||||
}
|
||||
|
||||
func newApp(logger *slog.Logger, hs *server.GinServer, scheduler *server.TaskScheduler) *kratos.App {
|
||||
func newApp(logger *slog.Logger, hs *server.GinServer, scheduler *worker.TaskScheduler) *kratos.App {
|
||||
return kratos.New(
|
||||
kratos.ID(id),
|
||||
kratos.Name(Name),
|
||||
|
||||
Generated
+29
-13
@@ -12,7 +12,9 @@ import (
|
||||
"kra/internal/conf"
|
||||
"kra/internal/data"
|
||||
"kra/internal/server"
|
||||
"kra/internal/server/handler"
|
||||
"kra/internal/service"
|
||||
"kra/internal/worker"
|
||||
"log/slog"
|
||||
)
|
||||
|
||||
@@ -43,6 +45,32 @@ func wireApp(confServer *conf.Server, confData *conf.Data, adminBackend *conf.Ad
|
||||
accessRepo := data.NewAccessRepo(dataData)
|
||||
accessUsecase := biz.NewAccessUsecase(accessRepo)
|
||||
accessService := service.NewAccessService(accessUsecase)
|
||||
authority := handler.NewAuthority(accessService)
|
||||
menuRepo := data.NewMenuRepo(dataData)
|
||||
menuUsecase := biz.NewMenuUsecase(menuRepo)
|
||||
menuService := service.NewMenuService(menuUsecase)
|
||||
menu := handler.NewMenu(menuService)
|
||||
api := handler.NewAPI(accessService)
|
||||
permission := handler.NewPermission(accessService)
|
||||
organizationRepo := data.NewOrganizationRepo(dataData)
|
||||
organizationUsecase := biz.NewOrganizationUsecase(organizationRepo)
|
||||
organizationService := service.NewOrganizationService(organizationUsecase)
|
||||
organization := handler.NewOrganization(organizationService)
|
||||
announcementRepo := data.NewAnnouncementRepo(dataData)
|
||||
announcementUsecase := biz.NewAnnouncementUsecase(announcementRepo)
|
||||
announcementService := service.NewAnnouncementService(announcementUsecase)
|
||||
announcement := handler.NewAnnouncement(announcementService)
|
||||
emailRepo := data.NewEmailRepo(adminBackend)
|
||||
emailUsecase := biz.NewEmailUsecase(emailRepo)
|
||||
emailService := service.NewEmailService(emailUsecase)
|
||||
email := handler.NewEmail(emailService)
|
||||
taskRepo := data.NewTaskRepo(dataData)
|
||||
taskUsecase := biz.NewTaskUsecase(taskRepo)
|
||||
mediaRepo := data.NewMediaRepo(dataData)
|
||||
mediaUsecase := biz.NewMediaUsecase(mediaRepo, fileStorage)
|
||||
taskService := service.NewTaskService(taskUsecase, mediaUsecase, adminBackend)
|
||||
taskScheduler := worker.NewTaskScheduler(taskService, logger)
|
||||
task := handler.NewTask(taskService, taskScheduler)
|
||||
versionRepo := data.NewVersionRepo(dataData)
|
||||
versionUsecase := biz.NewVersionUsecase(versionRepo)
|
||||
versionService := service.NewVersionService(versionUsecase)
|
||||
@@ -52,20 +80,8 @@ func wireApp(confServer *conf.Server, confData *conf.Data, adminBackend *conf.Ad
|
||||
auditRepo := data.NewAuditRepo(dataData)
|
||||
auditUsecase := biz.NewAuditUsecase(auditRepo)
|
||||
auditService := service.NewAuditService(auditUsecase)
|
||||
taskRepo := data.NewTaskRepo(dataData)
|
||||
taskUsecase := biz.NewTaskUsecase(taskRepo)
|
||||
mediaRepo := data.NewMediaRepo(dataData)
|
||||
mediaUsecase := biz.NewMediaUsecase(mediaRepo, fileStorage)
|
||||
taskService := service.NewTaskService(taskUsecase, mediaUsecase, adminBackend)
|
||||
mediaService := service.NewMediaService(mediaUsecase)
|
||||
announcementRepo := data.NewAnnouncementRepo(dataData)
|
||||
announcementUsecase := biz.NewAnnouncementUsecase(announcementRepo)
|
||||
announcementService := service.NewAnnouncementService(announcementUsecase)
|
||||
emailRepo := data.NewEmailRepo(adminBackend)
|
||||
emailUsecase := biz.NewEmailUsecase(emailRepo)
|
||||
emailService := service.NewEmailService(emailUsecase)
|
||||
taskScheduler := server.NewTaskScheduler(taskService, logger)
|
||||
ginServer := server.NewGinServer(confServer, adminBackend, systemService, accessService, settingsService, versionService, exportService, auditService, taskService, mediaService, announcementService, emailService, taskScheduler, logger)
|
||||
ginServer := server.NewGinServer(confServer, adminBackend, systemService, accessService, authority, menu, api, permission, organization, announcement, email, task, settingsService, versionService, exportService, auditService, mediaService, emailService, taskScheduler, logger)
|
||||
app := newApp(logger, ginServer, taskScheduler)
|
||||
return app, func() {
|
||||
cleanup()
|
||||
|
||||
Reference in New Issue
Block a user