From 9d591b64bae0101814004d594466b58d2c2fb995 Mon Sep 17 00:00:00 2001 From: Manus Sandbox Date: Wed, 12 Nov 2025 09:30:30 -0500 Subject: [PATCH] =?UTF-8?q?Checkpoint:=20Ajout=20du=20champ=20"Fonction"?= =?UTF-8?q?=20(Directeur,=20Chef=20de=20service,=20Autre)=20dans=20la=20fi?= =?UTF-8?q?che=20apprenant=20:=20mise=20=C3=A0=20jour=20du=20sch=C3=A9ma?= =?UTF-8?q?=20de=20base=20de=20donn=C3=A9es,=20ajout=20dans=20les=20formul?= =?UTF-8?q?aires=20d'inscription=20et=20de=20gestion=20des=20apprenants,?= =?UTF-8?q?=20affichage=20dans=20le=20tableau=20des=20apprenants,=20et=20i?= =?UTF-8?q?nt=C3=A9gration=20dans=20tous=20les=20exports=20(Excel,=20PDF,?= =?UTF-8?q?=20feuille=20de=20pr=C3=A9sence).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- client/src/pages/AdminApprenants.tsx | 23 +- client/src/pages/Inscription.tsx | 15 + drizzle/0002_fuzzy_sugar_man.sql | 1 + drizzle/meta/0002_snapshot.json | 480 +++++++++++++++++++++++++++ drizzle/meta/_journal.json | 7 + drizzle/schema.ts | 1 + server/exportService.ts | 10 +- server/routers.ts | 5 + todo.md | 5 + 9 files changed, 543 insertions(+), 4 deletions(-) create mode 100644 drizzle/0002_fuzzy_sugar_man.sql create mode 100644 drizzle/meta/0002_snapshot.json diff --git a/client/src/pages/AdminApprenants.tsx b/client/src/pages/AdminApprenants.tsx index 8a79c37..d0b6422 100644 --- a/client/src/pages/AdminApprenants.tsx +++ b/client/src/pages/AdminApprenants.tsx @@ -5,6 +5,7 @@ import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, D import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@/components/ui/table"; +import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select"; import { trpc } from "@/lib/trpc"; import { Plus, Pencil, Trash2, Search, SlidersHorizontal } from "lucide-react"; import { useState, useMemo } from "react"; @@ -20,6 +21,7 @@ export default function AdminApprenants() { prenom: "", email: "", codeEtablissement: "", + fonction: "autre" as "directeur" | "chef_service" | "autre", }); const utils = trpc.useUtils(); @@ -60,7 +62,7 @@ export default function AdminApprenants() { }); const resetForm = () => { - setFormData({ nom: "", prenom: "", email: "", codeEtablissement: "" }); + setFormData({ nom: "", prenom: "", email: "", codeEtablissement: "", fonction: "autre" }); setEditingId(null); }; @@ -70,6 +72,7 @@ export default function AdminApprenants() { prenom: apprenant.prenom, email: apprenant.email, codeEtablissement: apprenant.codeEtablissement, + fonction: apprenant.fonction || "autre", }); setEditingId(apprenant.id); setOpen(true); @@ -179,6 +182,19 @@ export default function AdminApprenants() { required /> +
+ + +