Aptli

Tâches

Les tâches représentent des unités individuelles de travail sur le terrain planifié, chacune avec un emplacement sur la carte, des besoins en ressources (le matériel et l’équipement nécessaires au travail) et un suivi de l’avancement. Une tâche peut consister à installer un boîtier de jonction dans un bâtiment spécifique, à poser 500 m de câble le long d’un itinéraire ou à effectuer une inspection dans une zone définie. Les travaux sont gérés par versions, ce qui permet aux équipes de planifier hors ligne, de créer des travaux par lots et d’annuler les modifications avant de les valider dans l’ensemble de données partagé.

Où se situent les tâches dans la hiérarchie

Projet  (regroupement de campagnes)
  └── Tâche  ← vous êtes ici
 ├── Ressources  (matériel utilisé pour ce travail — facultatif)
 └── Ordre de travail  (attribution de cette tâche à un employé ou à une équipe)
              ├── Ligne d'activité  (le travail effectué — enregistré ou ponctuel, facultatif)
 └── Rapport  (compte rendu du travailleur sur ce qui a été réellement fait)

Une tâche est l'élément central de la planification. Elle contient la géométrie () et les besoins en ressources (quels matériaux). Les ordres de travail l'attribuent à des personnes et définissent le travail à effectuer via leur ligne d'activité. Les rapports indiquent ce qui a été réellement fait, en remontant la progression vers la tâche.

Tâches, ressources et activités

Le modèle §193 divise la substance d'un travail en deux registres complémentaires — et les deux sont facultatifs :

