This commit is contained in:
Manus Sandbox
2025-11-19 08:36:23 -05:00
parent 1313a45879
commit 5085159cf7
75 changed files with 127 additions and 15617 deletions

View File

@@ -1,285 +0,0 @@
# Documentation - Gestion des Formations Manager Itinova
## Vue d'ensemble
L'application **Gestion des Formations Manager Itinova** est une solution complète développée pour gérer l'organisation interne des formations destinées à environ 150 apprenants entre février et octobre 2026, puis 3 sessions par an. Elle permet à la DRH (assistante formation, responsable Développement RH) et à la Directrice Qualité et Transformation de gérer efficacement les inscriptions, les sessions, et les communications automatisées.
## Fonctionnalités principales
### 1. Gestion des formations
L'application permet de créer et gérer plusieurs formations en parallèle. Chaque formation dispose d'un lien unique d'inscription qui peut être partagé avec les apprenants.
**Caractéristiques :**
- Création de formations avec nom, description et lien unique personnalisé
- Activation/désactivation des formations
- Génération automatique de liens d'inscription distincts pour chaque formation
### 2. Gestion des sessions
Les sessions sont les instances concrètes d'une formation avec des dates, un lieu et une capacité définis.
**Caractéristiques :**
- Création de sessions avec dates de début et fin
- Définition du lieu de formation
- Capacité maximale fixée à 12 participants par session
- Date de blocage automatique à J-15 avant le début de la session
- Statuts de session : ouverte, bloquée, terminée
### 3. Gestion des apprenants
L'application maintient une base de données des apprenants avec leurs informations essentielles.
**Informations collectées :**
- Nom et prénom
- Email professionnel
- Code établissement
### 4. Système d'inscription
Les apprenants peuvent s'inscrire via un lien unique propre à chaque formation. Le système applique automatiquement toutes les contraintes définies.
**Validations automatiques :**
- Vérification de la capacité maximale (12 participants)
- Prévention des doubles inscriptions
- Blocage des inscriptions et désinscriptions à J-15
- Gestion automatique de la liste d'attente si la session est complète
### 5. Invitations et communications automatiques
Dès qu'un apprenant s'inscrit, le système génère et envoie automatiquement une invitation Outlook avec tous les détails de la formation.
**Fonctionnalités d'envoi :**
- **Email de confirmation** : envoyé immédiatement après l'inscription avec invitation Outlook (.ics) en pièce jointe
- **Invitation Outlook** : fichier .ics avec statut "occupé" incluant le lieu de formation
- **Email teaser** : peut être envoyé manuellement par les administrateurs à tous les inscrits d'une session
- **Email de rappel J-7** : peut être envoyé manuellement 7 jours avant la formation
### 6. Exports et feuilles de présence
Les administrateurs peuvent exporter les listes d'inscrits dans différents formats pour faciliter la gestion administrative.
**Formats disponibles :**
- **Export Excel** : liste complète des inscrits avec toutes leurs informations
- **Export PDF** : liste des inscrits au format PDF
- **Feuille de présence PDF** : document prêt à imprimer avec nom, prénom, code établissement et colonne signature
## Guide d'utilisation
### Pour les administrateurs
#### Connexion
1. Accédez à l'application via l'URL fournie
2. Cliquez sur "Se connecter"
3. Utilisez vos identifiants Manus OAuth
4. Vous serez redirigé vers le tableau de bord administrateur
#### Créer une formation
1. Dans le menu latéral, cliquez sur **Formations**
2. Cliquez sur le bouton **Nouvelle formation**
3. Remplissez les informations :
- Nom de la formation (ex: "Manager Itinova")
- Description (optionnelle)
- Lien unique (ex: "manager-itinova-2026")
- Cochez "Formation active" pour la rendre disponible
4. Cliquez sur **Créer**
5. Le lien d'inscription sera généré automatiquement : `/inscription/[votre-lien-unique]`
#### Créer une session
1. Dans le menu latéral, cliquez sur **Sessions**
2. Cliquez sur le bouton **Nouvelle session**
3. Remplissez les informations :
- Sélectionnez la formation associée
- Nom de la session (ex: "Session 1 - Février 2026")
- Date et heure de début
- Date et heure de fin
- Lieu de la formation (sera inclus dans l'invitation Outlook)
- Capacité maximale (par défaut 12)
- Date de blocage (J-15 avant le début)
- Statut (ouverte, bloquée, terminée)
4. Cliquez sur **Créer**
#### Gérer les inscriptions
1. Dans le menu **Sessions**, cliquez sur l'icône **Utilisateurs** à côté d'une session
2. Vous verrez :
- Le nombre de places confirmées sur la capacité totale
- Le nombre de personnes en liste d'attente
- La liste complète des inscrits avec leurs informations
3. Actions disponibles :
- Modifier le statut d'une inscription (confirmée, liste d'attente, annulée)
- Exporter la liste en Excel ou PDF
- Générer une feuille de présence
- Envoyer des emails groupés (teaser ou rappel J-7)
#### Envoyer des emails groupés
1. Accédez à la page des inscrits d'une session
2. Cliquez sur **Envoyer teaser** pour envoyer un email d'introduction à tous les inscrits confirmés
3. Cliquez sur **Envoyer rappel J-7** pour envoyer un rappel 7 jours avant la formation
4. Un message de confirmation indiquera le nombre d'emails envoyés avec succès
#### Exporter les données
1. Accédez à la page des inscrits d'une session
2. Cliquez sur :
- **Exporter Excel** : télécharge un fichier .xlsx avec toutes les informations
- **Exporter PDF** : télécharge un fichier PDF avec la liste des inscrits
- **Feuille de présence** : télécharge un PDF prêt à imprimer pour la signature des participants
### Pour les apprenants
#### S'inscrire à une formation
1. Cliquez sur le lien d'inscription fourni par la DRH (ex: `https://[domaine]/inscription/manager-itinova-2026`)
2. Consultez les sessions disponibles avec :
- Les dates et horaires
- Le lieu de formation
- Le nombre de places disponibles
- Le statut (disponible, complète, fermée)
3. Sélectionnez la session souhaitée en cliquant dessus
4. Remplissez vos informations :
- Nom
- Prénom
- Email professionnel
- Code établissement
5. Cliquez sur **Confirmer mon inscription**
6. Vous recevrez immédiatement :
- Un email de confirmation
- Une invitation Outlook (.ics) à ajouter à votre calendrier
#### Que se passe-t-il après l'inscription ?
- **Si votre inscription est confirmée** : vous recevrez une invitation Outlook qui bloquera automatiquement votre agenda avec le statut "occupé"
- **Si la session est complète** : vous serez placé en liste d'attente et contacté si une place se libère
- **15 jours avant la formation** : les inscriptions et désinscriptions seront bloquées
- **7 jours avant la formation** : vous recevrez un email de rappel avec tous les détails pratiques
## Gestion des rôles et permissions
L'application utilise un système de rôles pour contrôler l'accès aux fonctionnalités :
### Rôle Administrateur
Accordé aux membres de la DRH (assistante formation, responsable Développement RH, Directrice Qualité et Transformation, stagiaire).
**Permissions :**
- Accès complet au tableau de bord administrateur
- Création, modification et suppression de formations
- Création, modification et suppression de sessions
- Gestion des apprenants
- Consultation et modification des inscriptions
- Envoi d'emails groupés
- Export des données
### Rôle Utilisateur
Les apprenants qui s'inscrivent via le lien public.
**Permissions :**
- Accès au formulaire d'inscription public
- Consultation des sessions disponibles
- Inscription à une session (dans les limites définies)
## Contraintes et règles métier
### Capacité des sessions
Chaque session est limitée à **12 participants maximum**. Au-delà, les apprenants sont automatiquement placés en liste d'attente.
### Blocage à J-15
Les inscriptions et désinscriptions sont automatiquement bloquées **15 jours avant le début de la session**. Cette règle garantit la stabilité des groupes et évite les désistements de dernière minute.
### Prévention des doubles inscriptions
Le système empêche un apprenant de s'inscrire plusieurs fois à la même session. Si l'apprenant existe déjà dans la base de données (même email), ses informations sont réutilisées.
### Statuts des inscriptions
- **Confirmée** : l'apprenant a une place garantie dans la session
- **Liste d'attente** : la session est complète, l'apprenant sera contacté si une place se libère
- **Annulée** : l'inscription a été annulée par l'apprenant ou l'administrateur
## Architecture technique
### Technologies utilisées
L'application est construite avec une architecture moderne full-stack :
**Frontend :**
- React 19 avec TypeScript
- Tailwind CSS 4 pour le design
- tRPC pour la communication type-safe avec le backend
- Wouter pour le routage
- shadcn/ui pour les composants d'interface
**Backend :**
- Node.js avec Express
- tRPC pour les API type-safe
- Drizzle ORM pour l'accès à la base de données
- MySQL/TiDB comme base de données
**Fonctionnalités :**
- Génération de fichiers ICS (iCalendar) pour Outlook
- Export Excel avec xlsx
- Export PDF avec jsPDF
- Système d'emails automatisés
### Base de données
Le schéma de base de données comprend 5 tables principales :
1. **users** : utilisateurs authentifiés (administrateurs)
2. **formations** : catalogue des formations
3. **sessions** : instances de formations avec dates et lieux
4. **apprenants** : base de données des participants
5. **inscriptions** : relation entre apprenants et sessions avec statuts
## Confidentialité et sécurité
L'application respecte les principes de confidentialité des données :
- **Authentification sécurisée** : via Manus OAuth pour les administrateurs
- **Contrôle d'accès** : seuls les administrateurs peuvent accéder aux données sensibles
- **Protection des données** : les informations personnelles des apprenants sont stockées de manière sécurisée
- **Emails professionnels** : seuls les emails professionnels sont collectés
## Support et maintenance
### Contact
Pour toute question ou problème technique, contactez le service RH ou l'équipe de développement.
### Évolutions futures
L'application est conçue pour être évolutive. Des fonctionnalités supplémentaires peuvent être ajoutées selon les besoins :
- Intégration avec un vrai service SMTP pour l'envoi d'emails
- Tableau de bord analytique avec statistiques de participation
- Système de notation et d'évaluation post-formation
- Gestion des formateurs et de leurs disponibilités
- Notifications push pour les rappels
## Notes importantes
### Emails simulés
Dans la version actuelle, les emails sont **simulés** et affichés dans les logs du serveur. Pour une utilisation en production, il est nécessaire d'intégrer un service SMTP réel (comme SendGrid, Mailgun, ou un serveur SMTP d'entreprise).
### Personnalisation
Les templates d'emails peuvent être personnalisés dans le fichier `server/emailService.ts` pour correspondre à la charte graphique de l'entreprise.
### Sauvegarde des données
Il est recommandé de mettre en place une stratégie de sauvegarde régulière de la base de données pour prévenir toute perte de données.
---
**Version de la documentation :** 1.0
**Date de dernière mise à jour :** 2026-01-17
**Auteur :** Manus AI