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) } // UpdatePriceBatch 批量更新价格 func (a *TeacherVip) UpdatePriceBatch(context *gin.Context) { var p request.UpdateTeacherVipPriceBatch if err := context.ShouldBind(&p); err != nil { global.GVA_LOG.Error("参数错误,批量更新价格失败", zap.Error(err)) r.FailWithMessage("参数错误,批量更新价格失败", context) return } err := teacherVipService.UpdatePriceBatch(p) if err != nil { r.FailWithMessage("批量更新价格失败", context) return } r.OkWithMessage("批量更新价格成功", context) }