package sagan.team.support;
import sagan.team.MemberProfile;
import java.util.List;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
@Repository
public interface TeamRepository extends JpaRepository<MemberProfile, Long> {
MemberProfile findById(Long id);
MemberProfile findByGithubId(Long githubId);
MemberProfile findByUsername(String username);
List<MemberProfile> findByHiddenOrderByNameAsc(boolean hidden);
@Modifying(clearAutomatically = true)
@Query("update MemberProfile p set p.hidden = true where (p.githubId not in :ids or p.githubId = null)")
int hideTeamMembersNotInIds(@Param("ids") List<Long> ids);
}