bookingService->getOrCreateBookingCreateDto($request); $participantsCount = $this->bookingService->getParticipantsCount($bookingCreateDto->roomSelections, $bookingCreateDto->travelData); // Validate step access - allow step 1 or redirect to current step $this->validateStepAccess($bookingCreateDto, 1); $form = $this->createForm(BookingCreateStep1Type::class, $bookingCreateDto, [ 'validation_groups' => ['booking_create_step_1'], ]); $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { $bookingCreateDto->currentStep = 2; $this->bookingService->saveBookingCreateDto($request, $bookingCreateDto); return $this->redirectToRoute('app_booking_create_step_2'); } return $this->render('booking/create_step_1.html.twig', [ 'bookingCreateDto' => $bookingCreateDto, 'participantsCount' => $participantsCount, 'form' => $form->createView(), ]); } }