Auto-complétion d'adresse (API)

Facilitez la saisie d'adresse dans votre plateforme.

Les bénéfices

La saisie manuelle d'une adresse est souvent source d'erreurs (fautes de frappe, codes postaux erronés, inversions). Pour l'utilisateur, c'est une tâche répétitive et fastidieuse.

Ce module permet l'intégration de champs de saisie intelligents permettant aux utilisateurs de trouver et compléter une adresse postale française certifiée. En se basant sur une API publique et officielle fournie par adresse.data.gouv.fr, il facilite ainsi la saisie d'adresses postales françaises dans JPlatform à travers deux modes :

  • Mode Code Postal / Ville : Dès qu'un code postal valide est saisi, le champ "Ville" se remplit automatiquement. Vous évitez les erreurs courantes et faites gagner du temps à vos utilisateurs.

  • Mode Recherche Prédictive : Dès que l'utilisateur commence à taper son adresse, une liste de suggestions d'adresses s'affiche en temps réel (en tenant compte du code postal s'il est déjà renseigné). En un clic, l'ensemble des champs du formulaire (N° de voie, Adresse, Code Postal, Ville) sont instantanément complétés.

Les fonctionnalités

  • Auto-complétion prédictive : Saisie intuitive des adresses postales avec suggestion en temps réel dès les premiers caractères tapés.
  • Remplissage multi-champs instantané : Ventilation automatique des données de l'adresse sélectionnée dans les champs correspondants (Numéro, Voie, Code Postal, Ville).
  • Déduction automatique de la Ville : Remplissage instantané du champ "Ville" dès qu'un code postal à 5 chiffres valide est saisi.
  • Configuration sans code : Activation simple du service sur les types de contenus et formulaires natifs Jalios via paramétrages.
  • Liaison flexible des champs : Le script peut lier de 1 à 4 champs par contenu ou formulaire selon les données de l'adresse (Numéro, Voie, Code Postal, Ville).
  • Connexion API : Interconnexion transparente avec l'API officielle de l'État français (geo.api.gouv.fr)

Captures d'écran

Les clients aiment

Saisie facilitée et utilisateurs rassurés
Garantie d'avoir des adresses conformes aux référentiels officiels français
Repose sur une API officielle, libre d'accès et sans frais
Facilité d'installation et d'administration (pas besoin de développement)

Informations détaillées

Configuration du module

Ajouter ce module avec le gestionnaire de modules depuis l’administration technique et redémarrer JPlatform.

 

Paramétrage de l'auto-complétion

L'auto-complétion est activable simplement :

  • depuis les propriétés de module pour un usage "back office" (formulaires de contribution)
  • à l'aide d'une insertion de code pour un usage "front office" (formulaires accessibles en front office)

 

Usage back-office

Pour activer la complétion sur les formulaires accessible en back-oficce, accéder aux propriétés du module et ajouter une configuration JSON pour le type concerné en renseignant le nom technique de la classe Java et les noms Java des champs associés (texte ou zone de texte uniquement).

Exemple de paramétrage pour un type Adresse contenant les champs codePostalvilleadresseL1 et numeroDeRue.

[
    {
        "type": "generated.Adresse",
        "mapping": {
            "zip": "codePostal",
            "city": "ville",
            "street": "adresseL1",
            "number": "numeroDeRue"
        }
    }
]

 

Usage spécifique

Sur les pages avec formulaires, charger le script plugins/AddressServicePlugin/js/plugin.js.

Instancier le service en transmettant les Element ou sélecteurs javascript des champs à utiliser. Le constructeur attend au maximum 4 champs, seuls ceux nécessaires doivent être transmis.

new BANAutocomplete({
  zip:    'form[name="editForm"] input[name="zip"]',
  city:   'form[name="editForm"] input[name="city"]',
  street: 'form[name="editForm"]  input[name="streetL1"]',
  number: 'form[name="editForm"]  input[name="streetNumber"]'
});

Lorsqu'un Code postal valide est saisi, le champ Ville est automatiquement complété avec la ville associée (zip, city requis).

Lorsqu'une Adresse est en cours de saisie, une liste de propositions s'affiche, en tenant compte du Code postal s'il est déjà connu. Lorsqu'une adresse est sélectionnée parmi les propositions, les champs du formulaire N° de voie (number), Adresse (street), Code postal (zip), Ville (city) sont complétés avec les données extraites de l'adresse (parmi les champs présents).

Une limite d'usage (environ 10 requêtes/seconde/IP) est en place sur les services. Le service est appelé directement depuis le poste client de l'utilisateur.

Voir la démonstration sur la page plugins/AddressServicePlugin/jsp/plugin.jsp.

 

Paramétrage des services Ville et Adresse

Les paramètres des URLs des services Ville et Adresse peuvent être ajustés pour répondre aux besoins (filtrage sur une zone, limite du nombre de réponses, ...) :

 

Logs

La console JavaScript affiche des logs en cas d'erreur sur les formulaires utilisant BANAutocomplete.

Pour suivre les logs générés par le module, déclarer un logger sur la classe fr.wisen.jcmsplugin.addressservice selon le niveau de détail souhaité.

Exemple de déclaration :

  
  <logger name="fr.wisen.jcmsplugin.addressservice" additivity="false">
    <level value="DEBUG" />
    <appender-ref ref="CONSOLE" />
    <appender-ref ref="ROLLFILE" />
  </logger>
  • Nom technique addresseservice.auto-start.configuration.area
  • Description Configuration JSON des types pour lesquels l'autocomplétion est activée en back-office (cf documentation du module).
  • Nom technique js.addresseservice.address.endpoint.url
  • Description URL absolue du service adresse. Paramètres dynamiques: q, zip.
  • Nom technique js.addresseservice.city.endpoint.url
  • Description URL absolue du service ville. Paramètres dynamiques: zip.

Sur le même thème...