Appearance
BDD-141 — UX workflow : dossiers, fichiers, menu, Nettoyer, doc transformations, types mapper
1. User Story
En tant qu'administrateur, je veux une navigation plus claire, une meilleure gestion des dossiers/fichiers, des filtres Nettoyer plus fiables, pouvoir documenter mes transformations et des types de colonnes correctement hérités dans le mapper, afin de configurer mes workflows plus vite et éviter les erreurs de configuration.
2. Critères d'acceptance
| # | Critère | Statut |
|---|---|---|
| 1 | Connexion dossier : afficher Entreprise — nom du dossier (y compris sous-dossiers, chemin complet si imbriqué) | ✅ |
| 2 | Nettoyer : la valeur de comparaison n'est pas limitée aux premières lignes ; saisie libre + suggestions élargies | ✅ |
| 3 | Entrée fichier : hiérarchie Entreprise / dossier / fichier, dossiers regroupés sous l'entreprise | ✅ |
| 4 | Navigation : menu dans l'ordre Dépôt → Workflows → Sources | ✅ |
| 5 | Transformations : bloc texte descriptif éditable + export documentation workflow | ✅ |
| 6 | Mapper : hériter les types amont (texte, décimal, date) et propagation aux blocs aval + publication Heriade typée | ✅ |
3. Périmètre fonctionnel
Dossiers workflow (critère 1)
GET /folders/workflow-options: tous les dossiers accessibles (tous niveaux), labelEntreprise — chemin / complet.- Périmètre fichiers inchangé (BDD-139) : enfants directs du dossier sélectionné uniquement.
Fichiers dépôt (critère 3)
GET /workflows/depot-document-options: options groupées avecdisplayLabel(Entreprise / dossier / fichier).- Le sélecteur Entrée (mode fichier) affiche la hiérarchie complète.
Nettoyer (critère 2)
- Champ Valeur de comparaison :
q-selecten mode combobox (use-input,new-value-mode="add-unique"). GET /workflows/:workflowUuid/upstream-column-values: valeurs distinctes amont (scan fichier dépôt ou staging), fusionnées aux suggestions de l'échantillon.
Navigation (critère 4)
MainLayout.vue: ordre adminDépôt→Workflows→Sources→Connexions.
Documentation transformations (critère 5)
- Nœud canvas
text(annotation, hors exécution) : contenu éditable, lien optionnel vers un bloc (annotatesNodeId). - Export Markdown / HTML depuis la barre d'outils éditeur (
workflow-documentation.export.js). - Migration :
sql/tool_21_workflow_text_node.sql.
Types mapper (critère 6)
- Front :
WorkflowMapperPanelhéritecol.typeamont ; preview pipeline propage les types viaworkflow-traitement-output-columns.helpers.js. - Back staging :
StagingHeaderMapping.types[]enregistré à chaque bloc ;workflow-traitement-type-overrides.util.tspour les blocs qui transforment les colonnes. - Publication Heriade : colonnes
date→TIMESTAMP,décimal→NUMERIC, affichage Source enDD/MM/YYYY.
4. Endpoints API
| Méthode | Chemin | Description |
|---|---|---|
GET | /folders/workflow-options | Liste dossiers pour workflow (label, folderPath, enterpriseName) |
GET | /workflows/depot-document-options | Fichiers dépôt avec labels hiérarchiques |
GET | /workflows/:workflowUuid/upstream-column-values | Valeurs distinctes d'une colonne amont (nodeUuid, column) |
Exemple GET /folders/workflow-options
json
[
{
"uuid": "…",
"name": "Salaires_mensuels",
"enterpriseName": "Heriade",
"folderPath": "Heriade / Salaires_mensuels",
"label": "Heriade — Heriade / Salaires_mensuels"
}
]Exemple GET /workflows/depot-document-options
json
[
{
"uuid": "…",
"name": "janvier.csv",
"enterpriseName": "Heriade",
"folderPath": "Heriade / Salaires",
"groupLabel": "Heriade / Heriade / Salaires",
"displayLabel": "Heriade / Heriade / Salaires / janvier.csv"
}
]5. Migration SQL
| Script | Description |
|---|---|
sql/tool_21_workflow_text_node.sql | Support nœud annotation text sur le canvas |
Aucune autre migration schéma pour ce ticket.
6. Tests
| Couche | Fichiers |
|---|---|
| Back unit | folder-workflow-options.util.spec.ts, folder.service.spec.ts, workflow-depot-document-options.service.spec.ts, workflow-upstream-column-values.service.spec.ts, workflow-column-types.util.spec.ts, workflow-traitement-type-overrides.util.spec.ts, workflow-mapper-staging.service.spec.ts, workflow-heriade-publish.service.spec.ts, workflow-staging-sql-cast.util.spec.ts, workflow-date-cell.util.spec.ts, source-data-format.util.spec.ts |
| Front unit | WorkflowDepotFolderSourcePanel.spec.js, WorkflowInputSourcePanel.spec.js, workflow-depot-document-options.*.spec.js, useWorkflowUpstreamColumnValues.spec.js, workflow-row-value-rules.engine.spec.js, workflow-traitement-output-columns.helpers.spec.js, workflow-traitement-preview.pipeline.spec.js, workflow-documentation.export.spec.js, workflow-text-node-config.spec.js, MainLayout.spec.js, folder-store.spec.js |
| Front e2e (mock) | e2e/pages/admin/admin-workflow-bdd-141.spec.js — navigation, dossiers, fichiers hiérarchiques, Nettoyer saisie libre |
