package routes import ( "github.com/gin-gonic/gin" "go.uber.org/zap" "tyapi-server/internal/domains/certification/handlers" "tyapi-server/internal/shared/middleware" ) // CertificationRoutes 认证路由组 type CertificationRoutes struct { certificationHandler *handlers.CertificationHandler authMiddleware *middleware.JWTAuthMiddleware logger *zap.Logger } // NewCertificationRoutes 创建认证路由 func NewCertificationRoutes( certificationHandler *handlers.CertificationHandler, authMiddleware *middleware.JWTAuthMiddleware, logger *zap.Logger, ) *CertificationRoutes { return &CertificationRoutes{ certificationHandler: certificationHandler, authMiddleware: authMiddleware, logger: logger, } } // RegisterRoutes 注册认证相关路由 func (r *CertificationRoutes) RegisterRoutes(router *gin.Engine) { // 认证相关路由组,需要用户认证 certificationGroup := router.Group("/api/v1/certification") certificationGroup.Use(r.authMiddleware.Handle()) { // 创建认证申请 certificationGroup.POST("/create", r.certificationHandler.CreateCertification) // 上传营业执照 certificationGroup.POST("/upload-license", r.certificationHandler.UploadLicense) // 获取认证状态 certificationGroup.GET("/status", r.certificationHandler.GetCertificationStatus) // 获取进度统计 certificationGroup.GET("/progress", r.certificationHandler.GetProgressStats) // 提交企业信息 certificationGroup.PUT("/:id/submit-info", r.certificationHandler.SubmitEnterpriseInfo) // 发起人脸识别验证 certificationGroup.POST("/:id/face-verify", r.certificationHandler.InitiateFaceVerify) // 申请合同签署 certificationGroup.POST("/:id/apply-contract", r.certificationHandler.ApplyContract) // 获取认证详情 certificationGroup.GET("/:id", r.certificationHandler.GetCertificationDetails) // 重试认证步骤 certificationGroup.POST("/:id/retry", r.certificationHandler.RetryStep) } r.logger.Info("认证路由注册完成") }