2025-05-07 14:12:53 +08:00

97 lines
5.0 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/go-chi/chi/v5"
"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/system"
"management/internal/erpserver/service"
"management/internal/erpserver/service/v1/common"
system2 "management/internal/erpserver/service/v1/system"
"management/internal/pkg/config"
"management/internal/pkg/middleware"
"management/internal/pkg/redis"
"management/internal/pkg/render"
"management/internal/pkg/session"
)
// Injectors from wire.go:
func NewWire(configConfig *config.Config, loggerLogger *logger.Logger) (*chi.Mux, func(), error) {
db, cleanup, err := repository.NewDB(loggerLogger, configConfig)
if err != nil {
return nil, nil, err
}
sessionSession := session.New(db, configConfig)
repositoryRepository := repository.NewRepository(db, loggerLogger)
transaction := repository.NewTransaction(repositoryRepository)
cache, cleanup2, err := redis.New(configConfig, loggerLogger)
if err != nil {
cleanup()
return nil, nil, err
}
serviceService := service.NewService(loggerLogger, transaction, sessionSession, cache)
menuRepository := system.NewMenuRepository(repositoryRepository)
roleRepository := system.NewRoleRepository(repositoryRepository)
roleService := system2.NewRoleService(serviceService, roleRepository)
roleMenuRepository := system.NewRoleMenuRepository(repositoryRepository)
roleMenuService := system2.NewRoleMenuService(serviceService, roleMenuRepository)
menuService := system2.NewMenuService(serviceService, menuRepository, roleService, roleMenuService)
auditLogRepository := system.NewAuditLogRepository(repositoryRepository)
auditLogService := system2.NewAuditLogService(serviceService, auditLogRepository)
middlewareMiddleware := middleware.New(sessionSession, menuService, auditLogService)
renderRender, err := render.New(sessionSession, menuService)
if err != nil {
cleanup2()
cleanup()
return nil, nil, err
}
handlerHandler := handler.NewHandler(configConfig, loggerLogger, middlewareMiddleware, renderRender)
captchaService := common.NewCaptchaService()
captchaHandler := common2.NewCaptchaHandler(handlerHandler, captchaService)
uploadHandler := common2.NewUploadHandler(handlerHandler)
configRepository := system.NewConfigRepository(repositoryRepository)
configService := system2.NewConfigService(serviceService, configRepository)
configHandler := system3.NewConfigHandler(handlerHandler, configService)
userRepository := system.NewUserRepository(repositoryRepository)
loginLogRepository := system.NewLoginLogRepository(repositoryRepository)
loginLogService := system2.NewLoginLogService(serviceService, loginLogRepository)
userService := system2.NewUserService(serviceService, userRepository, roleService, loginLogService)
homeHandler := system3.NewHomeHandler(handlerHandler, userService, loginLogService)
departmentRepository := system.NewDepartmentRepository(repositoryRepository)
departmentService := system2.NewDepartmentService(serviceService, 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(middlewareMiddleware, captchaHandler, uploadHandler, configHandler, homeHandler, userHandler, loginLogHandler, auditHandler, menuHandler, roleHandler, departmentHandler)
return mux, 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)
var serviceSet = wire.NewSet(service.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,
)