From 0073bb6775069485dc0d91bd466cc1abc2718fe9 Mon Sep 17 00:00:00 2001 From: James Tombleson Date: Sun, 28 Apr 2024 11:41:11 -0700 Subject: [PATCH] new dtoconv file to convert entities to dto for handler --- internal/services/dtoconv.go | 46 ++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 internal/services/dtoconv.go diff --git a/internal/services/dtoconv.go b/internal/services/dtoconv.go new file mode 100644 index 0000000..1cddec3 --- /dev/null +++ b/internal/services/dtoconv.go @@ -0,0 +1,46 @@ +package services + +import "git.jamestombleson.com/jtom38/newsbot-api/internal/domain" + +func ArticlesToDto(items []domain.ArticleEntity) []domain.ArticleDto { + var dtos []domain.ArticleDto + for _, item := range items { + dtos = append(dtos, ArticleToDto(item)) + } + return dtos +} + +func ArticleToDto(item domain.ArticleEntity) domain.ArticleDto { + return domain.ArticleDto{ + ID: item.ID, + SourceID: item.SourceID, + Tags: item.Tags, + Title: item.Title, + Url: item.Url, + PubDate: item.PubDate, + IsVideo: item.IsVideo, + Thumbnail: item.Thumbnail, + Description: item.Description, + AuthorName: item.AuthorName, + AuthorImageUrl: item.AuthorImageUrl, + } +} + +func SourcesToDto(items []domain.SourceEntity) []domain.SourceDto { + var dtos []domain.SourceDto + for _, item := range items { + dtos = append(dtos, SourceToDto(item)) + } + return dtos +} + +func SourceToDto(item domain.SourceEntity) domain.SourceDto { + return domain.SourceDto{ + ID: item.ID, + Source: item.Source, + DisplayName: item.DisplayName, + Url: item.Url, + Tags: item.Tags, + Enabled: item.Enabled, + } +}