feat: additional confirmation cycle and status for groups inquiries

This commit is contained in:
Björn Fromme
2026-08-18 12:48:17 +02:00
parent 5045846eed
commit 8dee65d0dc
28 changed files with 677 additions and 95 deletions
@@ -56,7 +56,7 @@ class AccommodationBookingControllerTest extends TestCase
$booking->setAccommodationDiscount(10);
$booking->setBoardServiceDiscount(20);
$booking->setAdditionalServicesDiscount(30);
$booking->setStatus(AccommodationBookingStatus::Accepted);
$booking->setStatus(AccommodationBookingStatus::Confirmed);
$booking->setType(AccommodationBookingType::Booking);
$booking->setAcceptedAt(new \DateTimeImmutable('2026-07-15T10:00:00+00:00'));
@@ -87,7 +87,7 @@ class AccommodationBookingControllerTest extends TestCase
self::assertSame(Response::HTTP_OK, $response->getStatusCode());
self::assertSame([
'uuid' => $booking->getUuid(),
'status' => 'accepted',
'status' => 'confirmed',
'type' => 'booking',
'dateFrom' => '2026-07-20',
'dateTo' => '2026-07-25',
@@ -97,6 +97,7 @@ class AccommodationBookingControllerTest extends TestCase
'childrenCount' => 1,
'groupName' => 'Schulklasse 7b',
'acceptedAt' => '2026-07-15T10:00:00+00:00',
'confirmedAt' => null,
'personalData' => [
'salutation' => 'Frau',
'firstName' => 'Mia',
@@ -218,7 +219,7 @@ class AccommodationBookingControllerTest extends TestCase
->method('acceptBooking')
->with($booking)
->willReturnCallback(static function (AccommodationBooking $b): void {
$b->setStatus(AccommodationBookingStatus::Accepted);
$b->setStatus(AccommodationBookingStatus::Received);
$b->setAcceptedAt(new \DateTimeImmutable());
});
@@ -228,9 +229,9 @@ class AccommodationBookingControllerTest extends TestCase
$payload = json_decode((string) $response->getContent(), true, 512, JSON_THROW_ON_ERROR);
self::assertSame(Response::HTTP_OK, $response->getStatusCode());
self::assertSame('accepted', $payload['status']);
self::assertSame('received', $payload['status']);
self::assertSame('inquiry', $payload['type']);
self::assertSame(AccommodationBookingStatus::Accepted, $booking->getStatus());
self::assertSame(AccommodationBookingStatus::Received, $booking->getStatus());
self::assertNotNull($booking->getAcceptedAt());
self::assertSame($booking->getAcceptedAt()->format(\DATE_ATOM), $payload['acceptedAt']);
}
@@ -246,7 +247,7 @@ class AccommodationBookingControllerTest extends TestCase
$booking->setFirstName('Tom');
$booking->setLastName('Beispiel');
$booking->setEmail('[email protected]');
$booking->setStatus(AccommodationBookingStatus::Accepted);
$booking->setStatus(AccommodationBookingStatus::Received);
$booking->setAcceptedAt($acceptedAt);
$bookingRepository = $this->createMock(AccommodationBookingRepository::class);
@@ -267,7 +268,7 @@ class AccommodationBookingControllerTest extends TestCase
$payload = json_decode((string) $response->getContent(), true, 512, JSON_THROW_ON_ERROR);
self::assertSame(Response::HTTP_OK, $response->getStatusCode());
self::assertSame('accepted', $payload['status']);
self::assertSame('received', $payload['status']);
self::assertSame($acceptedAt, $booking->getAcceptedAt());
self::assertSame($acceptedAt->format(\DATE_ATOM), $payload['acceptedAt']);
}