12345678910111213141516171819202122232425262728293031323334353637383940 |
- <?php
- namespace App\Dto;
- use App\Entity\User;
- use Symfony\Component\Validator\Constraints as Assert;
- class FiltersDTO
- {
- public function __construct(
- #[Assert\NotBlank()]
- #[Assert\GreaterThanOrEqual(10)]
- #[Assert\LessThanOrEqual(100)]
- public int $nbResults = 25,
- public ?User $userName = null,
-
- public ?int $note = null,
-
- #[Assert\NotBlank()]
- public string $sortBy = 'dateSubmited',
- #[Assert\Choice(['ASC', 'DESC'])]
- public string $sortOrder = 'DESC'
- )
- {
- }
- public function toArray(): array
- {
- return [
- 'limit' => $this->nbResults,
- 'username' => $this->userName,
- 'sortBy' => $this->sortBy,
- 'sortOrder' => $this->sortOrder,
- 'note' => $this->note
- ];
- }
- }
|