This commit is contained in:
2026-07-21 15:53:31 +08:00
32 changed files with 1724 additions and 81 deletions

View File

@@ -0,0 +1,42 @@
package routes
import (
"hyapi-server/internal/infrastructure/http/handlers"
sharedhttp "hyapi-server/internal/shared/http"
"hyapi-server/internal/shared/middleware"
"go.uber.org/zap"
)
// AdminBlacklistRoutes 管理端黑名单路由
type AdminBlacklistRoutes struct {
handler *handlers.AdminBlacklistHandler
admin *middleware.AdminAuthMiddleware
logger *zap.Logger
}
func NewAdminBlacklistRoutes(
handler *handlers.AdminBlacklistHandler,
admin *middleware.AdminAuthMiddleware,
logger *zap.Logger,
) *AdminBlacklistRoutes {
return &AdminBlacklistRoutes{handler: handler, admin: admin, logger: logger}
}
func (r *AdminBlacklistRoutes) Register(router *sharedhttp.GinRouter) {
engine := router.GetEngine()
g := engine.Group("/api/v1/admin/blacklist")
g.Use(r.admin.Handle())
{
g.GET("/users", r.handler.ListUsers)
g.POST("/users", r.handler.AddUser)
g.DELETE("/users/:user_id", r.handler.RemoveUser)
g.GET("/ips", r.handler.ListIPs)
g.POST("/ips", r.handler.AddIP)
g.DELETE("/ips/:id", r.handler.RemoveIP)
g.GET("/hits", r.handler.ListHits)
}
r.logger.Info("管理员黑名单路由注册完成")
}

View File

@@ -57,8 +57,10 @@ func (r *UserRoutes) Register(router *sharedhttp.GinRouter) {
adminGroup.Use(r.adminAuthMiddleware.Handle())
{
adminGroup.GET("/list", r.handler.ListUsers) // 管理员查看用户列表
adminGroup.GET("/stats", r.handler.GetUserStats) // 管理员获取用户统计信息(须在 :user_id 前)
adminGroup.POST("/:user_id/blacklist", r.handler.BlacklistUser)
adminGroup.DELETE("/:user_id/blacklist", r.handler.UnblacklistUser)
adminGroup.GET("/:user_id", r.handler.GetUserDetail) // 管理员获取用户详情
adminGroup.GET("/stats", r.handler.GetUserStats) // 管理员获取用户统计信息
}
}