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) // 获取路由及其关联的菜单信息 } } }