package article import ( "git.echol.cn/loser/lckt/global" "git.echol.cn/loser/lckt/model/article" "git.echol.cn/loser/lckt/model/article/request" r "git.echol.cn/loser/lckt/model/common/response" "github.com/gin-gonic/gin" "go.uber.org/zap" ) type ArticleApi struct{} func (ArticleApi) Create(ctx *gin.Context) { var p article.Article if err := ctx.ShouldBind(&p); err != nil { r.FailWithMessage(err.Error(), ctx) global.GVA_LOG.Error("参数有误!", zap.Error(err)) return } err := articleService.CreateArticle(p) if err != nil { global.GVA_LOG.Error("创建失败!", zap.Error(err)) r.FailWithMessage("创建失败:"+err.Error(), ctx) return } r.OkWithMessage("创建成功", ctx) } func (ArticleApi) Delete(ctx *gin.Context) { var ids request.DeleteIds if err := ctx.ShouldBind(&ids); err != nil { r.FailWithMessage(err.Error(), ctx) global.GVA_LOG.Error("参数有误!", zap.Error(err)) return } err := articleService.DeleteArticle(ids) if err != nil { global.GVA_LOG.Error("删除失败!", zap.Error(err)) r.FailWithMessage("删除失败:"+err.Error(), ctx) return } r.OkWithMessage("删除成功", ctx) } func (ArticleApi) Update(ctx *gin.Context) { var p article.Article if err := ctx.ShouldBind(&p); err != nil { r.FailWithMessage(err.Error(), ctx) global.GVA_LOG.Error("参数有误!", zap.Error(err)) return } err := articleService.UpdateArticle(p) if err != nil { global.GVA_LOG.Error("更新失败!", zap.Error(err)) r.FailWithMessage("更新失败:"+err.Error(), ctx) return } r.OkWithMessage("更新成功", ctx) } func (ArticleApi) List(ctx *gin.Context) { var p request.GetList if err := ctx.ShouldBind(&p); err != nil { r.FailWithMessage(err.Error(), ctx) global.GVA_LOG.Error("参数有误!", zap.Error(err)) return } list, total, err := articleService.GetArticleList(p) if err != nil { global.GVA_LOG.Error("查询失败!", zap.Error(err)) r.FailWithMessage("查询失败:"+err.Error(), ctx) return } r.OkWithDetailed(gin.H{"list": list, "total": total}, "查询成功", ctx) } // ById 根据ID获取文章 func (ArticleApi) ById(ctx *gin.Context) { id := ctx.Param("id") article, err := articleService.GetArticle(id) if err != nil { global.GVA_LOG.Error("查询失败!", zap.Error(err)) r.FailWithMessage("查询失败:"+err.Error(), ctx) return } r.OkWithData(article, ctx) }