mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-29 05:26:13 +00:00
The search api delegates the query to a person acl aware "repository" (although this does not implements ObjectRepository interface).
51 lines
1.3 KiB
PHP
51 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace Chill\PersonBundle\Repository;
|
|
|
|
use Chill\MainBundle\Search\ParsingException;
|
|
use Chill\PersonBundle\Entity\Person;
|
|
use Doctrine\ORM\NonUniqueResultException;
|
|
|
|
interface PersonACLAwareRepositoryInterface
|
|
{
|
|
|
|
/**
|
|
* @return array|Person[]
|
|
* @throws NonUniqueResultException
|
|
* @throws ParsingException
|
|
*/
|
|
public function findBySearchCriteria(
|
|
int $start,
|
|
int $limit,
|
|
bool $simplify = false,
|
|
string $default = null,
|
|
string $firstname = null,
|
|
string $lastname = null,
|
|
?\DateTime $birthdate = null,
|
|
?\DateTime $birthdateBefore = null,
|
|
?\DateTime $birthdateAfter = null,
|
|
string $gender = null,
|
|
string $countryCode = null
|
|
): array;
|
|
|
|
public function countBySearchCriteria(
|
|
string $default = null,
|
|
string $firstname = null,
|
|
string $lastname = null,
|
|
?\DateTime $birthdate = null,
|
|
?\DateTime $birthdateBefore = null,
|
|
?\DateTime $birthdateAfter = null,
|
|
string $gender = null,
|
|
string $countryCode = null
|
|
);
|
|
|
|
public function findBySimilaritySearch(
|
|
string $pattern,
|
|
int $firstResult,
|
|
int $maxResult,
|
|
bool $simplify = false
|
|
);
|
|
|
|
public function countBySimilaritySearch(string $pattern);
|
|
}
|