Commit Graph

72 Commits

Author SHA1 Message Date
Manus Sandbox
6a5af08dad Rollback to 732b84fe 2025-11-17 01:42:00 -05:00
Manus Sandbox
5439ce3ca2 Checkpoint: Correction du formulaire de modification des séquences : ajout du champ "Public cible" qui était manquant dans le dialogue de modification. Le champ est maintenant présent et modifiable dans les deux dialogues (création et modification). 2025-11-13 12:03:17 -05:00
Manus Sandbox
732b84fee8 Checkpoint: Correction : déplacement du champ "Public cible" des formations vers les séquences. Le public cible est maintenant défini au niveau de chaque séquence, permettant d'avoir des séquences différentes pour des publics différents au sein d'une même formation. Mise à jour complète du schéma de base de données, des procédures tRPC, du formulaire de création/édition de séquences avec affichage dans le tableau, et affichage du public cible pour chaque séquence sur la page d'inscription publique. 2025-11-13 11:18:02 -05:00
Manus Sandbox
5f4a049e05 Checkpoint: Ajout du champ "Public cible" dans la fiche formation avec liste déroulante identique à celle de "Fonction" des apprenants (Directeur, Chef de service, Autre). Mise à jour du schéma de base de données, des procédures tRPC, du formulaire de gestion des formations avec affichage dans le tableau, et affichage du public cible sur la page d'inscription publique. 2025-11-13 10:35:54 -05:00
Manus Sandbox
4152b88c91 Checkpoint: Correction finale du décalage horaire : parseLocalDateTime compense maintenant automatiquement le décalage UTC en utilisant getTimezoneOffset(). Cela garantit que l'heure saisie (par exemple 09:48) est stockée en UTC de manière à être affichée correctement en heure locale. Le paramètre timezone a été retiré de la connexion MySQL pour éviter les doubles conversions. 2025-11-13 10:24:37 -05:00
Manus Sandbox
7e0e9d0586 Checkpoint: Correction définitive du décalage horaire : parseLocalDateTime retourne maintenant directement une chaîne au format MySQL "YYYY-MM-DD HH:mm:ss" au lieu d'un objet Date JavaScript. Cela évite toute conversion UTC automatique lors de l'insertion en base de données. L'heure saisie (par exemple 09:48) est maintenant stockée et affichée exactement telle quelle sans décalage. 2025-11-13 10:17:35 -05:00
Manus Sandbox
1031c57f96 Checkpoint: Configuration du fuseau horaire Europe/Paris (UTC+1) dans la connexion MySQL pour éliminer le décalage horaire. Le paramètre timezone=+01:00 est ajouté automatiquement à l'URL de connexion pour forcer MySQL à stocker et récupérer les dates en heure locale française sans conversion UTC. 2025-11-13 09:59:12 -05:00
Manus Sandbox
1af1f3ceed Checkpoint: Correction de la gestion des objets Date JavaScript dans toutes les fonctions de formatage. Les dates récupérées de la base de données via tRPC sont automatiquement converties en objets Date JavaScript par SuperJSON. Toutes les fonctions formatDate et safeFormatDate ont été mises à jour pour détecter et gérer correctement les objets Date en plus des chaînes MySQL, évitant ainsi les erreurs "Format de date non reconnu". 2025-11-13 09:52:41 -05:00
Manus Sandbox
0b83cbd8cd Checkpoint: Correction complète et définitive du décalage horaire. Toutes les fonctions de formatage de dates ont été réécrites pour parser manuellement les chaînes MySQL sans passer par new Date() qui provoquait des conversions UTC. Les corrections incluent : parseLocalDateTime côté serveur, safeFormatDate dans le formulaire d'édition, formatDate dans AdminSequences, Inscription et AdminSequenceInscrits. L'heure saisie correspond désormais exactement à l'heure affichée partout dans l'application. 2025-11-13 03:23:12 -05:00
Manus Sandbox
fedfcc59a4 Checkpoint: Correction définitive du décalage horaire lors de l'enregistrement des dates. La fonction parseLocalDateTime parse maintenant manuellement les composants de la date (année, mois, jour, heures, minutes) et construit un objet Date en utilisant le constructeur avec les valeurs locales, évitant ainsi toute conversion UTC automatique. L'heure saisie (ex: 15h00) est désormais correctement enregistrée en base sans décalage. 2025-11-12 12:27:03 -05:00
Manus Sandbox
f266e8dde8 Checkpoint: Amélioration de la gestion d'erreurs pour la modification des séquences : ajout de validation dans parseLocalDateTime, protection contre les valeurs nulles dans handleEdit avec fonction safeFormatDate, remplacement de invalidate() par refetch() pour forcer le rafraîchissement immédiat, et ajout de logs détaillés côté serveur pour faciliter le débogage. 2025-11-12 12:01:14 -05:00
Manus Sandbox
7135a9d2c6 Checkpoint: Correction du décalage d'une heure entre la saisie et l'affichage des dates de séquences. Création d'un module dateUtils.ts avec des fonctions parseLocalDateTime et formatToLocalDateTime pour gérer correctement les conversions entre heure locale et UTC. Toutes les procédures de création et mise à jour de séquences utilisent maintenant ces fonctions pour préserver l'heure locale saisie par l'utilisateur. 2025-11-12 11:35:01 -05:00
Manus Sandbox
d198d4ce3f Checkpoint: Correction du calcul du nombre d'inscrits sur la page d'inscription publique - le frontend utilisait uniquement capaciteMax au lieu de calculer capaciteMax - nbInscrits. Ajout de logs de débogage côté client et serveur pour investiguer le problème de modification des heures des séquences qui persiste malgré les corrections précédentes. 2025-11-12 10:44:41 -05:00
Manus Sandbox
12bfc657e5 Checkpoint: Correction du bug de modification des horaires des séquences. Le problème venait du fait que les champs de la procédure update étaient marqués comme optionnels, ce qui empêchait la mise à jour correcte des dates. Tous les champs sont maintenant obligatoires et les dates sont systématiquement supprimées puis recréées lors de la modification pour garantir la cohérence des données. 2025-11-12 10:25:13 -05:00
Manus Sandbox
b60250e265 Checkpoint: Correction de l'erreur React "Cannot update a component while rendering" dans Home.tsx. L'appel de setLocation pour la redirection automatique des admins a été déplacé dans un useEffect pour respecter les règles de React et éviter les mises à jour de composants pendant le rendu. 2025-11-12 10:10:31 -05:00
Manus Sandbox
5c9b6637c4 Checkpoint: Refonte majeure : transformation du système de sessions en séquences avec support de jusqu'à 4 dates par séquence. L'inscription à une séquence inscrit automatiquement l'apprenant à toutes les dates. Mise à jour complète du backend (schéma DB, procédures tRPC, emails, exports) et du frontend (AdminSequences, AdminSequenceInscrits, Inscription, Admin). Toutes les fonctionnalités existantes (filtres, statistiques, exports PDF/Excel, emails automatiques) sont préservées et adaptées au nouveau modèle. 2025-11-12 09:57:58 -05:00
Manus Sandbox
ca9b1c3d37 Checkpoint: Implémentation des trois améliorations demandées : ajout de filtres par fonction sur les pages apprenants et inscrits, création d'un graphique circulaire de répartition par fonction sur le tableau de bord avec recharts, et personnalisation des templates d'emails (confirmation, teaser, rappel J-7) incluant la fonction de l'apprenant dans la salutation. 2025-11-12 09:35:58 -05:00
Manus Sandbox
9d591b64ba Checkpoint: Ajout du champ "Fonction" (Directeur, Chef de service, Autre) dans la fiche apprenant : mise à jour du schéma de base de données, ajout dans les formulaires d'inscription et de gestion des apprenants, affichage dans le tableau des apprenants, et intégration dans tous les exports (Excel, PDF, feuille de présence). 2025-11-12 09:30:30 -05:00
Manus Sandbox
2e75838bed Checkpoint: Ajout de filtres complets sur la page de gestion des inscrits : recherche par nom/prénom/email, filtre par statut d'inscription (confirmée/liste d'attente/annulée), filtre par code établissement, tri par date d'inscription ou nom alphabétique, avec compteur de résultats filtrés. 2025-11-12 09:21:21 -05:00
Manus Sandbox
8a77f62723 Checkpoint: Ajout d'un système complet de filtres et de recherche : filtres par date, lieu, statut et capacité pour les sessions ; recherche par nom/description pour les formations ; recherche multi-critères pour les apprenants. Compteurs de résultats inclus. 2025-11-12 09:11:45 -05:00
Manus Sandbox
2c5bc825af Checkpoint: Corrections : mise à jour automatique de la liste des apprenants après inscription + envoi de notifications par email via le système Manus lors des inscriptions 2025-11-12 08:58:29 -05:00
Manus Sandbox
0fc35596d9 Checkpoint: Application complète de gestion des formations Manager Itinova avec toutes les fonctionnalités : gestion des formations/sessions/apprenants, système d'inscription avec validations, génération d'invitations Outlook, emails automatiques, exports PDF/Excel, et documentation complète. 2025-11-12 08:38:33 -05:00