Se trouve dansRéponsesCatalogue
Ressourcesle projet (lignes de ressources)Quels matériaux/équipements cela consomme-t-il ?Ressources
Activitéle bon de travail (ligne d'activité)Quel travail est effectué ?Activités

Un travail n'a pas besoin de déclarer de ressources, et un ordre de travail n'a pas besoin de nommer une activité. Déclarez-les lorsque le suivi structuré, l'autorisation d'inventaire ou le paiement basé sur les activités s'avèrent utiles ; laissez-les vides pour les travaux simples ou ponctuels. Rien ne vous y oblige.

Structure des tâches

Page des tâches affichant le travail planifié avec suivi de l'avancement et exigences multi-ressources

Champs de base :

  • Nom — Nom descriptif de la tâche
  • Description — Instructions de travail détaillées
  • Géométrie — Point, ligne ou polygone indiquant l'emplacement du travail
  • Groupe — Regroupement libre au sein d'un projet (par ex. « Phase 1 », « Électricité »)
  • Ressources — Liste des matériaux et équipements requis (prise en charge de plusieurs ressources, facultatif)

Exigences en matière de ressources : Chaque entrée de ressource comprend :

  • resource — Référence de définition de la ressource
  • volume — Quantité requise
  • uom — Unité de mesure
  • assignedTo — Personne chargée de récupérer cette ligne de ressource spécifique (facultatif — voir Affectation par ressource)

Exemple :

Tâche : « Installer un boîtier de raccordement réseau dans le bâtiment 42 »
Géométrie : Point (lat : 40,7128, lng : -74,0060)
Ressources : [
  { resource: "Boîtier de jonction",    volume: 1,  uom: "unités" },
  { resource: "Câble Cat6", volume: 15, uom: "mètres" },
  { resource: "Vis de fixation", volume: 8,  uom: "unités" }
]

Le travail d'installation — épissure, montage, raccordement — est consigné dans l'ordre de travail en tant que ligne d'activité, et non en tant que ressource ici.

Tâches à ressources multiples

Ancien système : une ressource par tâche

  • Problème : les travaux complexes génèrent un nombre excessif de marqueurs sur la carte
  • Exemple : 100 installations × 4 ressources = 400 points sur la carte

Système actuel : plusieurs ressources par tâche

  • Un seul marqueur sur la carte représente l'ensemble des travaux
  • Même exemple : 100 points sur la carte (un par installation)
  • Carte plus claire, planification spatiale plus facile

Affectation par ressource

Chaque ligne de ressource d'une tâche peut être affectée à une personne spécifique. Cela permet aux planificateurs de désigner la personne chargée de récupérer chaque matériel — au niveau de la ligne, et pas seulement au niveau de l'ordre de travail.

Fonctionnement de l'affectation :

  • Dans les détails de la tâche, chaque ligne de ressource comporte une colonne Attribué à
  • La colonne apparaît automatiquement dès qu'une ligne de la tâche comporte une attribution ; elle reste masquée lorsqu'aucune attribution n'est définie
  • L'attribution d'une personne à une ligne de ressource ne réserve pas de stock — elle indique qui est censé récupérer et livrer cet article
  • L'état réel du prélèvement (qui a prélevé, quelle quantité, quand) est suivi via le registre des transactions, et non sur le travail lui-même

Pourquoi effectuer le suivi au niveau des ressources ?

Une seule tâche peut comporter de nombreuses lignes de ressources, et ces lignes peuvent être réparties entre plusieurs ordres de travail et équipes. L'affectation par ressource comble cette lacune : un planificateur peut dire « Alice va chercher les 50 m de gaine pour cette tâche, Bob s'occupe des boîtes de jonction.» Chaque personne dispose d’une vue précise de ce qu’elle doit récupérer — aucune ambiguïté quant à la personne responsable de chaque article.

Filtrer par vos affectations de ressources :

La page « Ordres de travail » dispose d’un filtre Mes affectations de ressources qui affiche les ordres de travail dont la tâche associée comporte une ligne de ressource qui vous est attribuée. Les travailleurs peuvent l’utiliser pour accéder directement à leurs prélèvements de matériel spécifiques sans avoir à parcourir toute la liste des tâches.

Notification d’envoi des affectations :

Une fois les affectations de ressources définies, l’action Envoyer les affectations sur la page des tâches envoie des notifications à tous les destinataires. Chaque personne reçoit un message unique regroupant ses bons de travail (nom, date d’échéance, lien) ainsi qu’un code QR par ligne de ressource attribuée. Le code QR sert d'autorisation de retrait : le travailleur le scanne à l'entrepôt pour récupérer son article spécifique. Le retrait est automatiquement enregistré comme une transaction lors du scan.

L'action « Envoyer les affectations » est disponible à la fois comme action par ligne sur des tâches individuelles et comme opération groupée lorsque plusieurs tâches sont sélectionnées dans le tableau.

Les tâches sont gérées par versions

Contrairement aux ordres de travail et aux rapports, les tâches utilisent le workflow version/validation :

Pourquoi un système de versions :

  • Les administrateurs conçoivent les zones de travail hors ligne (tunnels de métro, sites éloignés)
  • Détection des conflits spatiaux nécessaire (chevauchement géographique)
  • Les opérations par lots sont courantes (refonte de l'ensemble d'une campagne)
  • La restauration est utile (annuler l'ensemble des modifications de planification)

Workflow :

  1. Créer une version (mode brouillon)
  2. Ajouter/modifier des tâches dans le brouillon
  3. Validation spatiale (vérification des chevauchements)
  4. Valider la version → les tâches deviennent « officielles »
  5. Les travailleurs voient les tâches validées dans leurs affectations

Collaboration hors ligne : Plusieurs administrateurs peuvent créer des versions distinctes :

  • Administrateur A : planifier les tâches de la région nord
  • Administrateur B : planifier les tâches de la région sud
  • Les deux travaillent hors ligne, puis valident plus tard
  • Résolution des conflits en cas de chevauchement géographique

Types de géométrie des tâches

Tâches ponctuelles

Travaux sur un seul site (installation d'équipements, inspection).

Géométrie : { type : "Point", coordonnées : [lng, lat] }

Tâches linéaires

Travaux linéaires (tracés de câbles, installation de canalisations).

Géométrie : { type: "LineString", coordinates: [[lng1,lat1], [lng2,lat2], ...] }

Tâches de type polygone

Travaux basés sur une zone (zones de couverture, zones de service).

Géométrie : { type : "Polygon", coordonnées : [[[lng1,lat1], ...]] }

Filtrage par proximité

Rechercher des travaux à proximité d'emplacements spécifiques :

  1. Ouvrez la page Travaux
  2. Cliquez sur Filtrer à proximité
  3. Faites glisser le marqueur de la carte vers un emplacement
  4. Définissez la distance (par exemple, 5 km)
  5. Le tableau affiche uniquement les missions situées dans ce rayon

Action sur la ligne : cliquez sur « Filtrer à proximité » sur la ligne d'une mission → la proximité est automatiquement définie par rapport à l'emplacement de cette mission.

Utilisation des missions dans les bons de travail

Chaque bon de travail est lié à une seule mission — la mission spécifique que le travailleur est chargé d'exécuter. Les bons de travail ne peuvent pas couvrir plusieurs missions ; si le travail dépasse les limites d'une mission, créez un bon de travail par mission ou utilisez des bons de travail autonomes ad hoc.

Une tâche peut être référencée par plusieurs bons de travail — ce qui est utile lorsqu'une tâche volumineuse est répartie entre plusieurs équipes ou lorsque le travail s'étale sur plusieurs jours.

Exemple :

Tâche : « Pose de câble au 3e étage »
  Ressources : 200 m de câble

Ordre de travail A (équipe du matin) :
  Tâche : « Pose de câble au 3e étage »
  Objectifs de ressources : 100 m de câble
  Activité : Tirer la fibre — 100 m

Ordre de travail B (équipe de l'après-midi) :
  Tâche : « Pose de câble au 3e étage »
  Objectifs de ressources : 100 m de câble
  Activité : Tirage de fibre — 100 m

Les deux ordres de travail font référence à la même tâche ; les rapports des deux équipes sont pris en compte dans le calcul de l'avancement de la tâche.

Suivi de l'avancement de la tâche

Calcul : Avancement = Moyenne d'achèvement sur toutes les lignes de ressources

Exemple :

Tâche avec 2 ressources :
  - Câble Cat6 : 10 m requis, 5 m terminés = 50 %
  - Vis : 8 requises, 8 terminées = 100 %

Progression globale = (50 % + 100 %) / 2 = 75 %

Indicateurs visuels :

  • Barre de progression : Vert ≥ 100 %, Jaune ≥ 50 %, Rouge < 50 %

Création de tâches

Accès requis : droit d'administrateur jobsCreate

Procédure :

  1. Accédez à Exécution → Tâches
  2. Créez une nouvelle version (ou modifiez un brouillon existant)
  3. Cliquez sur Ajouter une tâche
  4. Remplissez les informations de base (nom, description)
  5. Cliquez sur la carte pour définir la géométrie
  6. Ajoutez des lignes de ressources si le travail nécessite des matériaux (facultatif, vous pouvez en ajouter plusieurs)
  7. Définissez les affectations par ressource si nécessaire
  8. Enregistrez le travail en brouillon
  9. Validez la version une fois la planification terminée

Bonnes pratiques :

  • Regroupez les matériaux connexes dans un seul travail (cela réduit l'encombrement de la carte)
  • Utilisez une nomenclature cohérente (par ex., « Installation — Boîte de jonction — Bâtiment 42 »)
  • Définissez des volumes de ressources réalistes (pour faciliter la planification des stocks)
  • Enregistrez le travail dans la ligne d'activité de l'ordre de travail, et non comme une pseudo-ressource

Génération groupée de travaux

Méthode 1 : Importation depuis GeoJSON

  1. Créez un fichier GeoJSON contenant une entité par tâche
  2. Chaque entité comporte des propriétés : nom, description, ressources
  3. Importer → crée toutes les tâches dans une seule version

Méthode 2 : Génération à partir d'une sélection sur la carte

  1. Sélectionnez des entités existantes sur la carte
  2. Cliquez sur Générer des tâches
  3. Choisissez une configuration de ressources
  4. Une tâche est créée à chaque emplacement sélectionné

Méthode 3 : Dupliquer une tâche

  1. Sélectionnez une tâche avec la configuration de ressources appropriée
  2. Cliquez sur Dupliquer
  3. Modifiez la géométrie pour l'adapter au nouvel emplacement

Impression par lots des tâches

Un projet peut contenir des dizaines, voire des centaines de tâches. Plutôt que d'imprimer chacune d'entre elles à partir de sa page de détails, utilisez l'action Imprimer toutes les tâches au niveau du projet :

  1. Ouvrez la page de détails du projet parent (/fulfillment/projects/:id)
  2. Cliquez sur Imprimer tous les travaux dans l'en-tête
  3. La vue d'impression par lots s'ouvre à l'adresse /fulfillment/jobs/batch/[ids]
  4. L'écran affiche 10 travaux par page (pagination pilotée par CSS — tous les enregistrements se trouvent dans le DOM, donc l'impression génère tout)
  5. Imprimez la page — chaque tâche est séparée par un saut de page

Remarques :

  • Limite de sécurité : la vue par lots est limitée à 200 tâches par impression. Si le projet dépasse ce nombre, une bannière vous avertit et les tâches au-delà de 200 sont tronquées — divisez l'impression en lots plus petits si nécessaire.
  • Chaque tâche s'affiche avec la même mise en page que sa page de tâche individuelle.

Validation des tâches

Avant qu'une version ne soit validée, le système vérifie :

Conflits spatiaux :

  • Polygones qui se chevauchent (deux tâches couvrant la même zone)
  • Tâches ponctuelles trop proches les unes des autres (seuil configurable)
  • Tâches de lignes traversant des zones réglementées

Disponibilité des ressources :

  • Avertissement si les ressources requises ne sont pas en stock
  • Ne bloque pas la validation (les tâches peuvent être datées ultérieurement)
  • Facilite la planification des achats

Validité de la géométrie :

  • Les points doivent avoir des coordonnées valides
  • Les lignes doivent comporter au moins 2 points
  • Les polygones doivent être fermés (premier point = dernier point)

Cycle de vie d'une tâche → d'un ordre de travail

Déroulement type :

  1. Planification — L'administrateur crée des tâches en version brouillon
  2. Validation — La version est validée, les tâches deviennent officielles
  3. Ordre de travail — Un ordre de travail est créé, lié à cette tâche, décrivant son activité et l'attribuant à un employé
  4. Exécution — L'employé exécute la tâche, éventuellement sur plusieurs ordres de travail
  5. Rapport — Le collaborateur soumet un rapport faisant référence à cette tâche
  6. Progression — La progression de la tâche est mise à jour en fonction de tous les rapports qui y font référence
  7. Achèvement — Lorsque toutes les ressources atteignent 100 %, la tâche est effectivement terminée
  8. Validation — Si l'ordre de travail final comporte une couche Validé vers, la géométrie de la tâche est placée ou déplacée sur la carte (voir Validation de la tâche ci-dessous)

Réutilisation des tâches : Les tâches peuvent être référencées par plusieurs ordres de travail :

  • Répartition de tâches volumineuses entre plusieurs équipes
  • Achèvement partiel par un travailleur, finalisation par un autre
  • Agrégation de l'avancement sur l'ensemble des rapports

Clôture de la tâche

La finalisation de la tâche permet d'intégrer le travail de terrain terminé dans le jeu de données SIG partagé. Lorsqu'un ordre de travail lié à une tâche est terminé, il peut automatiquement placer ou faire avancer la géométrie de la tâche sur la carte.

Configuration de la graduation

Dans le formulaire de création ou de modification de l'ordre de travail, définissez le champ Graduates To sur la couche cible. Lorsque cet ordre de travail est marqué comme « terminé », le déclencheur de graduation s'active :

  • Aucun élément cartographique existant → un nouvel élément est créé dans la couche cible, à partir de la géométrie et des propriétés du projet. Un lien sourceJobId est apposé sur l'élément à des fins de traçabilité.
  • Élément cartographique existant → l'élément est déplacé vers la couche cible. L'élément conserve le même ID — rien n'est dupliqué.

La tâche elle-même n'est jamais supprimée ni archivée. Elle reste l'enregistrement permanent de la planification et du travail.

Transfert en plusieurs étapes

Une tâche peut être transférée à travers plusieurs couches à mesure que les ordres de travail successifs sont terminés. Exemple pour une installation de réseau fibre optique :

Ordre de travailCouche cibleÉtape
Levéplanned-routesItinéraire confirmé sur la carte
Installationinstalled-routesCâble physiquement en place
Réceptionaccepted-routesRéception terminée

Chaque achèvement redirige simplement la couche affichant la géométrie de la tâche — aucun reliaison de la tâche elle-même n'est nécessaire.

Journal de progression

L'onglet Emplacement de la vue détaillée de la tâche affiche un Journal de progression : une chronologie horodatée de chaque déplacement de couche, indiquant notamment quel ordre de travail a déclenché chaque transition. Utilisez-le pour auditer le cycle de vie d'une installation sur le terrain.

Affichage des détails de la tâche

La page de détails du travail affiche :

  • Les informations de base et la géométrie
  • La liste des ressources requises avec l'affectation par ressource
  • La barre de progression et le pourcentage
  • Les ordres de travail faisant référence à ce travail (avec leurs lignes d'activité)
  • Les rapports qui ont enregistré le travail effectué pour ce travail
  • Le journal de progression (onglet Emplacement)