From 6b0c85cdf039b43cbbe9d7a2b1aa3aac2c69f3a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Tue, 17 Jun 2025 10:39:13 +0200 Subject: [PATCH] Normalize form data by converting entities using `normalizeDoctrineEntity` and support array input in `denormalizeStringRepresentation`. --- .../SocialWorkFilters/SocialWorkTypeFilter.php | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php b/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php index b16ecac5f..85ea60f3d 100644 --- a/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php +++ b/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php @@ -111,9 +111,9 @@ class SocialWorkTypeFilter implements FilterInterface public function normalizeFormData(array $formData): array { return [ - 'actionType' => $formData['actionType'], - 'goal' => $formData['goal'], - 'result' => $formData['result'], + 'actionType' => $this->normalizeDoctrineEntity($formData['actionType']), + 'goal' => $this->normalizeDoctrineEntity($formData['goal']), + 'result' => $this->normalizeDoctrineEntity($formData['result']), ]; } @@ -126,8 +126,12 @@ class SocialWorkTypeFilter implements FilterInterface ]; } - private function denormalizeStringRepresentation(string $ids): array + private function denormalizeStringRepresentation(array|string $ids): array { + if (is_array($ids)) { + return $ids; + } + return array_map(fn (string $id) => (int) $id, explode(',', $ids)); }