fix(server): return 0 results when geo code intersection is empty #1542
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.



Problème
Les filtres et/ou le comptage du parc de logements ne fonctionnaient plus correctement. Quand les périmètres avaient une intersection vide entre les geo codes de l'utilisateur et ceux de l'établissement, tous les logements étaient affichés/comptés au lieu de 0.
Cause
Dans
housingRepository.ts, quand l'intersection des geo codes résultait en un tableau vide[], la condition :était falsy (car
[].length === 0), donc le filtrewhereInn'était pas appliqué et TOUS les logements étaient retournés.Solution
Ajout d'une vérification précoce : si on avait des restrictions géographiques (establishment, intercommunalities ou localities) mais que leur intersection est vide, on retourne immédiatement 0 résultats au lieu d'exécuter une requête sans filtre géographique.
Fichiers modifiés
server/src/repositories/housingRepository.ts: fonctionsfind()etcount()Test plan