package de.accso.flexinale.data.persistence;

import de.accso.flexinale.data.model.Benutzer;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;

import java.util.Collection;
import java.util.Optional;

@SuppressWarnings("unused")
public interface BenutzerDao extends JpaRepository<Benutzer, String>, AbstractDao<Benutzer> {

    @Override
    Optional<Benutzer> findById(final String id);

    @Query("SELECT b FROM Benutzer b WHERE b.name = :name")
    Collection<Benutzer> findByName(
            @Param("name")
            String name);

    @Query("SELECT b FROM Benutzer b WHERE b.login = :login")
    Optional<Benutzer> findByLogin(
            @Param("login")
            String login);
}
