Commit Graph

1 Commits

Author SHA1 Message Date
dahoud
e936af7d39 feat(sprint-14 web 2026-04-25): picker p:autoComplete pour Compliance Officer (UX vs UUID textuel)
DRY strict — réutilise MembreService REST client existant, aucun nouveau client.

ComplianceOfficerPickerBean (@Named, @ApplicationScoped)
- suggest(query) : recherche multi-champ (nom OU prénom) via MembreService.rechercher,
  dédoublonne via LinkedHashMap, gère erreur gracieuse → []
- label(membre) : "Prénom NOM (numéro)" avec fallback id si entité minimaliste
- resoudre(uuid) : pour affichage initial mode édition

UI organisation-form.xhtml
- Remplacement p:inputText UUID → p:autoComplete forceSelection minQueryLength=2 queryDelay=300
- Placeholder "Tapez 2+ lettres du nom ou prénom..."
- Stocke UUID, affiche label humain — DTO unchanged côté backend

Tests (8 tests, logique pure sans mock REST)
- label × 6 (null, complet, sans numéro, nom seul, prénom seul, fallback id)
- suggest × 2 (query null/blank → liste vide sans appel réseau)
- resoudre × 1 (id null)

ACTION USER : `mvn install` côté unionflow-server-api 1.0.9 puis tester web local.
2026-04-25 15:36:37 +00:00