// Package router 路由配置 package router import ( "net/http" "github.com/gin-gonic/gin" "billai-server/handler" ) // Config 路由配置参数 type Config struct { OutputDir string // 输出目录(用于静态文件服务) PythonPath string // Python 路径(用于健康检查显示) } // Setup 设置所有路由 func Setup(r *gin.Engine, cfg Config) { // 健康检查 r.GET("/health", healthCheck(cfg.PythonPath)) // API 路由组 setupAPIRoutes(r) // 静态文件下载 r.Static("/download", cfg.OutputDir) } // healthCheck 健康检查处理器 func healthCheck(pythonPath string) gin.HandlerFunc { return func(c *gin.Context) { c.JSON(http.StatusOK, gin.H{ "status": "ok", "python_path": pythonPath, }) } } // setupAPIRoutes 设置 API 路由 func setupAPIRoutes(r *gin.Engine) { api := r.Group("/api") { // 账单上传 api.POST("/upload", handler.Upload) // 复核相关 api.GET("/review", handler.Review) // 账单查询 api.GET("/bills", handler.ListBills) } }