<?php

namespace App\Modules\Provider\Application\PassengerDistribution;

use App\Modules\Shared\Domain\Bus\Query\Query;

class PassengerDistributionQuery implements Query
{
    public function __construct(
        private int $tourTypeId,
        private string $dateStart,
        private string $dateEnd,
        private int $idTypeProvider,
        private string $search,
        private int $orderTourId,
        private string $orderType,
        private string $orderOrientation,
        private int $providersWithData,
        private int $page,
        private int $pageSize,
    ) {}

    public function tourTypeId(): int
    {
        return $this->tourTypeId;
    }

    public function dateStart(): string
    {
        return $this->dateStart;
    }

    public function dateEnd(): string
    {
        return $this->dateEnd;
    }

    public function idTypeProvider(): int
    {
        return $this->idTypeProvider;
    }

    public function search(): string
    {
        return $this->search;
    }

    public function orderTourId(): int
    {
        return $this->orderTourId;
    }

    public function orderType(): string
    {
        return $this->orderType;
    }

    public function orderOrientation(): string
    {
        return $this->orderOrientation;
    }

    public function providersWithData(): int
    {
        return $this->providersWithData;
    }

    public function page(): int
    {
        return $this->page;
    }

    public function pageSize(): int
    {
        return $this->pageSize;
    }
}
