You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.3 KiB
Go
54 lines
1.3 KiB
Go
package purchase
|
|
|
|
import (
|
|
"cls/internal/application/purchase"
|
|
"cls/internal/interfaces"
|
|
"cls/pkg/logger"
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
type PurchaseHandler struct {
|
|
purchaseService *purchase.Service
|
|
log logger.Logger
|
|
}
|
|
|
|
func NewPurchaseHandler(service *purchase.Service, logger logger.New) *PurchaseHandler {
|
|
return &PurchaseHandler{
|
|
purchaseService: service,
|
|
log: logger("panoramic:interfaces:purchase"),
|
|
}
|
|
}
|
|
|
|
var _ interfaces.Handler = (*PurchaseHandler)(nil)
|
|
|
|
// Register 注册路由
|
|
func (h *PurchaseHandler) RegisterRouters(r gin.IRouter) {
|
|
purchaseGroup := r.Group("/purchases")
|
|
{
|
|
purchaseGroup.POST("/save", h.CreatePurchase)
|
|
purchaseGroup.GET("/user/:userId", h.GetUserPurchases)
|
|
purchaseGroup.GET("/content/:contentId", h.GetContentPurchases)
|
|
}
|
|
}
|
|
|
|
// CreatePurchase 创建购买记录
|
|
func (h *PurchaseHandler) CreatePurchase(c *gin.Context) {
|
|
// ... 实现代码
|
|
}
|
|
|
|
// GetUserPurchases 获取用户的购买记录
|
|
func (h *PurchaseHandler) GetUserPurchases(c *gin.Context) {
|
|
// ... 实现代码
|
|
}
|
|
|
|
// GetContentPurchases 获取内容的购买记录
|
|
func (h *PurchaseHandler) GetContentPurchases(c *gin.Context) {
|
|
// ... 实现代码
|
|
}
|
|
|
|
// CheckPermission 检查权限中间件
|
|
func (h *PurchaseHandler) CheckPermission() gin.HandlerFunc {
|
|
// ... 实现代码
|
|
return nil
|
|
}
|