2025-04-18 17:17:23 +08:00

58 lines
2.4 KiB
Go

package server
import (
"admin/apps/game/model/dto"
"admin/internal/context"
"admin/lib/web"
)
func (srv *Server) Route(engine *web.Engine) {
apiGroup := engine.Group("/api")
srv.proRoute(apiGroup)
srv.serverRoute(apiGroup)
}
func (srv *Server) proRoute(engine *web.Group) {
resourceName := "project"
proGroup := engine.Group("/" + resourceName)
proGroup.Get("", "获取项目列表", web.AccessMode_Read, dto.CommonListReq{}, commonHandlerList(srv.ctl, resourceName))
proGroup.Post("", "新增项目", web.AccessMode_Read, dto.CommonPostReq{}, commonHandlerList(srv.ctl, resourceName))
proGroup.Put("", "修改项目", web.AccessMode_Read, dto.CommonPutReq{}, commonHandlerList(srv.ctl, resourceName))
proGroup.Delete("", "删除项目", web.AccessMode_Read, dto.CommonDeleteReq{}, commonHandlerList(srv.ctl, resourceName))
}
func (srv *Server) serverRoute(engine *web.Group) {
resourceName := "server"
proGroup := engine.Group("/" + resourceName)
proGroup.Get("", "获取服务器列表", web.AccessMode_Read, dto.CommonListReq{}, commonHandlerList(srv.ctl, resourceName))
proGroup.Post("", "新增服务器", web.AccessMode_Read, dto.CommonPostReq{}, commonHandlerList(srv.ctl, resourceName))
proGroup.Put("", "修改服务器", web.AccessMode_Read, dto.CommonPutReq{}, commonHandlerList(srv.ctl, resourceName))
proGroup.Delete("", "删除服务器", web.AccessMode_Read, dto.CommonDeleteReq{}, commonHandlerList(srv.ctl, resourceName))
}
func commonHandlerList(ctl *controller, resourceName string) func(ctx *context.WebContext, params *dto.CommonListReq) {
return func(ctx *context.WebContext, params *dto.CommonListReq) {
ctl.CommonList(ctx, resourceName, params)
}
}
func commonHandlerPost(ctl *controller, resourceName string) func(ctx *context.WebContext, params *dto.CommonPostReq) {
return func(ctx *context.WebContext, params *dto.CommonPostReq) {
ctl.CommonPost(ctx, resourceName, params.Dto)
}
}
func commonHandlerPut(ctl *controller, resourceName string) func(ctx *context.WebContext, params *dto.CommonPutReq) {
return func(ctx *context.WebContext, params *dto.CommonPutReq) {
ctl.CommonPut(ctx, resourceName, params.Dto)
}
}
func commonHandlerDelete(ctl *controller, resourceName string) func(ctx *context.WebContext, params *dto.CommonDeleteReq) {
return func(ctx *context.WebContext, params *dto.CommonDeleteReq) {
ctl.CommonDelete(ctx, resourceName, params.Id)
}
}