setProduct('Davos Klosters - Schwendi') ->setHotel($hotel) ->setHotelCode('DKI') ->setHotelBusProId(1) ->setDateFrom(new \DateTimeImmutable($dateTo.' -7 days')) ->setDateTo(new \DateTimeImmutable($dateTo)) ->setPickups([['busProId' => 4711, 'city' => 'Stuttgart', 'street' => 'Busbahnhof', 'time' => '21:30']]) ; $assignment = (new Assignment()) ->setDestination($destination) ->setPickup(4711) ->setStatus(Assignment::STATUS_STAFFED) ; $disposition = (new Disposition(new Application($assignment, $teamer ?? $this->teamer))) ->setStatus(Disposition::STATUS_ENDED) ; $this->entityManager->persist($destination); $this->entityManager->persist($assignment); $this->entityManager->persist($disposition); return $disposition; } private function respond(Disposition $disposition, bool $submit, string $questionnaire = QuestionnaireCatalog::TEAMER_ESCORT): QuestionnaireResponse { $definition = new Definition($questionnaire, 1, 'Beispiel', null, []); $response = QuestionnaireResponse::forDisposition($definition, $disposition); if ($submit) { $response->submit($definition, [], [], new \DateTimeImmutable()); } else { $response->saveDraft([], []); } $this->entityManager->persist($response); return $response; } }