81 lines
1.7 KiB
Go
81 lines
1.7 KiB
Go
package app
|
|
|
|
import (
|
|
"github.com/gin-gonic/gin"
|
|
"go.uber.org/zap"
|
|
"miniapp/global"
|
|
"miniapp/model/app"
|
|
"miniapp/model/app/request"
|
|
r "miniapp/model/common/response"
|
|
)
|
|
|
|
type FavoriteApi struct{}
|
|
|
|
// GetList 获取收藏列表
|
|
func (f *FavoriteApi) GetList(ctx *gin.Context) {
|
|
var p request.GetFavoriteList
|
|
|
|
if err := ctx.ShouldBind(&p); err != nil {
|
|
r.FailWithMessage(err.Error(), ctx)
|
|
global.GVA_LOG.Error("获取收藏列表失败", zap.Error(err))
|
|
return
|
|
}
|
|
|
|
// 获取收藏列表
|
|
err, list, total := favoriteService.GetFavoriteList(p)
|
|
if err != nil {
|
|
r.FailWithMessage(err.Error(), ctx)
|
|
global.GVA_LOG.Error("获取收藏列表失败", zap.Error(err))
|
|
return
|
|
}
|
|
|
|
r.OkWithData(r.PageResult{
|
|
List: list,
|
|
Total: total,
|
|
Page: p.Page,
|
|
PageSize: p.PageSize,
|
|
}, ctx)
|
|
}
|
|
|
|
// Create 创建收藏
|
|
func (f *FavoriteApi) Create(ctx *gin.Context) {
|
|
var p app.Favorite
|
|
|
|
if err := ctx.ShouldBind(&p); err != nil {
|
|
r.FailWithMessage(err.Error(), ctx)
|
|
global.GVA_LOG.Error("创建收藏失败", zap.Error(err))
|
|
return
|
|
}
|
|
|
|
// 创建收藏
|
|
err := favoriteService.CreateFavorite(&p)
|
|
if err != nil {
|
|
r.FailWithMessage(err.Error(), ctx)
|
|
global.GVA_LOG.Error("创建收藏失败", zap.Error(err))
|
|
return
|
|
}
|
|
|
|
r.Ok(ctx)
|
|
}
|
|
|
|
// Delete 删除收藏
|
|
func (f *FavoriteApi) Delete(ctx *gin.Context) {
|
|
var p app.Favorite
|
|
|
|
if err := ctx.ShouldBind(&p); err != nil {
|
|
r.FailWithMessage(err.Error(), ctx)
|
|
global.GVA_LOG.Error("删除收藏失败", zap.Error(err))
|
|
return
|
|
}
|
|
|
|
// 删除收藏
|
|
err := favoriteService.DeleteFavorite(&p)
|
|
if err != nil {
|
|
r.FailWithMessage(err.Error(), ctx)
|
|
global.GVA_LOG.Error("删除收藏失败", zap.Error(err))
|
|
return
|
|
}
|
|
|
|
r.Ok(ctx)
|
|
}
|