Checkpoint: Refonte de l'affichage des rappels dans le tableau de gestion des séquences : remplacement de la colonne unique "Rappels configurés" par deux colonnes distinctes "Rappels pré-formation" et "Rappels post-formation". Chaque colonne affiche les rappels correspondants avec leurs badges colorés (bleu pour pré-formation, vert pour post-formation) et l'icône Bell. Les rappels sont organisés par date de formation (une ligne par date). Affichage d'un tiret "-" quand aucun rappel n'est configuré pour une catégorie. Cette séparation en deux colonnes améliore considérablement la lisibilité et permet de visualiser instantanément la configuration des rappels avant et après chaque formation. Les deux colonnes restent visibles dans les vues complète et réduite car ce sont des informations essentielles pour la gestion des communications automatiques.

This commit is contained in:
Manus
2026-01-08 11:40:10 -05:00
parent 8c71e715a8
commit 70c45ab064
2 changed files with 51 additions and 38 deletions

View File

@@ -696,7 +696,8 @@ export default function AdminSequences() {
<TableHead>Formation</TableHead> <TableHead>Formation</TableHead>
<TableHead>Nom</TableHead> <TableHead>Nom</TableHead>
<TableHead>Dates</TableHead> <TableHead>Dates</TableHead>
<TableHead>Rappels configurés</TableHead> <TableHead>Rappels pré-formation</TableHead>
<TableHead>Rappels post-formation</TableHead>
{!isCompactView && ( {!isCompactView && (
<> <>
<TableHead>Lieu</TableHead> <TableHead>Lieu</TableHead>
@@ -725,16 +726,13 @@ export default function AdminSequences() {
</div> </div>
</TableCell> </TableCell>
<TableCell> <TableCell>
<div className="space-y-2"> <div className="space-y-1.5">
{sequence.dates.map((date: any) => { {sequence.dates.map((date: any) => {
const rappelsPre = date.rappels?.filter((r: any) => r.timing === 'pre_formation') || []; const rappelsPre = date.rappels?.filter((r: any) => r.timing === 'pre_formation') || [];
const rappelsPost = date.rappels?.filter((r: any) => r.timing === 'post_formation') || [];
return ( return (
<div key={date.id} className="space-y-1"> <div key={date.id}>
{rappelsPre.length > 0 && ( {rappelsPre.length > 0 ? (
<div className="space-y-0.5">
<div className="text-[10px] font-medium text-blue-600">Pré-formation</div>
<div className="flex flex-wrap gap-1"> <div className="flex flex-wrap gap-1">
{rappelsPre.map((rappel: any) => ( {rappelsPre.map((rappel: any) => (
<Badge <Badge
@@ -747,11 +745,22 @@ export default function AdminSequences() {
</Badge> </Badge>
))} ))}
</div> </div>
</div> ) : (
<span className="text-xs text-muted-foreground italic">-</span>
)} )}
{rappelsPost.length > 0 && ( </div>
<div className="space-y-0.5"> );
<div className="text-[10px] font-medium text-green-600">Post-formation</div> })}
</div>
</TableCell>
<TableCell>
<div className="space-y-1.5">
{sequence.dates.map((date: any) => {
const rappelsPost = date.rappels?.filter((r: any) => r.timing === 'post_formation') || [];
return (
<div key={date.id}>
{rappelsPost.length > 0 ? (
<div className="flex flex-wrap gap-1"> <div className="flex flex-wrap gap-1">
{rappelsPost.map((rappel: any) => ( {rappelsPost.map((rappel: any) => (
<Badge <Badge
@@ -764,10 +773,8 @@ export default function AdminSequences() {
</Badge> </Badge>
))} ))}
</div> </div>
</div> ) : (
)} <span className="text-xs text-muted-foreground italic">-</span>
{rappelsPre.length === 0 && rappelsPost.length === 0 && (
<span className="text-xs text-muted-foreground italic">Aucun rappel</span>
)} )}
</div> </div>
); );

View File

@@ -599,3 +599,9 @@
## Séparation des rappels pré et post-formation ## Séparation des rappels pré et post-formation
- [x] Séparer l'affichage des rappels en deux catégories (pré-formation et post-formation) - [x] Séparer l'affichage des rappels en deux catégories (pré-formation et post-formation)
- [x] Ajouter des labels visuels pour distinguer les deux types de rappels - [x] Ajouter des labels visuels pour distinguer les deux types de rappels
## Amélioration affichage des rappels dans les séquences
- [x] Remplacer la colonne "Rappels configurés" par deux colonnes distinctes
- [x] Créer colonne "Rappels pré-formation" avec badges bleus
- [x] Créer colonne "Rappels post-formation" avec badges verts
- [x] Tester l'affichage dans les vues complète et réduite