feat: enforce profile data completeness before entering booking flow

This commit is contained in:
Björn Fromme
2026-01-19 18:04:19 +01:00
parent 2949870acc
commit 0b44394b11
7 changed files with 235 additions and 19 deletions
+6
View File
@@ -4,6 +4,8 @@ declare(strict_types=1);
namespace App\BusProNet\Model;
use Symfony\Component\Validator\Constraints as Assert;
/**
* Represents a physical address with street, postal code, city, and country information.
*
@@ -13,14 +15,18 @@ namespace App\BusProNet\Model;
*/
class Address
{
#[Assert\NotBlank(message: 'Bitte angeben', groups: ['personal_data'])]
public ?string $street = null;
#[Assert\NotBlank(message: 'Bitte angeben', groups: ['personal_data'])]
public ?string $postCode = null;
#[Assert\NotBlank(message: 'Bitte angeben', groups: ['personal_data'])]
public ?string $city = null;
public ?string $district = null;
#[Assert\NotBlank(message: 'Bitte angeben', groups: ['personal_data'])]
public ?string $country = null;
/**
+7
View File
@@ -31,11 +31,18 @@ class PersonalData
public ?string $salutation = null;
public ?string $title = null;
#[Assert\NotBlank(message: 'Bitte angeben', groups: ['personal_data'])]
#[Assert\Choice(choices: ['M', 'W', 'D'], message: 'Bitte gib einen gültigen Wert an', groups: ['personal_data'])]
public ?string $gender = null;
#[Assert\NotBlank(message: 'Bitte angeben', groups: ['personal_data'])]
public ?string $nationality = null;
public ?string $height = null;
public ?string $shoeSize = null;
public ?string $weight = null;
#[Assert\NotBlank(message: 'Bitte angeben', groups: ['personal_data'])]
public ?\DateTimeImmutable $dateOfBirth = null;
public ?string $remarks = null;