/*************************DA-BOARD-LICENSE-START*********************************
* Copyright 2014 CapitalOne, LLC.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*************************DA-BOARD-LICENSE-END*********************************/
package com.capitalone.dashboard.repository;
import java.util.List;
import org.bson.types.ObjectId;
import org.springframework.data.mongodb.repository.Query;
import org.springframework.data.querydsl.QueryDslPredicateExecutor;
import org.springframework.data.repository.CrudRepository;
import com.capitalone.dashboard.model.Scope;
/**
* Repository for {@link ProjectCollector}.
*/
public interface ProjectRepository extends
CrudRepository<Scope, ObjectId>, QueryDslPredicateExecutor<Scope> {
@Query(value = "{ $query: { 'collectorId' : ?0, 'changeDate' : {$gt: ?1}}, $orderby: { 'changeDate' :-1 }}", fields="{'changeDate' : 1, '_id' : 0}")
List<Scope> getProjectMaxChangeDate(ObjectId collctorId, String lastChangeDate);
@Query(value = "{ $query: {'pId' : ?0},{'pId' : 1}}")
List<Scope> getProjectIdById(String pId);
}