From 56ecb6f7530fb941b3a7a9e19bf9974720c9495a Mon Sep 17 00:00:00 2001 From: hanif salafi Date: Mon, 3 Mar 2025 09:40:41 +0700 Subject: [PATCH] feat: update articles --- app/module/articles/repository/articles.repository.go | 7 +++++++ app/module/articles/service/articles.service.go | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/module/articles/repository/articles.repository.go b/app/module/articles/repository/articles.repository.go index 1deb322..af12de0 100644 --- a/app/module/articles/repository/articles.repository.go +++ b/app/module/articles/repository/articles.repository.go @@ -25,6 +25,7 @@ type ArticlesRepository interface { FindByFilename(thumbnailName string) (articleReturn *entity.Articles, err error) Create(articles *entity.Articles) (articleReturn *entity.Articles, err error) Update(id uint, articles *entity.Articles) (err error) + UpdateSkipNull(id uint, articles *entity.Articles) (err error) Delete(id uint) (err error) SummaryStats(userID uint) (articleSummaryStats *response.ArticleSummaryStats, err error) ArticlePerUserLevelStats(userLevelId *uint, levelNumber *int, startDate *time.Time, endDate *time.Time) (articlePerUserLevelStats []*response.ArticlePerUserLevelStats, err error) @@ -139,6 +140,12 @@ func (_i *articlesRepository) Update(id uint, articles *entity.Articles) (err er Save(articles).Error } +func (_i *articlesRepository) UpdateSkipNull(id uint, articles *entity.Articles) (err error) { + return _i.DB.DB.Model(&entity.Articles{}). + Where(&entity.Articles{ID: id}). + Updates(articles).Error +} + func (_i *articlesRepository) Delete(id uint) error { return _i.DB.DB.Delete(&entity.Articles{}, id).Error } diff --git a/app/module/articles/service/articles.service.go b/app/module/articles/service/articles.service.go index 6673999..e8d3b14 100644 --- a/app/module/articles/service/articles.service.go +++ b/app/module/articles/service/articles.service.go @@ -350,7 +350,7 @@ func (_i *articlesService) Update(id uint, req request.ArticlesUpdateRequest) (e newReq.CreatedAt = parsedTime } - return _i.Repo.Update(id, newReq) + return _i.Repo.UpdateSkipNull(id, newReq) } func (_i *articlesService) Delete(id uint) error {