初始化v1
This commit is contained in:
80
internal/controller/user/user_watch_history.go
Normal file
80
internal/controller/user/user_watch_history.go
Normal file
@@ -0,0 +1,80 @@
|
||||
package user
|
||||
|
||||
import (
|
||||
"nl-video-api/internal/service"
|
||||
"github.com/gogf/gf/v2/net/ghttp"
|
||||
)
|
||||
|
||||
// UserWatchHistoryController 用户观看历史控制器
|
||||
type UserWatchHistoryController struct{}
|
||||
|
||||
var UserWatchHistory = &UserWatchHistoryController{}
|
||||
|
||||
// Add 添加观看历史
|
||||
func (c *UserWatchHistoryController) Add(r *ghttp.Request) {
|
||||
service.NewUserWatchHistoryService().Add(r)
|
||||
}
|
||||
|
||||
// GetList 获取观看历史列表
|
||||
func (c *UserWatchHistoryController) GetList(r *ghttp.Request) {
|
||||
service.NewUserWatchHistoryService().GetList(r)
|
||||
}
|
||||
|
||||
// Delete 删除观看历史
|
||||
func (c *UserWatchHistoryController) Delete(r *ghttp.Request) {
|
||||
service.NewUserWatchHistoryService().Delete(r)
|
||||
}
|
||||
|
||||
// Clear 清空观看历史
|
||||
func (c *UserWatchHistoryController) Clear(r *ghttp.Request) {
|
||||
// 获取用户ID(需要实现GetUserIdFromContext函数)
|
||||
userId := service.GetUserIdFromContext(r.Context())
|
||||
if userId == 0 {
|
||||
r.Response.WriteJson(map[string]interface{}{
|
||||
"code": 401,
|
||||
"message": "请先登录",
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
err := service.NewUserWatchHistoryService().Clear(r.Context(), &service.UserWatchHistoryClearReq{
|
||||
UserId: uint(userId),
|
||||
})
|
||||
if err != nil {
|
||||
r.Response.WriteJson(map[string]interface{}{
|
||||
"code": 1002,
|
||||
"message": err.Error(),
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
r.Response.WriteJson(map[string]interface{}{
|
||||
"code": 0,
|
||||
"message": "清空成功",
|
||||
})
|
||||
}
|
||||
|
||||
// GetProgress 获取观看进度
|
||||
func (c *UserWatchHistoryController) GetProgress(r *ghttp.Request) {
|
||||
service.NewUserWatchHistoryService().GetProgress(r)
|
||||
}
|
||||
|
||||
// List 获取观看历史列表(别名方法)
|
||||
func (c *UserWatchHistoryController) List(r *ghttp.Request) {
|
||||
c.GetList(r)
|
||||
}
|
||||
|
||||
// Get 获取单个观看历史记录
|
||||
func (c *UserWatchHistoryController) Get(r *ghttp.Request) {
|
||||
// TODO: 实现获取单个观看历史记录逻辑
|
||||
r.Response.WriteJson(map[string]interface{}{
|
||||
"code": 0,
|
||||
"message": "获取成功",
|
||||
"data": map[string]interface{}{
|
||||
"id": 1,
|
||||
"movie_id": 1,
|
||||
"progress": 50,
|
||||
"watch_time": 3600,
|
||||
},
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user