From c44a1e565bc614a75186b0d6d279e3bf66046cb0 Mon Sep 17 00:00:00 2001 From: wucongxing8150 <815046773@qq.com> Date: Wed, 11 Sep 2024 13:20:33 +0800 Subject: [PATCH] 1 --- api/controller/Article.go | 12 +++++++++++- api/controller/Video.go | 12 +++++++++++- api/dao/ArticleAuthor.go | 9 +++++++++ api/dao/VideoAuthor.go | 9 +++++++++ 4 files changed, 40 insertions(+), 2 deletions(-) diff --git a/api/controller/Article.go b/api/controller/Article.go index 064811e..029db48 100644 --- a/api/controller/Article.go +++ b/api/controller/Article.go @@ -92,12 +92,22 @@ func (r *Article) GetArticle(c *gin.Context) { // 获取数据 articleDao := dao.ArticleDao{} - article, err := articleDao.GetArticlePreloadById(articleId) + article, err := articleDao.GetArticleById(articleId) if err != nil { responses.FailWithMessage("文章错误", c) return } + // 获取文章作者 + articleAuthorDao := dao.ArticleAuthorDao{} + articleAuthors, err := articleAuthorDao.GetArticleAuthorListPreloadByAuthorId(articleId) + if err != nil { + responses.FailWithMessage("文章错误", c) + return + } + + article.ArticleAuthor = articleAuthors + // 获取排名 rank, _ := articleDao.GetArticleRank(article.ArticleId) diff --git a/api/controller/Video.go b/api/controller/Video.go index 2a495e7..c553c4e 100644 --- a/api/controller/Video.go +++ b/api/controller/Video.go @@ -92,12 +92,22 @@ func (r *Video) GetVideo(c *gin.Context) { // 获取数据 videoDao := dao.VideoDao{} - video, err := videoDao.GetVideoPreloadById(videoId) + video, err := videoDao.GetVideoById(videoId) if err != nil { responses.FailWithMessage("文章错误", c) return } + // 获取视频作者 + videoAuthorDao := dao.VideoAuthorDao{} + videoAuthors, err := videoAuthorDao.GetVideoAuthorListPreloadByVideoId(videoId) + if err != nil { + responses.FailWithMessage("文章错误", c) + return + } + + video.VideoAuthor = videoAuthors + // 获取排名 rank, _ := videoDao.GetVideoRank(video.VideoId) diff --git a/api/dao/ArticleAuthor.go b/api/dao/ArticleAuthor.go index 857c11d..40d1729 100644 --- a/api/dao/ArticleAuthor.go +++ b/api/dao/ArticleAuthor.go @@ -28,6 +28,15 @@ func (r *ArticleAuthorDao) GetArticleAuthorPreloadById(AuthorId int64) (m *model return m, nil } +// GetArticleAuthorListPreloadByAuthorId 获取数据-列表-文章id +func (r *ArticleAuthorDao) GetArticleAuthorListPreloadByAuthorId(articleId int64) (m []*model.ArticleAuthor, err error) { + err = global.Db.Preload(clause.Associations).Where("article_id = ?", articleId).Find(&m).Error + if err != nil { + return nil, err + } + return m, nil +} + // DeleteArticleAuthor 删除 func (r *ArticleAuthorDao) DeleteArticleAuthor(tx *gorm.DB, maps interface{}) error { err := tx.Where(maps).Delete(&model.ArticleAuthor{}).Error diff --git a/api/dao/VideoAuthor.go b/api/dao/VideoAuthor.go index 186412f..362f55e 100644 --- a/api/dao/VideoAuthor.go +++ b/api/dao/VideoAuthor.go @@ -28,6 +28,15 @@ func (r *VideoAuthorDao) GetVideoAuthorPreloadById(authorId int64) (m *model.Vid return m, nil } +// GetVideoAuthorListPreloadByVideoId 获取数据-列表-视频id +func (r *VideoAuthorDao) GetVideoAuthorListPreloadByVideoId(videoId int64) (m []*model.VideoAuthor, err error) { + err = global.Db.Preload(clause.Associations).Where("video_id = ?", videoId).Find(&m).Error + if err != nil { + return nil, err + } + return m, nil +} + // DeleteVideoAuthor 删除 func (r *VideoAuthorDao) DeleteVideoAuthor(tx *gorm.DB, maps interface{}) error { err := tx.Where(maps).Delete(&model.VideoAuthor{}).Error