Files
ai_wht_wechat/go_backend/router/router.go

75 lines
2.1 KiB
Go
Raw Normal View History

2025-12-19 22:36:48 +08:00
package router
import (
"ai_xhs/controller"
"ai_xhs/middleware"
"github.com/gin-gonic/gin"
)
func SetupRouter(r *gin.Engine) {
// 跨域中间件
r.Use(middleware.CORS())
// 健康检查
r.GET("/health", func(c *gin.Context) {
c.JSON(200, gin.H{
"status": "ok",
})
})
// API路由组
api := r.Group("/api")
{
// 公开接口(不需要认证)
authCtrl := controller.NewAuthController()
api.POST("/login/wechat", authCtrl.WechatLogin) // 微信登录
api.POST("/login/phone", authCtrl.PhoneLogin) // 手机号登录(测试用)
// 小红书相关公开接口
employeeCtrlPublic := controller.NewEmployeeController()
api.POST("/xhs/send-code", employeeCtrlPublic.SendXHSCode) // 发送小红书验证码
api.GET("/products", employeeCtrlPublic.GetProducts) // 获取产品列表(公开)
// 员工路由(需要认证)
employee := api.Group("/employee")
employee.Use(middleware.AuthMiddleware())
{
employeeCtrl := controller.NewEmployeeController()
// 10.1 获取员工个人信息
employee.GET("/profile", employeeCtrl.GetProfile)
// 10.2 绑定小红书账号
employee.POST("/bind-xhs", employeeCtrl.BindXHS)
// 10.3 解绑小红书账号
employee.POST("/unbind-xhs", employeeCtrl.UnbindXHS)
// 10.4 获取可领取文案列表
employee.GET("/available-copies", employeeCtrl.GetAvailableCopies)
// 10.5 领取文案
employee.POST("/claim-copy", employeeCtrl.ClaimCopy)
// 10.6 随机领取文案
employee.POST("/claim-random-copy", employeeCtrl.ClaimRandomCopy)
// 10.7 发布内容
employee.POST("/publish", employeeCtrl.Publish)
// 10.8 获取我的发布记录
employee.GET("/my-publish-records", employeeCtrl.GetMyPublishRecords)
// 10.8.1 获取发布记录详情
employee.GET("/publish-record/:id", employeeCtrl.GetPublishRecordDetail)
// 10.9 检查小红书绑定与Cookie状态
employee.GET("/xhs/status", employeeCtrl.CheckXHSStatus)
2025-12-20 01:05:46 +08:00
// 10.10 更新文案状态(通过/拒绝)
employee.POST("/article/:id/status", employeeCtrl.UpdateArticleStatus)
2025-12-19 22:36:48 +08:00
}
}
}