35 lines
797 B
Go
Raw Normal View History

2025-03-02 04:36:17 +08:00
package newssvc
import (
"legalgo-BE-go/database"
categoryrepository "legalgo-BE-go/internal/accessor/category"
newsrepository "legalgo-BE-go/internal/accessor/news"
tagrepository "legalgo-BE-go/internal/accessor/tag"
newsdomain "legalgo-BE-go/internal/domain/news"
)
type impl struct {
newsRepo newsrepository.News
tagRepo tagrepository.TagAccessor
categoryRepo categoryrepository.Category
}
type News interface {
GetAll() ([]newsdomain.News, error)
GetAllModel() ([]database.NewsModel, error)
Create(newsdomain.NewsReq, string) error
CreateModel(newsdomain.NewsReq, string) error
}
func New(
newsRepo newsrepository.News,
tagRepo tagrepository.TagAccessor,
categoryRepo categoryrepository.Category,
) News {
return &impl{
newsRepo,
tagRepo,
categoryRepo,
}
}