32 lines
1.0 KiB
Java
32 lines
1.0 KiB
Java
package pl.edu.amu.wmi.bookapi.repositories;
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.data.domain.Sort;
|
|
import org.springframework.data.mongodb.core.MongoTemplate;
|
|
import org.springframework.data.mongodb.core.query.Criteria;
|
|
import org.springframework.data.mongodb.core.query.Query;
|
|
import pl.edu.amu.wmi.bookapi.models.MessageDocument;
|
|
|
|
import java.util.List;
|
|
|
|
public class MessageCustomRepositoryImpl implements MessageCustomRepository {
|
|
|
|
@Autowired
|
|
MongoTemplate mongoTemplate;
|
|
|
|
@Override
|
|
public List<MessageDocument> findByUserAndThreadId(String threadId, String user) {
|
|
Query query = new Query(
|
|
Criteria.where("threadId").is(threadId)
|
|
.orOperator(
|
|
Criteria.where("author").is(user),
|
|
Criteria.where("recipient").is(user)
|
|
)
|
|
);
|
|
|
|
Sort sort = Sort.by(Sort.Direction.ASC, "createdAt");
|
|
|
|
return mongoTemplate.find(query.with(sort), MessageDocument.class);
|
|
}
|
|
}
|