package api import ( "gitea.com/bitwsd/document_ai/api/v1/formula" "gitea.com/bitwsd/document_ai/api/v1/oss" "gitea.com/bitwsd/document_ai/api/v1/task" "gitea.com/bitwsd/document_ai/api/v1/user" "gitea.com/bitwsd/document_ai/pkg/common" "github.com/gin-gonic/gin" ) func SetupRouter(engine *gin.RouterGroup) { v1 := engine.Group("/v1") { formulaRouter := v1.Group("/formula", common.GetAuthMiddleware()) { endpoint := formula.NewFormulaEndpoint() formulaRouter.POST("/recognition", endpoint.CreateTask) formulaRouter.POST("/ai_enhance", endpoint.AIEnhanceRecognition) formulaRouter.GET("/recognition/:task_no", endpoint.GetTaskStatus) } taskRouter := v1.Group("/task", common.GetAuthMiddleware()) { endpoint := task.NewTaskEndpoint() taskRouter.POST("/evaluate", endpoint.EvaluateTask) taskRouter.GET("/list", common.MustAuthMiddleware(), endpoint.GetTaskList) } ossRouter := v1.Group("/oss", common.GetAuthMiddleware()) { endpoint := oss.NewOSSEndpoint() ossRouter.POST("/signature", endpoint.GetPostObjectSignature) ossRouter.POST("/signature_url", endpoint.GetSignatureURL) ossRouter.POST("/file/upload", endpoint.UploadFile) } userRouter := v1.Group("/user", common.GetAuthMiddleware()) { userEndpoint := user.NewUserEndpoint() { userRouter.POST("/sms", userEndpoint.SendVerificationCode) userRouter.POST("/register", userEndpoint.RegisterByEmail) userRouter.POST("/login", userEndpoint.LoginByEmail) userRouter.GET("/info", common.MustAuthMiddleware(), userEndpoint.GetUserInfo) } } } }