src/BusinessFeature/Yclients/Message/Query/SearchAvailableAppointmentWithOfferInfoQuery.php line 12

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace Slivki\BusinessFeature\Yclients\Message\Query;
  4. use DateTimeImmutable;
  5. use Slivki\BusinessFeature\Yclients\SortType;
  6. use Slivki\Messenger\Query\QueryInterface;
  7. use Slivki\ValueObject\Coordinate;
  8. final class SearchAvailableAppointmentWithOfferInfoQuery implements QueryInterface
  9. {
  10.     private int $categoryId;
  11.     private DateTimeImmutable $date;
  12.     private string $rangeTime;
  13.     private ?Coordinate $coordinate;
  14.     private string $sortBy;
  15.     public function __construct(
  16.         int $categoryId,
  17.         DateTimeImmutable $date,
  18.         string $rangeTime,
  19.         ?Coordinate $coordinate null,
  20.         string $sortBy SortType::VARIETY
  21.     ) {
  22.         $this->categoryId $categoryId;
  23.         $this->date $date;
  24.         $this->rangeTime $rangeTime;
  25.         $this->coordinate $coordinate;
  26.         $this->sortBy $sortBy;
  27.     }
  28.     public function getCategoryId(): int
  29.     {
  30.         return $this->categoryId;
  31.     }
  32.     public function getDate(): DateTimeImmutable
  33.     {
  34.         return $this->date;
  35.     }
  36.     public function getRangeTime(): string
  37.     {
  38.         return $this->rangeTime;
  39.     }
  40.     public function getCoordinate(): ?Coordinate
  41.     {
  42.         return $this->coordinate;
  43.     }
  44.     public function getSortBy(): string
  45.     {
  46.         return $this->sortBy;
  47.     }
  48. }