package routes import ( "tyapi-server/internal/infrastructure/http/handlers" sharedhttp "tyapi-server/internal/shared/http" "tyapi-server/internal/shared/middleware" "go.uber.org/zap" ) // 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, } } // Register 注册认证相关路由 func (r *CertificationRoutes) Register(router *sharedhttp.GinRouter) { // 认证相关路由组,需要用户认证 engine := router.GetEngine() certificationGroup := engine.Group("/api/v1/certification") certificationGroup.Use(r.authMiddleware.Handle()) { // 创建认证申请 certificationGroup.POST("", r.certificationHandler.CreateCertification) // 营业执照上传 certificationGroup.POST("/upload-license", r.certificationHandler.UploadBusinessLicense) // 获取OCR识别结果 certificationGroup.GET("/license/:record_id/ocr-result", r.certificationHandler.GetLicenseOCRResult) // 获取认证状态 certificationGroup.GET("/status", r.certificationHandler.GetCertificationStatus) // 获取进度统计 certificationGroup.GET("/stats", r.certificationHandler.GetProgressStats) // 获取认证进度 certificationGroup.GET("/progress", r.certificationHandler.GetCertificationProgress) // 提交企业信息 certificationGroup.POST("/enterprise-info", r.certificationHandler.SubmitEnterpriseInfo) // 发起人脸识别验证 certificationGroup.POST("/face-verify", r.certificationHandler.InitiateFaceVerify) // 申请合同签署 certificationGroup.POST("/contract", r.certificationHandler.ApplyContract) // 获取认证详情 certificationGroup.GET("/details", r.certificationHandler.GetCertificationDetails) // 重试认证步骤 certificationGroup.POST("/retry/:step", r.certificationHandler.RetryStep) } r.logger.Info("认证路由注册完成") }