using Microsoft.EntityFrameworkCore; using SameBeat.Application.Interfejsy; using SameBeat.Domain.Encje; using SameBeat.Infrastructure.BazaDanych; namespace SameBeat.Infrastructure.Repozytoria; public class RepozytoriumPlaylisty : IRepozytoriumPlaylisty { private readonly KontekstBazyDanych _kontekst; public RepozytoriumPlaylisty(KontekstBazyDanych kontekst) { _kontekst = kontekst; } public Task ZnajdzPoIdAsync(Guid pozycjaId, CancellationToken token = default) => _kontekst.PozycjePlaylisty.SingleOrDefaultAsync(p => p.Id == pozycjaId, token); public Task> PobierzUporzadkowanaDlaWydarzeniaAsync(Guid wydarzenieId, CancellationToken token = default) => _kontekst.PozycjePlaylisty .Where(p => p.WydarzenieId == wydarzenieId) .OrderBy(p => p.Kolejnosc) .ToListAsync(token); public void Dodaj(PozycjaPlaylisty pozycja) => _kontekst.PozycjePlaylisty.Add(pozycja); public void Usun(PozycjaPlaylisty pozycja) => _kontekst.PozycjePlaylisty.Remove(pozycja); }