wip: continue implemntation
This commit is contained in:
@@ -5,22 +5,26 @@ namespace App\Form\Model;
|
||||
use App\BusProNet\Model\Booking;
|
||||
use App\BusProNet\Model\PersonalData;
|
||||
use App\BusProNet\Model\Service;
|
||||
use App\BusProNet\Model\Travel;
|
||||
use App\Validator\Constraints as AppAssert;
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
|
||||
#[AppAssert\Booking]
|
||||
#[Assert\GroupSequence(['BookingData', 'Api'])]
|
||||
#[AppAssert\Booking(groups:['Api'])]
|
||||
class BookingData
|
||||
{
|
||||
public ?Booking $booking = null;
|
||||
public ?Travel $travel = null;
|
||||
|
||||
#[Assert\Valid]
|
||||
public array $participants = [];
|
||||
|
||||
public static function fromBooking(Booking $booking): static
|
||||
public static function fromBooking(Booking $booking, Travel $travel): static
|
||||
{
|
||||
$instance = new static();
|
||||
|
||||
$instance->booking = $booking;
|
||||
$instance->travel = $travel;
|
||||
|
||||
foreach ($booking->participants as $index => $participant) {
|
||||
/** @var PersonalData $participant */
|
||||
@@ -41,6 +45,8 @@ class BookingData
|
||||
->getTransportationServiceForParticipantAndDirection($index, 'H');
|
||||
$participantData->transportationServiceFro = $booking
|
||||
->getTransportationServiceForParticipantAndDirection($index, 'R');
|
||||
$participantData->pickup = $booking->getPickupForParticipant($index);
|
||||
|
||||
$instance->participants[$index] = $participantData;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user