2025-06-14 21:12:52 +08:00

104 lines
5.1 KiB
Go

// Code generated by Wire. DO NOT EDIT.
//go:generate go run -mod=mod github.com/google/wire/cmd/wire
//go:build !wireinject
// +build !wireinject
package erpserver
import (
"github.com/drhin/logger"
"github.com/google/wire"
"management/internal/erpserver/handler"
common2 "management/internal/erpserver/handler/common"
system3 "management/internal/erpserver/handler/system"
"management/internal/erpserver/repository"
"management/internal/erpserver/repository/seed"
"management/internal/erpserver/repository/system"
"management/internal/erpserver/service/v1"
"management/internal/erpserver/service/v1/common"
system2 "management/internal/erpserver/service/v1/system"
"management/internal/pkg/cache"
"management/internal/pkg/config"
"management/internal/pkg/render"
"management/internal/pkg/session"
)
// Injectors from wire.go:
func NewWire(configConfig *config.Config, loggerLogger *logger.Logger) (App, func(), error) {
db, cleanup, err := repository.NewDB(loggerLogger, configConfig)
if err != nil {
return App{}, nil, err
}
repositoryRepository := repository.NewRepository(db, loggerLogger)
configRepository := system.NewConfigRepository(repositoryRepository)
departmentRepository := system.NewDepartmentRepository(repositoryRepository)
roleRepository := system.NewRoleRepository(repositoryRepository)
userRepository := system.NewUserRepository(repositoryRepository)
menuRepository := system.NewMenuRepository(repositoryRepository)
seedSeed := seed.NewSeed(configRepository, departmentRepository, roleRepository, userRepository, menuRepository)
transaction := repository.NewTransaction(repositoryRepository)
client, cleanup2, err := cache.ConnectRedis(configConfig, loggerLogger)
if err != nil {
cleanup()
return App{}, nil, err
}
manager, err := session.NewSCSManager(client, configConfig)
if err != nil {
cleanup2()
cleanup()
return App{}, nil, err
}
cacheCache := cache.NewRedisCache(client)
service := v1.NewService(loggerLogger, transaction, manager, cacheCache)
auditLogRepository := system.NewAuditLogRepository(repositoryRepository)
auditLogService := system2.NewAuditLogService(service, auditLogRepository)
roleService := system2.NewRoleService(service, roleRepository)
roleMenuRepository := system.NewRoleMenuRepository(repositoryRepository)
roleMenuService := system2.NewRoleMenuService(service, roleMenuRepository)
menuService := system2.NewMenuService(service, menuRepository, roleService, roleMenuService)
renderRender, err := render.New(manager, menuService)
if err != nil {
cleanup2()
cleanup()
return App{}, nil, err
}
handlerHandler := handler.NewHandler(configConfig, loggerLogger, manager, renderRender)
captchaService := common.NewCaptchaService()
captchaHandler := common2.NewCaptchaHandler(handlerHandler, captchaService)
uploadHandler := common2.NewUploadHandler(handlerHandler)
configService := system2.NewConfigService(service, configRepository)
configHandler := system3.NewConfigHandler(handlerHandler, configService)
loginLogRepository := system.NewLoginLogRepository(repositoryRepository)
loginLogService := system2.NewLoginLogService(service, loginLogRepository)
userService := system2.NewUserService(service, userRepository, roleService, loginLogService)
homeHandler := system3.NewHomeHandler(handlerHandler, userService, loginLogService)
departmentService := system2.NewDepartmentService(service, departmentRepository)
userHandler := system3.NewUserHandler(handlerHandler, captchaService, userService, roleService, departmentService)
loginLogHandler := system3.NewLoginLogHandler(handlerHandler, loginLogService)
auditHandler := system3.NewAuditHandler(handlerHandler, auditLogService)
menuHandler := system3.NewMenuHandler(handlerHandler, menuService)
roleHandler := system3.NewRoleHandler(handlerHandler, roleService, menuService)
departmentHandler := system3.NewDepartmentHandler(handlerHandler, departmentService)
mux := NewHTTPServer(manager, loggerLogger, menuService, auditLogService, captchaHandler, uploadHandler, configHandler, homeHandler, userHandler, loginLogHandler, auditHandler, menuHandler, roleHandler, departmentHandler)
app := NewApp(seedSeed, auditLogService, mux)
return app, func() {
cleanup2()
cleanup()
}, nil
}
// wire.go:
var repositorySet = wire.NewSet(repository.NewDB, repository.NewRepository, repository.NewTransaction, system.NewUserRepository, system.NewLoginLogRepository, system.NewAuditLogRepository, system.NewRoleRepository, system.NewMenuRepository, system.NewRoleMenuRepository, system.NewDepartmentRepository, system.NewConfigRepository, seed.NewSeed)
var serviceSet = wire.NewSet(v1.NewService, common.NewCaptchaService, system2.NewUserService, system2.NewLoginLogService, system2.NewAuditLogService, system2.NewRoleService, system2.NewMenuService, system2.NewRoleMenuService, system2.NewDepartmentService, system2.NewConfigService)
var handlerSet = wire.NewSet(handler.NewHandler, common2.NewCaptchaHandler, common2.NewUploadHandler, system3.NewHomeHandler, system3.NewUserHandler, system3.NewLoginLogHandler, system3.NewAuditHandler, system3.NewRoleHandler, system3.NewMenuHandler, system3.NewDepartmentHandler, system3.NewConfigHandler)
var serverSet = wire.NewSet(
NewHTTPServer,
NewApp,
)