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.
36 lines
1.3 KiB
36 lines
1.3 KiB
1 week 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"
|
||
|
)
|
||
|
|
||
|
// RegisterRouteSyncRoutes 注册路由同步相关路由
|
||
|
func RegisterRouteSyncRoutes(router *gin.RouterGroup, db *gorm.DB, logger *zap.Logger) {
|
||
|
// 初始化依赖
|
||
|
routeMappingRepo := repository.NewRouteMappingRepository(db)
|
||
|
resourceRepo := repository.NewResourceRepository(db)
|
||
|
routeSyncService := service.NewRouteSyncService(routeMappingRepo, resourceRepo, logger)
|
||
|
routeSyncController := controller.NewRouteSyncController(routeSyncService, logger)
|
||
|
|
||
|
// 路由同步路由组
|
||
|
routeSyncGroup := router.Group("/route-mappings")
|
||
|
{
|
||
|
// 临时移除认证要求,用于开发测试
|
||
|
// TODO: 后续添加认证逻辑
|
||
|
// routeSyncGroup.Use(middleware.JWTAuth())
|
||
|
{
|
||
|
// 前端路由同步
|
||
|
routeSyncGroup.POST("/sync", routeSyncController.SyncFrontendRoute) // 同步单个前端路由
|
||
|
routeSyncGroup.POST("/batch-sync", routeSyncController.BatchSyncFrontendRoutes) // 批量同步前端路由
|
||
|
routeSyncGroup.GET("/sync-status", routeSyncController.GetSyncStatus) // 获取同步状态
|
||
|
routeSyncGroup.GET("/frontend", routeSyncController.GetFrontendRoutes) // 获取前端路由列表
|
||
|
}
|
||
|
}
|
||
|
}
|