33 lines
1.0 KiB
PHP
33 lines
1.0 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace Modules\Booking\Data;
|
||
|
|
|
||
|
|
use Modules\Booking\Enums\BookingChannel;
|
||
|
|
|
||
|
|
readonly class CreateBookingData
|
||
|
|
{
|
||
|
|
/**
|
||
|
|
* @param list<VehicleSelectionData> $selections One or more Vehicle Option
|
||
|
|
* selections (e.g. front_seat + back_seat) — domain.md §2.
|
||
|
|
*/
|
||
|
|
public function __construct(
|
||
|
|
public int $evRouteId,
|
||
|
|
public int $departureTimeSlotId,
|
||
|
|
public string $travelDate,
|
||
|
|
public array $selections,
|
||
|
|
public string $passengerName,
|
||
|
|
public string $passengerPhone,
|
||
|
|
public string $pickupAddress,
|
||
|
|
public string $dropoffAddress,
|
||
|
|
public BookingChannel $createdByChannel,
|
||
|
|
public ?int $userId = null,
|
||
|
|
public ?string $openid = null,
|
||
|
|
public ?float $pickupLat = null,
|
||
|
|
public ?float $pickupLng = null,
|
||
|
|
public ?float $dropoffLat = null,
|
||
|
|
public ?float $dropoffLng = null,
|
||
|
|
public bool $isRoundTrip = false,
|
||
|
|
public ?string $returnTravelDate = null,
|
||
|
|
) {}
|
||
|
|
}
|