package router
|
|
import (
|
"net/http"
|
"speechAnalysis/conf"
|
"speechAnalysis/controllers"
|
_ "speechAnalysis/docs"
|
"speechAnalysis/middleware"
|
|
"github.com/gin-gonic/gin"
|
swaggerFiles "github.com/swaggo/files"
|
ginSwagger "github.com/swaggo/gin-swagger"
|
)
|
|
func NewRouter() *gin.Engine {
|
r := gin.Default()
|
r.Use(middleware.Cors())
|
|
r.StaticFS(conf.LocalConf.StorePath, http.Dir(conf.LocalConf.StorePath)) // 为用户头像和文件提供静态地址
|
r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
|
|
urlPrefix := "/api-sa/v1"
|
|
// 音频管理
|
audioCtl := new(controllers.AudioCtl)
|
audioAPi := r.Group(urlPrefix + "/audio")
|
{
|
audioAPi.POST("upload", audioCtl.Upload) // 上传音频
|
audioAPi.GET("list", audioCtl.List) // 音频检索
|
audioAPi.GET("info", audioCtl.AudioInfo) // 音频详情
|
audioAPi.GET("download", audioCtl.AudioDownload) // 音频下载
|
audioAPi.GET("trainInfoList", audioCtl.TrainInfoList) // 火车信息列表
|
audioAPi.POST("process", audioCtl.Process) // 音频处理
|
audioAPi.POST("batchProcess", audioCtl.BatchProcess) // 音频批量处理
|
audioAPi.DELETE("delete", audioCtl.Delete) // 音频删除
|
audioAPi.DELETE("batchDelete", audioCtl.BatchDelete) // 音频批量删除
|
audioAPi.POST("follow", audioCtl.Follow) // 关注/取消关注
|
audioAPi.GET("preLoadPath", audioCtl.PreLoadPath) // 获取自动加载路径
|
|
}
|
|
// 文字库管理
|
textCtl := new(controllers.TextCtl)
|
textApi := r.Group(urlPrefix + "/text")
|
{
|
textApi.POST("add", textCtl.AddText) // 添加文字
|
textApi.POST("update", textCtl.UpdateText) // 添加文字
|
textApi.GET("list", textCtl.List) // 文字列表
|
textApi.DELETE("delete", textCtl.DeleteText) // 删除文字
|
|
}
|
|
return r
|
}
|