package server import ( "admin/apps/game/model/dto" "admin/internal/consts" "admin/internal/context" "admin/lib/web" ) func (srv *Server) Route(engine *web.Engine) { apiGroup := engine.Group("/api", "") { // 注册项目增删改查接口 projectGroup := apiGroup.Group("/"+consts.ResourcesName_Project, "项目") projectGroup.Get("", "查看列表", consts.WebPathPermit_Read, srv.ctl.CommonList) projectGroup.Post("", "新增", consts.WebPathPermit_Read, srv.ctl.CommonPost) projectGroup.Put("", "编辑", consts.WebPathPermit_Read, srv.ctl.CommonPut) projectGroup.Delete("", "删除", consts.WebPathPermit_Read, srv.ctl.CommonDelete) // 注册项目之下其它所有资源通用增删改查接口 { resourceUnderProjectGroup := projectGroup.Group("/:projectId/:resource", "") resourceUnderProjectGroup.Get("", "查看列表", consts.WebPathPermit_Read, srv.ctl.CommonList) resourceUnderProjectGroup.Post("", "新增", consts.WebPathPermit_Read, srv.ctl.CommonPost) resourceUnderProjectGroup.Put("", "编辑", consts.WebPathPermit_Read, srv.ctl.CommonPut) resourceUnderProjectGroup.Delete("", "删除", consts.WebPathPermit_Read, srv.ctl.CommonDelete) } projectGroup.Get("/resourcelist", "获取支持的资源列表,用于客户端生成前端操作菜单", consts.WebPathPermit_Read, srv.getResourceList) } } func (srv *Server) getResourceList(ctx *context.WebContext, params *dto.NilReq, rsp *dto.ResourceListRsp) error { for _, v := range srv.ctl.svc.GetSupportResourcesList() { if v.Resource == consts.ResourcesName_Project { continue } rsp.List = append(rsp.List, v) } return nil }