Checkpoint: Correction complète de l'affichage du formateur dans la liste des séquences et dans le formulaire de modification. Ajout de la colonne formateurId dans la table sequences, modification du schéma Zod pour accepter null, et correction du FormateurCombobox pour stocker l'ID au lieu du nom. Le formateur s'affiche maintenant correctement dans la liste des séquences.
This commit is contained in:
@@ -64,7 +64,7 @@ export default function FormateurCombobox({
|
||||
createMutation.mutate({ nom: newFormateurNom.trim() });
|
||||
};
|
||||
|
||||
const selectedFormateur = formateurs?.find((f) => f.nom === value);
|
||||
const selectedFormateur = formateurs?.find((f) => f.id.toString() === value);
|
||||
|
||||
return (
|
||||
<>
|
||||
@@ -89,7 +89,7 @@ export default function FormateurCombobox({
|
||||
{formateurs?.map((formateur) => (
|
||||
<CommandItem
|
||||
key={formateur.id}
|
||||
value={formateur.nom}
|
||||
value={formateur.id.toString()}
|
||||
onSelect={(currentValue) => {
|
||||
onChange(currentValue === value ? "" : currentValue);
|
||||
setOpen(false);
|
||||
@@ -98,7 +98,7 @@ export default function FormateurCombobox({
|
||||
<Check
|
||||
className={cn(
|
||||
"mr-2 h-4 w-4",
|
||||
value === formateur.nom ? "opacity-100" : "opacity-0"
|
||||
value === formateur.id.toString() ? "opacity-100" : "opacity-0"
|
||||
)}
|
||||
/>
|
||||
{formateur.nom}
|
||||
|
||||
@@ -144,6 +144,7 @@ export default function AdminSequences() {
|
||||
capaciteMax: sequence.capaciteMax?.toString() || "12",
|
||||
dateBlocage: safeFormatDate(sequence.dateBlocage),
|
||||
statut: sequence.statut || "ouverte",
|
||||
formateur: sequence.formateurId?.toString() || "",
|
||||
dates: (sequence.dates || []).map((d: any) => ({
|
||||
dateDebut: safeFormatDate(d.dateDebut),
|
||||
dateFin: safeFormatDate(d.dateFin),
|
||||
@@ -169,6 +170,7 @@ export default function AdminSequences() {
|
||||
capaciteMax: parseInt(formData.capaciteMax),
|
||||
dateBlocage: formData.dateBlocage,
|
||||
statut: formData.statut,
|
||||
formateurId: formData.formateur ? parseInt(formData.formateur) : null,
|
||||
dates: formData.dates,
|
||||
};
|
||||
|
||||
@@ -654,7 +656,7 @@ export default function AdminSequences() {
|
||||
</div>
|
||||
</TableCell>
|
||||
<TableCell className="max-w-xs truncate">{sequence.lieu}</TableCell>
|
||||
<TableCell className="text-sm">{sequence.formateur || "-"}</TableCell>
|
||||
<TableCell className="text-sm">{sequence.formateur?.nom || "-"}</TableCell>
|
||||
<TableCell>
|
||||
<span className={`inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium ${getPublicCibleBadge(sequence.publicCible)}`}>
|
||||
{getPublicCibleLabel(sequence.publicCible)}
|
||||
|
||||
Reference in New Issue
Block a user