diff --git a/src/Filter/In.php b/src/Filter/In.php index 59f00fb9d5bd35af058f5badf66054dcb74c317a..ab23187bb6f3461371695fbaa436aab6ced662a4 100644 --- a/src/Filter/In.php +++ b/src/Filter/In.php @@ -5,12 +5,18 @@ declare(strict_types=1); namespace IQDEV\Packages\DoctrineHttpFilter\Filter; use Doctrine\ORM\QueryBuilder; +use IQDEV\Packages\DoctrineHttpFilter\Exception\FilterParameterValueIsNullException; use IQDEV\Packages\DoctrineHttpFilter\HttpFilter; final class In extends HttpFilter { + /** @throws FilterParameterValueIsNullException */ public function addToQuery(QueryBuilder $queryBuilder): QueryBuilder { + if ($this->getHttpValue() === null) { + throw new FilterParameterValueIsNullException($this->field); + } + $values = array_map(fn($value) => '\'' . $value . '\'', $this->getHttpValue()); $stringValues = implode(',', $values);