package portfolio import ( "resume-platform/internal/model" "resume-platform/internal/repository" ) type PortfolioService interface { GetPortfolioItems() ([]*model.PortfolioItem, error) GetPortfolioItemsWithPagination(page, pageSize int) ([]*model.PortfolioItem, int, error) GetPortfolioItemsByUserID(userID string) ([]*model.PortfolioItem, error) GetPortfolioItem(id uint) (*model.PortfolioItem, error) CreatePortfolioItem(item *model.PortfolioItem) error UpdatePortfolioItem(id uint, item *model.PortfolioItem) error DeletePortfolioItem(id uint) error } type portfolioService struct { repo repository.ResumeRepository } func NewPortfolioService(repo repository.ResumeRepository) PortfolioService { return &portfolioService{repo: repo} } func (s *portfolioService) GetPortfolioItems() ([]*model.PortfolioItem, error) { return s.repo.GetPortfolioItems() } func (s *portfolioService) GetPortfolioItemsWithPagination(page, pageSize int) ([]*model.PortfolioItem, int, error) { return s.repo.GetPortfolioItemsWithPagination(page, pageSize) } func (s *portfolioService) GetPortfolioItemsByUserID(userID string) ([]*model.PortfolioItem, error) { return s.repo.GetPortfolioItemsByUserID(userID) } func (s *portfolioService) GetPortfolioItem(id uint) (*model.PortfolioItem, error) { return s.repo.GetPortfolioItem(id) } func (s *portfolioService) CreatePortfolioItem(item *model.PortfolioItem) error { return s.repo.CreatePortfolioItem(item) } func (s *portfolioService) UpdatePortfolioItem(id uint, item *model.PortfolioItem) error { return s.repo.UpdatePortfolioItem(id, item) } func (s *portfolioService) DeletePortfolioItem(id uint) error { return s.repo.DeletePortfolioItem(id) }