113 lines
3.3 KiB
Go
113 lines
3.3 KiB
Go
package app
|
|
|
|
import (
|
|
"git.echol.cn/loser/lckt/global"
|
|
"git.echol.cn/loser/lckt/model/app"
|
|
"git.echol.cn/loser/lckt/model/app/request"
|
|
common "git.echol.cn/loser/lckt/model/common/request"
|
|
r "git.echol.cn/loser/lckt/model/common/response"
|
|
"git.echol.cn/loser/lckt/utils"
|
|
"github.com/gin-gonic/gin"
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
type TeacherVip struct{}
|
|
|
|
// CreateTeacherVip 创建讲师VIP
|
|
func (a *TeacherVip) CreateTeacherVip(context *gin.Context) {
|
|
var p app.TeacherVip
|
|
if err := context.ShouldBind(&p); err != nil {
|
|
global.GVA_LOG.Error("参数错误,创建讲师VIP失败", zap.Error(err))
|
|
r.FailWithMessage("参数错误,创建讲师VIP失败", context)
|
|
return
|
|
}
|
|
|
|
id := utils.GetUserID(context)
|
|
|
|
err := teacherVipService.CreateTeacherVip(p, id)
|
|
if err != nil {
|
|
global.GVA_LOG.Error("创建讲师VIP失败", zap.Error(err))
|
|
r.FailWithMessage("创建讲师VIP失败", context)
|
|
return
|
|
}
|
|
r.OkWithMessage("创建讲师VIP成功", context)
|
|
}
|
|
|
|
// DeleteTeacherVip 删除讲师VIP
|
|
func (a *TeacherVip) DeleteTeacherVip(context *gin.Context) {
|
|
var p app.TeacherVip
|
|
if err := context.ShouldBindJSON(&p); err != nil {
|
|
global.GVA_LOG.Error("参数错误,删除讲师VIP失败", zap.Error(err))
|
|
r.FailWithMessage("参数错误,删除讲师VIP失败", context)
|
|
return
|
|
}
|
|
|
|
err := teacherVipService.DeleteTeacherVip(p)
|
|
if err != nil {
|
|
global.GVA_LOG.Error("删除讲师VIP失败", zap.Error(err))
|
|
r.FailWithMessage("删除讲师VIP失败", context)
|
|
return
|
|
}
|
|
r.OkWithMessage("删除讲师VIP成功", context)
|
|
}
|
|
|
|
// Update 更新讲师VIP
|
|
func (a *TeacherVip) Update(context *gin.Context) {
|
|
var p app.TeacherVip
|
|
if err := context.ShouldBindJSON(&p); err != nil {
|
|
global.GVA_LOG.Error("参数错误,更新讲师VIP失败", zap.Error(err))
|
|
r.FailWithMessage("参数错误,更新讲师VIP失败", context)
|
|
return
|
|
}
|
|
|
|
err := teacherVipService.Update(p)
|
|
if err != nil {
|
|
global.GVA_LOG.Error("更新讲师VIP失败", zap.Error(err))
|
|
r.FailWithMessage("更新讲师VIP失败", context)
|
|
return
|
|
}
|
|
r.OkWithMessage("更新讲师VIP成功", context)
|
|
}
|
|
|
|
// GetTeacherVipList 获取讲师VIP列表
|
|
func (a *TeacherVip) GetTeacherVipList(context *gin.Context) {
|
|
var p request.GetTeacherVipList
|
|
if err := context.ShouldBind(&p); err != nil {
|
|
global.GVA_LOG.Error("参数错误,获取讲师VIP列表失败", zap.Error(err))
|
|
r.FailWithMessage("参数错误,获取讲师VIP列表失败", context)
|
|
return
|
|
}
|
|
|
|
vips, total, err := teacherVipService.GetTeacherVipList(p)
|
|
if err != nil {
|
|
global.GVA_LOG.Error("获取讲师VIP列表失败", zap.Error(err))
|
|
r.FailWithMessage("获取讲师VIP列表失败", context)
|
|
return
|
|
}
|
|
|
|
r.OkWithDetailed(
|
|
r.PageResult{
|
|
List: vips,
|
|
Total: total,
|
|
Page: p.Page,
|
|
PageSize: p.PageSize,
|
|
}, "获取讲师VIP列表成功", context)
|
|
}
|
|
|
|
func (a *TeacherVip) GetTeacherVip(context *gin.Context) {
|
|
var p common.GetById
|
|
if err := context.ShouldBind(&p); err != nil {
|
|
global.GVA_LOG.Error("参数错误,获取讲师VIP失败", zap.Error(err))
|
|
r.FailWithMessage("参数错误,获取讲师VIP失败", context)
|
|
return
|
|
}
|
|
|
|
vip, err := teacherVipService.GetTeacherVip(p.ID)
|
|
if err != nil {
|
|
global.GVA_LOG.Error("获取讲师VIP失败", zap.Error(err))
|
|
r.FailWithMessage("获取讲师VIP失败", context)
|
|
return
|
|
}
|
|
r.OkWithDetailed(vip, "获取讲师VIP成功", context)
|
|
}
|