You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
2.0 KiB
52 lines
2.0 KiB
package routes |
|
|
|
import ( |
|
"gofaster/internal/auth/controller" |
|
"gofaster/internal/shared/middleware" |
|
|
|
"github.com/gin-gonic/gin" |
|
) |
|
|
|
// RegisterMenuRouteRoutes 注册菜单路由关联表路由 |
|
func RegisterMenuRouteRoutes(r *gin.RouterGroup, menuRouteController *controller.MenuRouteController) { |
|
// 菜单路由关联表路由组 |
|
menuRouteGroup := r.Group("/menu-routes") |
|
{ |
|
// 需要认证的接口 |
|
menuRouteGroup.Use(middleware.JWTAuth()) |
|
{ |
|
// 基础CRUD操作 |
|
menuRouteGroup.POST("", menuRouteController.CreateMenuRoute) // 创建菜单路由关联 |
|
menuRouteGroup.GET("", menuRouteController.ListMenuRoutes) // 获取菜单路由关联列表 |
|
menuRouteGroup.PUT("/:id", menuRouteController.UpdateMenuRoute) // 更新菜单路由关联 |
|
menuRouteGroup.DELETE("/:id", menuRouteController.DeleteMenuRoute) // 删除菜单路由关联 |
|
} |
|
} |
|
|
|
// 菜单相关路由 |
|
menuGroup := r.Group("/menus") |
|
{ |
|
// 需要认证的接口 |
|
menuGroup.Use(middleware.JWTAuth()) |
|
{ |
|
// 菜单路由关联操作 |
|
menuGroup.POST("/:menuID/routes", menuRouteController.CreateMenuRoutes) // 批量创建菜单路由关联 |
|
menuGroup.GET("/:menuID/routes", menuRouteController.GetMenuRoutes) // 获取菜单的路由关联 |
|
menuGroup.GET("/:menuID/routes/detail", menuRouteController.GetMenuWithRoutes) // 获取菜单及其关联的路由信息 |
|
menuGroup.DELETE("/:menuID/routes", menuRouteController.DeleteMenuRoutes) // 删除菜单的所有路由关联 |
|
menuGroup.POST("/:menuID/routes/sync", menuRouteController.SyncMenuRoutes) // 同步菜单路由关联 |
|
} |
|
} |
|
|
|
// 路由映射相关路由 |
|
routeMappingGroup := r.Group("/route-mappings") |
|
{ |
|
// 需要认证的接口 |
|
routeMappingGroup.Use(middleware.JWTAuth()) |
|
{ |
|
// 路由菜单关联操作 |
|
routeMappingGroup.GET("/:routeMappingID/menus", menuRouteController.GetRouteMenus) // 获取路由的菜单关联 |
|
routeMappingGroup.GET("/:routeMappingID/menus/detail", menuRouteController.GetRouteWithMenus) // 获取路由及其关联的菜单信息 |
|
} |
|
} |
|
}
|
|
|