package de.accso.flexinale.ticketing.infrastructure.persistence;

import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface TicketJpaRepository extends JpaRepository<TicketEntity, String> {

    @Query("SELECT t FROM Ticket t " +
           "WHERE t.benutzerId = :benutzerId")
    List<TicketEntity> findByBenutzer(final String benutzerId);

    @Query("SELECT t FROM Ticket t " +
            "WHERE t.vorfuehrungId = :vorfuehrungId")
    List<TicketEntity> findByVorfuehrung(final String vorfuehrungId);

    @Query("SELECT count(t) FROM Ticket t WHERE t.benutzerId = :benutzerId")
    int gesamtZahlDerTicketsFuer(final String benutzerId);
}
