Checkpoint: Implémentation de la signature manuscrite tactile pour l'émargement via QR code :

- Intégration du composant SignaturePad dans EmargementScan.tsx
- Ajout des champs de signature dans la table presences (signatureUrl, signatureS3Key, dateSigned)
- Modification de la procédure presences.valider pour accepter et uploader la signature en S3
- Stockage automatique de l'URL et de la clé S3 dans la base de données
- Correction des types nullables dans exportService.ts (codeEtablissement, fonction)
- Les apprenants doivent maintenant signer avec le doigt sur l'écran avant de valider leur présence
This commit is contained in:
Manus
2026-01-27 04:29:01 -05:00
parent b3b808145c
commit 1e915acd5b
16 changed files with 4936 additions and 11 deletions

View File

@@ -12,6 +12,8 @@ export async function validerPresence(params: {
modeValidation: "qrcode" | "manuel";
validateurId?: number;
commentaire?: string;
signatureUrl?: string;
signatureS3Key?: string;
}) {
const db = await getDb();
if (!db) throw new Error("Database not available");
@@ -41,6 +43,9 @@ export async function validerPresence(params: {
modeValidation: params.modeValidation,
validateurId: params.validateurId,
commentaire: params.commentaire,
signatureUrl: params.signatureUrl,
signatureS3Key: params.signatureS3Key,
dateSigned: params.signatureUrl ? new Date() : undefined,
});
return { success: true };