title: Creating a Repository Query that include TextCriteria AND one other field
body: <p>My Database Document looks like this</p>
  
  <pre><code>@Document(collection = "campaign")
  class Campaign {
  
      @Id
      var id: String? = null
      @Indexed
      @TextIndexed(weight = 1f)
      var name: String? = null
      var mediaLink: String? = null
      var imageLink: String? = null
      @TextIndexed(weight = 2f)
      var text: String? = null
      @TextIndexed(weight = 2f)
      var target: String? = null
      var ownerId: String? = null     // Who can modify this except "MANAGER"
      var useScope: String? = null    // Who can Use this Campaign [me, dl, all] i.e. Visibility
      @DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX")
      var startOn: Date? = null       // @ this date the campaign becomes available and usable
      @DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX")
      var expireOn: Date? = null      // @ this date the campaign becomes expired and not usable
      var timestamp: Date? = null
      ....
  </code></pre>
  
  <p>The Repository</p>
  
  <pre><code>@Repository
  interface CampaignRepository : MongoRepository&lt;Campaign, String&gt; {
  
      // page through results for full text query
      fun findAllBy(textCriteria: TextCriteria?, pageable: Pageable): Page&lt;Campaign?&gt;?
  </code></pre>
  
  <p>This actually produces a nice and complete search over the fields annotated with <code>@TextIndexed</code>
  The problem is that the moment I add another filter field like I want to filter on <code>ownerId</code>
  the whole query either don't compile or change the <code>TextCriteria</code> to <code>String</code> in the repository function.
  Business logic requires me ONLY to show the data for the Owner</p>
  
  <p>I have tried</p>
  
  <pre><code>// Expected parameter types: String , String not String, TextCriteria
  fun findAllByOwnerId(ownerId: String?, textCriteria: TextCriteria?, pageable: Pageable): Page&lt;Campaign?&gt;?
  // Property name must not be null or empty: 'findAllBy&lt;EMPTY_PROPERTY&gt;AndOwnerId'
  un findAllByAndOwnerId(ownerId: String, textCriteria: TextCriteria?, pageable: Pageable): Page&lt;Campaign?&gt;?
  // No property findAllOwnerId found for type Campaign! during Compiletime
  fun findAllOwnerId(ownerId: String, textCriteria: TextCriteria?, pageable: Pageable): Page&lt;Campaign?&gt;?
  </code></pre>
  
  <p>Me GiveUp!  Please assist</p>