Add verification status checks to protected routes including post creation, updates, deletion, likes, favorites, voting, and WebSocket connections. Also rename RequireVerification middleware to RequireVerified and update error response format with string error codes.
98 lines
2.4 KiB
Go
98 lines
2.4 KiB
Go
//go:build wireinject
|
|
// +build wireinject
|
|
|
|
package main
|
|
|
|
import (
|
|
"carrot_bbs/internal/handler"
|
|
"carrot_bbs/internal/repository"
|
|
"carrot_bbs/internal/router"
|
|
"carrot_bbs/internal/service"
|
|
appwire "carrot_bbs/internal/wire"
|
|
|
|
"github.com/google/wire"
|
|
)
|
|
|
|
// InitializeApp 初始化应用程序
|
|
func InitializeApp() (*App, error) {
|
|
wire.Build(
|
|
appwire.AllSet,
|
|
NewApp,
|
|
ProvideRouter,
|
|
)
|
|
return nil, nil
|
|
}
|
|
|
|
// ProvideRouter 提供路由
|
|
func ProvideRouter(
|
|
userRepo repository.UserRepository,
|
|
userHandler *handler.UserHandler,
|
|
postHandler *handler.PostHandler,
|
|
commentHandler *handler.CommentHandler,
|
|
messageHandler *handler.MessageHandler,
|
|
notificationHandler *handler.NotificationHandler,
|
|
uploadHandler *handler.UploadHandler,
|
|
jwtService *service.JWTService,
|
|
pushHandler *handler.PushHandler,
|
|
systemMessageHandler *handler.SystemMessageHandler,
|
|
groupHandler *handler.GroupHandler,
|
|
stickerHandler *handler.StickerHandler,
|
|
voteHandler *handler.VoteHandler,
|
|
channelHandler *handler.ChannelHandler,
|
|
scheduleHandler *handler.ScheduleHandler,
|
|
roleHandler *handler.RoleHandler,
|
|
adminUserHandler *handler.AdminUserHandler,
|
|
adminPostHandler *handler.AdminPostHandler,
|
|
adminCommentHandler *handler.AdminCommentHandler,
|
|
adminGroupHandler *handler.AdminGroupHandler,
|
|
adminDashboardHandler *handler.AdminDashboardHandler,
|
|
adminLogHandler *handler.AdminLogHandler,
|
|
qrcodeHandler *handler.QRCodeHandler,
|
|
materialHandler *handler.MaterialHandler,
|
|
callHandler *handler.CallHandler,
|
|
reportHandler *handler.ReportHandler,
|
|
adminReportHandler *handler.AdminReportHandler,
|
|
verificationHandler *handler.VerificationHandler,
|
|
adminVerificationHandler *handler.AdminVerificationHandler,
|
|
logService *service.LogService,
|
|
activityService service.UserActivityService,
|
|
casbinService service.CasbinService,
|
|
wsHandler *handler.WSHandler,
|
|
) *router.Router {
|
|
return router.New(
|
|
userRepo,
|
|
userHandler,
|
|
postHandler,
|
|
commentHandler,
|
|
messageHandler,
|
|
notificationHandler,
|
|
uploadHandler,
|
|
jwtService,
|
|
pushHandler,
|
|
systemMessageHandler,
|
|
groupHandler,
|
|
stickerHandler,
|
|
voteHandler,
|
|
channelHandler,
|
|
scheduleHandler,
|
|
roleHandler,
|
|
adminUserHandler,
|
|
adminPostHandler,
|
|
adminCommentHandler,
|
|
adminGroupHandler,
|
|
adminDashboardHandler,
|
|
adminLogHandler,
|
|
qrcodeHandler,
|
|
materialHandler,
|
|
callHandler,
|
|
reportHandler,
|
|
adminReportHandler,
|
|
verificationHandler,
|
|
adminVerificationHandler,
|
|
logService,
|
|
activityService,
|
|
casbinService,
|
|
wsHandler,
|
|
)
|
|
}
|