21 mars 2025 12:31:21 Philippe Bareille avatar

wiki : Documentation Technique > Fonctionnalités du plugin Workflow

Fonctionnalités du plugin Workflow

Le workflow désigne dans Lutece le circuit de traitement d'un dossier ou d'une demande (par exemple dans le cas de l'application Forms) ou d'un rendez-vous (dans le cas de l'application de Rendez-vous). Une demande (un dossier ou un rendez-vous), dite ressource, passe par des états différents en fonction de l'avancement de son traitement et des actions effectuées.

Exemple d'intitulés souvent employés pour les états par lesquels une ressource peut passer : déposée, en cours de traitement, en attente de précision, validée, etc...

La ressource passe d'un état de départ à un état d'arrivée par l'activation d'une action du workflow. Une action comprend entre aucune et plusieurs tâches. Chaque tâche constitue un traitement réalisé sur la ressource (modification, suppression, notification...) pour que la ressource passe dans l'état suivant.

Exemple d'intitulés d'actions : instruction de la demande, demande de précisions, validation de la demande, etc...

Dans le cas de l'action de validation de la demande, l'état de la ressource passe de en cours de traitement à validée. Une tâche peut être associée à cette action. par exemple : notifier un usager (par mail et/ou sms)

Il existe trois types d'actions :

  • Les actions classiques sont déclenchées par une action manuelle d'un administrateur back-office. Cela correspond à des actions de modification, d'annulation ou d'affectation à des utilisateurs back-office.
  • Les actions automatiques sont déclenchées automatiquement lors de l'arrivée de la ressource dans l'état de départ si tous les prérequis sont satisfaits.
  • Les actions manuelles déclenchées par l'usager. Certaines actions peuvent être configurées pour être déclenchées par les usagers afin de leur assurer la possibilité de modifier une demande ou d'annuler un rendez-vous par exemple.

Les tâches sont des fonctionnalités du plugin Workflow et de ses modules. Une action peut contenir plusieurs tâches qui seront toutes exécutées au déclenchement de l'action.

Par exemple, la tâche de notification permet l'envoi d'une notification mail ou SMS en accusé de réception au dépôt d'une demande. Le plus souvent cette tâche est configurée dans une action automatique. D'autres tâches sont couramment utilisées comme l'archivage (par anonymisation de tous les champs ou d'une partie ou par suppression), l'affectation de la ressource à un utilisateur back office ou encore la modification d'une ressource (pour l'ajout d'un commentaire utile au traitement de la demande par exemple).

Le circuit de traitement d'une demande (ou d'un rendez-vous), que permet le plugin Workflow, est mis en place en lien avec les plugins Forms et/ou Appointment (Rendez-vous). La configuration du plugin workflow se fait en back office. Selon les tâches de workflow à exécuter pour répondre aux besoins des applications, différents modules devront être ajoutés.

Exemple de module pouvant être ajouté pour réaliser la tâche de génération de pdf pour l'utilisateur : le module workflow-formstopdf

Comme chaque plugin de Lutèce, Workflow peut être adapté par développement lorsque de nouveaux besoins de fonctionnalités sont nécessaires.

Gestion des workflows

Création d'un workfow

La création d'un workflow se fait depuis l'entrée du menu Gestion des workflows, puis du bouton + Créer un workflow

Dans une première étape, un workflow se définit par un titre, une description et l'affectation ou non à un groupe de travail. L'affectation d'un workflow à un groupe de travail permet de restreindre l'administration du workflow à une liste de personnes appartenant à un groupe de travail. Par défaut, le workflow n'est assigné à aucun groupe de travail.

Menu de gestion des workflows commenté

Modification d'un workflow

La modification d'un workflow permet de procéder à la deuxième étape de sa création, en définissant les différents états d'une ressource, les actions et les tâches, et de modifier par la suite son paramétrage. Un workflow se caractérise donc par une liste d'états, une liste d'actions permettant le changement de ces états et de tâches associées.

Gestion des états

Gestion des actions

Gestion des tâches

Vue graphique des workflows

Exemples de workflows métiers

Avant de créer un workflow vous devez définir le circuit de traitement de votre dossier ou de votre demande. Les exemples suivants sont des cas mis en pratique dans différentes applications métiers Lutèce.

Cycle de vie simple d'une demande

Cet exemple est compatible à un formulaire de demande d'inscription, de candidature par exemple. Le service instructeur de la demande a défini un circuit de traitement de la demande. L'usager dépose sa demande, il est immédiatement notifié. La demande est à l'état "Demande reçue". Le service vérifie si la demande répond aux critères de recevabilité. Puis en fonction des critères de la demande, celle-ci est validée ou refusée. Le changement d'état de "Demande reçue" à "Demande refusée" ou "Demande acceptée" est manuelle et réalisée par un utilisateur back-office.

Enfin, selon le délai choisi en paramétrage, la demande sera archivée et les informations renseignées par l'usager anonymisées ou supprimées selon l'option choisie au paramétrage de cette tâche.

llustration d'un workflow simple

Un autre exemple : On note l'emploi de la tâche d'archivage en tâche automatique sur tous les états. La tâche d'archivage s'exécute en fonction du délai configuré. Ainsi, si la ressource est restée dans un état intermédiaire du workflow, c'est-à-dire que pour n'importe quelle raison, elle n'a pas suivi le circuit complet, la ressource pourra tout de même être anonymisée au terme du délai prévu.

Exemple de workflow dans Forms