From 6e96f6fb4426582da6ed6e069aa86bc7eee9e255 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Fromme?= Date: Thu, 13 Nov 2025 12:44:19 +0100 Subject: [PATCH] fix: never validate insurance selection in edit mode --- src/Form/Model/ParticipantEditDto.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Form/Model/ParticipantEditDto.php b/src/Form/Model/ParticipantEditDto.php index 2ae5a63..2963dca 100644 --- a/src/Form/Model/ParticipantEditDto.php +++ b/src/Form/Model/ParticipantEditDto.php @@ -32,12 +32,21 @@ class ParticipantEditDto * the insurance field is hidden and will be automatically assigned by the bulk * insurance handler. * + * In edit mode, this validation is skipped entirely because insurance data is + * readonly and preserved as-is from the BPN API (the insurance field handler + * does not process insurance in edit mode). + * * This validation only runs when strict_required group is active. */ #[Assert\Callback(groups: ['strict_required'])] public function validateInsuranceRequired(ExecutionContextInterface $context): void { - // Insurance is always required for applicant + // Skip validation in edit mode - insurance is readonly and preserved as-is + if (BookingDto::MODE_EDIT === $this->bookingContext->getMode()) { + return; + } + + // Insurance is always required for applicant in create mode if (true === $this->participant->isApplicant()) { if (null === $this->participant->insurance) { $context->buildViolation('Bitte auswählen')