38 lines
1.1 KiB
Go
38 lines
1.1 KiB
Go
package service
|
|
|
|
import (
|
|
"context"
|
|
"kontor-api-gin/internal/models"
|
|
"kontor-api-gin/internal/repository"
|
|
"log/slog"
|
|
)
|
|
|
|
type MediaArticleService struct {
|
|
repository *repository.MediaArticleRepository
|
|
}
|
|
|
|
func NewMediaArticleService(repo *repository.MediaArticleRepository) *MediaArticleService {
|
|
service := &MediaArticleService{repository: repo}
|
|
return service
|
|
}
|
|
|
|
func (service *MediaArticleService) List(context context.Context) ([]models.MediaArticle, error) {
|
|
slog.Info("MediaArticleService#List")
|
|
return service.repository.FindAll(context)
|
|
}
|
|
|
|
func (service *MediaArticleService) Get(context context.Context, id string) (*models.MediaArticle, error) {
|
|
slog.Info("MediaArticleService#Get")
|
|
return service.repository.GetById(context, id)
|
|
}
|
|
|
|
func (service *MediaArticleService) Add(context context.Context, url string) (*models.MediaArticle, error) {
|
|
slog.Info("MediaArticleService#Add")
|
|
return service.repository.Add(context, url)
|
|
}
|
|
|
|
func (service *MediaArticleService) Delete(context context.Context, id string) error {
|
|
slog.Info("MediaArticleService#Delete")
|
|
return service.repository.Delete(context, id)
|
|
}
|