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.
41 lines
1.9 KiB
41 lines
1.9 KiB
6 days ago
|
package routes
|
||
|
|
||
|
import (
|
||
|
"gofaster/internal/auth/controller"
|
||
|
"gofaster/internal/auth/repository"
|
||
|
"gofaster/internal/auth/service"
|
||
|
|
||
|
"github.com/gin-gonic/gin"
|
||
|
"go.uber.org/zap"
|
||
|
"gorm.io/gorm"
|
||
|
)
|
||
|
|
||
|
// RegisterFrontendRouteRoutes 注册前台路由相关路由
|
||
|
func RegisterFrontendRouteRoutes(router *gin.RouterGroup, db *gorm.DB, logger *zap.Logger) {
|
||
|
// 初始化依赖
|
||
|
frontendRouteRepo := repository.NewFrontendRouteRepository(db)
|
||
|
frontendBackendRouteRepo := repository.NewFrontendBackendRouteRepository(db)
|
||
|
frontendRouteService := service.NewFrontendRouteService(frontendRouteRepo, frontendBackendRouteRepo, logger)
|
||
|
frontendRouteController := controller.NewFrontendRouteController(frontendRouteService, logger)
|
||
|
|
||
|
// 前台路由路由组
|
||
|
frontendRouteGroup := router.Group("/frontend-routes")
|
||
|
{
|
||
|
// 前台路由同步(系统初始化操作,不需要认证)
|
||
|
{
|
||
|
frontendRouteGroup.POST("/sync", frontendRouteController.SyncFrontendRoute) // 同步单个前台路由
|
||
|
frontendRouteGroup.POST("/batch-sync", frontendRouteController.BatchSyncFrontendRoutes) // 批量同步前台路由
|
||
|
}
|
||
|
|
||
|
// 前台路由查询(需要认证)
|
||
|
{
|
||
|
frontendRouteGroup.GET("", frontendRouteController.GetFrontendRoutes) // 获取前台路由列表
|
||
|
frontendRouteGroup.GET("/:id", frontendRouteController.GetFrontendRouteByID) // 根据ID获取前台路由
|
||
|
frontendRouteGroup.GET("/by-module", frontendRouteController.GetFrontendRoutesByModule) // 根据模块获取前台路由
|
||
|
frontendRouteGroup.GET("/relations", frontendRouteController.GetRouteRelations) // 获取路由关联关系
|
||
|
frontendRouteGroup.GET("/:id/relations", frontendRouteController.GetRouteRelationsByFrontendRouteID) // 根据前台路由ID获取关联关系
|
||
|
frontendRouteGroup.GET("/stats", frontendRouteController.GetStats) // 获取统计信息
|
||
|
}
|
||
|
}
|
||
|
}
|