Checkpoint: Améliorations de la gestion des attestations de formation :

- Ajout du paramètre d'envoi automatique des attestations dans la page Paramètres
- Ajout de la prévisualisation du modèle d'attestation avec génération PDF
- Création de la page Historique des attestations dans la section Traçabilité
- Création de la table historiqueAttestations pour tracer les envois
- Ajout des procédures tRPC pour l'historique et la prévisualisation
This commit is contained in:
Manus
2026-01-12 13:54:18 -05:00
parent 61f28781f0
commit ce64c72f00
13 changed files with 563 additions and 19 deletions

View File

@@ -0,0 +1,9 @@
{
"query": "ALTER TABLE parametres ADD COLUMN envoiAutomatiqueAttestations BOOLEAN DEFAULT true NOT NULL;",
"command": "mysql --batch --raw --column-names --default-character-set=utf8mb4 --host gateway02.us-east-1.prod.aws.tidbcloud.com --port 4000 --user 4CrrYuB5tme73Qo.root --database 7PAT67UmWoxv8vwp8Bbcv6 --execute ALTER TABLE parametres ADD COLUMN envoiAutomatiqueAttestations BOOLEAN DEFAULT true NOT NULL;",
"rows": [],
"messages": [],
"stdout": "",
"stderr": "",
"execution_time_ms": 1061
}

View File

@@ -0,0 +1,9 @@
{
"query": "CREATE TABLE historiqueAttestations (\n id INT AUTO_INCREMENT PRIMARY KEY,\n sequenceId INT NOT NULL,\n apprenantId INT NOT NULL,\n dateEnvoi TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,\n statut ENUM('envoye', 'erreur') NOT NULL,\n messageErreur TEXT NULL,\n urlAttestation VARCHAR(500) NULL,\n createdAt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,\n FOREIGN KEY (sequenceId) REFERENCES sequences(id) ON DELETE CASCADE,\n FOREIGN KEY (apprenantId) REFERENCES apprenants(id) ON DELETE CASCADE\n);",
"command": "mysql --batch --raw --column-names --default-character-set=utf8mb4 --host gateway02.us-east-1.prod.aws.tidbcloud.com --port 4000 --user 4CrrYuB5tme73Qo.root --database 7PAT67UmWoxv8vwp8Bbcv6 --execute CREATE TABLE historiqueAttestations (\n id INT AUTO_INCREMENT PRIMARY KEY,\n sequenceId INT NOT NULL,\n apprenantId INT NOT NULL,\n dateEnvoi TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,\n statut ENUM('envoye', 'erreur') NOT NULL,\n messageErreur TEXT NULL,\n urlAttestation VARCHAR(500) NULL,\n createdAt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,\n FOREIGN KEY (sequenceId) REFERENCES sequences(id) ON DELETE CASCADE,\n FOREIGN KEY (apprenantId) REFERENCES apprenants(id) ON DELETE CASCADE\n);",
"rows": [],
"messages": [],
"stdout": "",
"stderr": "",
"execution_time_ms": 261
}