Skip to content

Créer des unités organisationnelles

Une fois vos niveaux existants, vous les remplissez d'unités — les choses concrètes qui obtiennent un responsable, un nombre de membres et une épingle sur la carte. Une unité est une ligne dans la table org_units ; la page sur laquelle vous atterrissez pour elle est votre hub pour tout ce que cette unité fait.

Deux façons d'entrer

GCM vous laisse créer des unités depuis deux surfaces. Elles écrivent dans la même table ; choisissez celle qui convient au moment.

SurfaceConvient pourURL
Arbre Structure organisationnelleL'image complète descendante. Pas de glisser, mais vous voyez chaque niveau d'un coup/org-structure
Page de niveauAjouter en masse des pairs à un niveau (par exemple 12 cellules d'affilée)/hierarchy/3

La page d'arbre est l'atterrissage par défaut du module. Elle montre les unités de niveau 1 à la racine et vous permet d'étendre pour entrer dans leurs enfants.

Boîte de dialogue Créer une unité

Depuis la page d'arbre

Cliquez sur Ajouter une branche (ou quel que soit le nom de votre niveau 1) en haut à droite pour créer une unité de niveau supérieur. Pour les niveaux inférieurs, étendez un parent, cliquez sur le menu trois-points sur la ligne et choisissez Ajouter un centre (ou quel que soit le nom du niveau suivant).

La boîte de dialogue demande :

  • Nom (obligatoire) — par exemple Branche du centre-ville. Jusqu'à deux lignes s'enroulent sur les cartes, donc les noms descriptifs vont bien.
  • Parent (obligatoire pour les niveaux > 1) — choisi dans une liste déroulante recherchable des unités un niveau au-dessus. Le sélecteur est filtré au bon niveau automatiquement.
  • Adresse (optionnel) — adresse de rue en texte libre. Alimente le module carte si vous définissez aussi un emplacement de carte.
  • Emplacement sur carte (optionnel) — ouvre un sélecteur Leaflet. Déposez une épingle ou collez lat/lng. Si vous définissez une adresse mais pas un emplacement sur carte, GCM met en file d'attente un géocodage en arrière-plan et remplit estimated_map_location une fois le résultat arrivé.

Cliquez sur Créer. La nouvelle ligne apparaît dans l'arbre, le comptage d'enfants du parent augmente, la statistique "X unités" du tableau de bord se rafraîchit.

Depuis une page de niveau

Si vous ajoutez de nombreuses unités au même niveau — disons douze cellules pour une branche — entrez via l'URL /hierarchy/3 (substituez le niveau sur lequel vous travaillez). Vous verrez une grille de cartes de chaque unité à ce niveau filtrée par le sélecteur de parent en haut.

Le flux de travail de page de niveau est la même boîte de dialogue sous le capot, mais vous obtenez :

  • Un filtre de parent afin que les unités nouvellement ajoutées se mettent par défaut sur le bon parent.
  • Actions en masse — sélectionnez 3 unités et reparentez-les à une nouvelle branche en un clic.
  • Contrôles de tri — nom A-Z, comptage de membres décroissant, récemment ajouté.

C'est le chemin plus rapide quand vous semez beaucoup d'unités de niveau feuille après une restructuration.

Ce qui est stocké

Chaque ligne d'unité a ces colonnes que l'interface fait surgir :

ColonneTypeNotes
idUUIDGénéré côté client
organization_idUUIDDéfini automatiquement depuis votre session
level_indexintLe palier auquel l'unité appartient
parent_unit_idUUIDNull au niveau 1, obligatoire en dessous
nametextNom d'affichage
addresstextAdresse postale optionnelle
map_locationtextLat/lng optionnel — l'emporte sur estimé
estimated_map_locationtextRempli par le géocodeur quand l'adresse est définie
leader_member_idUUIDOptionnel — voir Affecter des responsables
archived_attimestamptzNull pour les lignes actives
deleted_attimestamptzNull pour les lignes visibles ; suppression douce

Les horodatages créé/mis à jour + les ID d'acteur sont écrits automatiquement. Vous pouvez les voir sur la page de détails de l'unité dans la ligne "audit" juste sous le nom.

Modifier une unité

Ouvrez l'unité (cliquez sur sa ligne dans l'arbre ou sa carte sur une page de niveau). Cliquez sur Modifier dans l'en-tête. La même boîte de dialogue revient peuplée. Vous pouvez changer :

  • Le nom.
  • Le parent — déplacer l'unité déplace tous ses descendants avec elle. Les membres sur l'unité restent où ils sont ; la cascade ne change que la forme de l'arbre.
  • L'adresse et l'emplacement sur carte.

L'enregistrement ne demande pas de confirmation. Les rapports se rafraîchissent la prochaine fois qu'ils ré-interrogent.

Déplacer des unités change la portée des rapports

Si vous reparentez Centre du centre-ville de Branche Sud à Branche Nord, chaque membre affecté à Centre du centre-ville (et à ses enfants) monte maintenant vers Branche Nord. Les tableaux de bord de présence du dimanche peuvent se décaler du jour au lendemain — communiquez le changement avant de le faire.

Emplacement sur carte et module carte

Définir map_location sur une unité lui donne une épingle sur le module Carte. La couleur de l'épingle est déterminée par le niveau. Le regroupement d'épingles s'active autour du niveau 3+ si vous avez de nombreuses unités dans une petite zone.

Vous pouvez aussi laisser map_location vide et laisser l'adresse géocoder en arrière-plan. L'emplacement estimé peuple estimated_map_location et la carte affiche l'épingle dans une couleur légèrement atténuée pour indiquer que c'est une supposition.

Si le géocodage échoue (mauvaise adresse, limite de débit), le badge de statut sur la page d'unité affiche pendingfailed. Vous pouvez corriger l'adresse et cliquer dans l'unité à nouveau pour redéclencher le géocodeur.

Comptages de membres auto-générés

Le badge de comptage de membres sur chaque ligne d'unité est calculé via le RPC count_org_unit_members, et non en lisant les lignes brutes. Le RPC gère la cascade — il somme les affectations propres de l'unité plus chaque descendant. C'est pourquoi déplacer une unité ne casse pas le comptage.

Le badge se met à jour dans les quelques secondes d'un changement d'affectation. S'il semble obsolète, rafraîchissez la page ; React Query revalide au focus.

Questions courantes

Pourquoi ne puis-je pas glisser les unités pour reparenter ? L'arbre n'a intentionnellement pas d'affordance de glisser parce que les déplacements de hiérarchie cascadent de manière non évidente. Le flux délibéré Modifier → changer parent → Enregistrer force un temps de réflexion.

Puis-je avoir deux unités avec le même nom ? Oui. L'interface n'impose pas l'unicité parce que Cellule Nord pourrait légitimement exister sous deux branches différentes. Si vous voulez dédupliquer, utilisez le nom du parent comme préfixe.

Quel est le maximum pratique d'unités ? Quelques milliers par organisation ont été testés. Le rendu d'arbre virtualise quand vous étendez un sous-arbre lourd ; les requêtes paginent. Au-delà de ~10 000 unités, demandez-vous si certaines sont en réalité des membres (par exemple si chaque foyer est une unité) et restructurez.

Étapes suivantes