Editeur Visuel de Workflows
Vue d'ensemble
L'editeur visuel de workflows permet de creer et modifier un workflow avec une vue en 2 colonnes:
- colonne gauche: vue des phases (Flow)
- colonne droite: edition detaillee de la phase et de ses taches
L'objectif actuel est la clarte et la stabilite de configuration, sans interactions drag & drop.
Fonctionnalites actuelles
Vue Flow (colonne gauche)
- Liste verticale des phases.
- Actions rapides par phase:
- Ouvrir
- Ajouter tache
- Dupliquer
- Renommer (icone a cote du nom)
- Liste des taches d'une phase repliable/depliable.
- Badges de statut (OK / Bloquant) sur phases et taches.
- Badges de type de tache (Tache, Email automatique, SMS automatique, dont Inviter à remplir les renseignements).
Panneau d'edition (colonne droite)
- Edition de la phase selectionnee.
- Liste des taches repliable par tache.
- Bouton global unique pour tout ouvrir / tout fermer les taches.
- Par defaut:
- phases: liste de taches repliee dans le flow
- taches: repliees dans le panneau d'edition
- Selection d'une tache dans le flow: ouvre automatiquement la tache correspondante dans le panneau.
Validation des champs obligatoires
- Les champs obligatoires affichent une etoile
*dans le formulaire. - Validation bloquante:
Nom de phaseobligatoire.Au moins une tacheobligatoire par phase.Type de tacheobligatoire.Template emailobligatoire pourAUTOMATIC_EMAIL(sauf actionsCLIENT_PORTAL_INVITE,SEND_SESSION_INFO_INVITEetSEND_SURVEY_INVITE).Template SMSobligatoire pourAUTOMATIC_SMS.
- Les erreurs sont visibles:
- dans le bloc global "Workflow has blocking errors",
- et inline dans la tache concernee.
Renseignements de session (Session Info)
- Action « Inviter à remplir les renseignements » (
SEND_SESSION_INFO_INVITE) : type de tâche « Email automatique » ; envoi d ’un email au contact avec un lien vers le portail client (formulaire de renseignements). Le template email est optionnel (sinon template systèmesession-info-invite). Voir SESSION_INFO_RENSEIGNEMENTS.md. - Action « Envoyer une enquête au client » (
SEND_SURVEY_INVITE) : type de tâche « Email automatique » ; envoi d'un email au contact avec un lien vers le formulaire d'enquête (survey) en portail client. Le modèle d'enquête est obligatoire ; le template email est optionnel (sinon template systèmenew-questionnaire). - Déclencheur « Renseignements soumis » (
SESSION_INFO_SUBMITTED) : permet de lancer un workflow lorsque le client a enregistré les renseignements (depuis le portail client). Utile par exemple pour envoyer un accusé de réception ou une tâche de suivi.
Sous-taches (1 niveau)
- Ajout/edition/suppression de sous-taches sur 1 niveau maximum.
- Types d'actions visibles et differencies (email/sms/notification/etc.).
Composants principaux
WorkflowFormPage- orchestre la page, la selection phase/tache et la sauvegarde.
WorkflowFlowCanvas- rendu de la vue Flow et actions rapides de phase.
WorkflowPhaseForm- edition d'une phase et de sa liste de taches.
SortableTaskItem/SortableTaskList- rendu des cartes taches repliables (sans reordonnancement drag & drop).
WorkflowTaskForm- edition detaillee d'une tache (type, delai, templates, sous-taches).
Decisions UX actuelles
- Pas de drag & drop pour reordonner phases/taches.
- Pas de bloc "Test workflow" dans l'ecran d'edition.
- Bouton Save place a cote de "Ajouter une phase".
- Bouton Cancel retire (le bouton Back du header suffit).
Limitations connues
- Reordonnancement manuel non disponible dans l'UI actuelle.
- Les sous-taches sont limitees a un seul niveau.
- Les templates SMS sont geres depuis
Settings > Data > SMS Templateset references dans les tachesAUTOMATIC_SMS.
Templates SMS (defaults + variables)
- Des templates SMS systeme par defaut sont crees automatiquement pour chaque nouvel utilisateur.
- Les templates SMS systeme ne sont pas supprimables.
- Dans la liste
Settings > Data > SMS Templates, le bouton de creation des defaults n'apparait que si:- la liste est vide
- et que des defaults peuvent encore etre crees (
canCreateDefaults = true)
- L'editeur SMS propose un panneau de variables (placeholders) pour inserer rapidement:
- prenom / nom client
- date, lieu et type de seance
- informations entreprise (nom, telephone, email)
Fichiers de reference
frontend/src/pages/workflows/WorkflowsPage/WorkflowFormPage.tsxfrontend/src/pages/workflows/WorkflowsPage/components/WorkflowFlowCanvas.tsxfrontend/src/pages/workflows/WorkflowsPage/components/WorkflowPhaseForm.tsxfrontend/src/pages/workflows/WorkflowsPage/components/SortableTaskItem.tsxfrontend/src/components/workflows/WorkflowTaskForm.tsx