package com.danielbohry.stocks.repository; import com.danielbohry.stocks.domain.Quote; import feign.Param; import org.springframework.data.mongodb.repository.MongoRepository; import org.springframework.data.mongodb.repository.Query; import org.springframework.stereotype.Repository; import java.util.List; import java.util.Optional; @Repository public interface QuoteRepository extends MongoRepository { @Query("{ $or: [ { 'name': { $regex: ?0, $options: 'i' } }, { 'code': { $regex: ?0, $options: 'i' } } ] }") List findByNameContaining(String query); @Query(value = "{ 'code': ?0 }", sort = "{ 'updatedAt': -1 }") Optional findLatestByCode(@Param("code") String code); }