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) } }