MIGRATION VERS GITEA

This commit is contained in:
mathis committed 2026-08-25 01:23:13 +02:00
commit 5f9d991c15
333 files changed
+108514

No files matched your search

+131
View File
@@ -0,0 +1,131 @@
# Gestion des Utilisateurs - Documentation
## Vue d'ensemble
Le système de gestion des utilisateurs permet de créer, modifier et supprimer des utilisateurs qui auront accès à l'application admin Ferrovia. Cette fonctionnalité est accessible depuis la page **Paramètres** via l'onglet **Utilisateurs**.
## Accès
1. Connectez-vous à l'application admin
2. Accédez à la page **Paramètres** via le menu de navigation
3. Cliquez sur l'onglet **Utilisateurs**
## Fonctionnalités
### 1. Liste des utilisateurs
La liste des utilisateurs affiche :
- **Nom complet** : Nom et prénom de l'utilisateur
- **Email** : Adresse email de l'utilisateur
- **Rôle** : Badge coloré indiquant le rôle (Administrateur, Gestionnaire, Utilisateur)
- **Statut** : Badge indiquant si l'utilisateur est actif ou inactif
- **Actions** : Boutons pour modifier ou supprimer l'utilisateur
#### Rôles disponibles
- **Administrateur** (rouge) : Accès complet à toutes les fonctionnalités
- **Gestionnaire** (bleu) : Accès aux fonctionnalités de gestion
- **Utilisateur** (gris) : Accès limité aux fonctionnalités de base
### 2. Créer un utilisateur
1. Cliquez sur le bouton **+ Ajouter un utilisateur**
2. Remplissez le formulaire :
- **Email*** : Adresse email de l'utilisateur (requis, unique)
- **Nom*** : Nom de famille (requis)
- **Prénom*** : Prénom (requis)
- **Rôle** : Sélectionnez le rôle approprié (par défaut : Utilisateur)
- **Utilisateur actif** : Cochez pour activer immédiatement l'utilisateur
3. Cliquez sur **Créer**
### 3. Modifier un utilisateur
1. Dans la liste, cliquez sur le bouton **Modifier** de l'utilisateur
2. Modifiez les champs souhaités dans le formulaire
3. Cliquez sur **Mettre à jour**
### 4. Supprimer un utilisateur
1. Dans la liste, cliquez sur le bouton **Supprimer** de l'utilisateur
2. Confirmez la suppression dans la boîte de dialogue
> **⚠️ Attention** : La suppression d'un utilisateur est définitive et ne peut pas être annulée.
## Validation
Le système effectue les validations suivantes :
- L'email doit être valide et unique dans le système
- Le nom et le prénom sont obligatoires
- L'email est automatiquement converti en minuscules
- Les espaces en début et fin de champs sont automatiquement supprimés
## Stockage des données
Toutes les données des utilisateurs sont stockées dans la table `utilisateurs` de la base de données Supabase.
### Structure de la table
```sql
CREATE TABLE utilisateurs (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
email VARCHAR(255) NOT NULL UNIQUE,
nom VARCHAR(100) NOT NULL,
prenom VARCHAR(100) NOT NULL,
role VARCHAR(50) NOT NULL DEFAULT 'utilisateur',
actif BOOLEAN NOT NULL DEFAULT true,
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);
```
## Installation de la table
Pour créer la table dans votre base de données Supabase :
1. Accédez à votre dashboard Supabase
2. Allez dans **SQL Editor**
3. Exécutez le script `supabase_utilisateurs.sql` fourni à la racine du projet
4. Vérifiez que la table a été créée avec succès
## API
Les fonctions API sont disponibles dans `src/api/utilisateurs/index.js` :
- `getAllUtilisateurs()` : Récupère tous les utilisateurs
- `createUtilisateur(userData)` : Crée un nouvel utilisateur
- `updateUtilisateur(id, userData)` : Met à jour un utilisateur existant
- `deleteUtilisateur(id)` : Supprime un utilisateur
Toutes les fonctions retournent un objet `{ data, error }` :
- En cas de succès : `{ data: {...}, error: null }`
- En cas d'erreur : `{ data: null, error: {...} }`
## Bonnes pratiques
1. **Emails uniques** : Chaque utilisateur doit avoir une adresse email unique
2. **Rôles appropriés** : Assignez les rôles en fonction des responsabilités réelles
3. **Désactivation vs Suppression** : Préférez désactiver un utilisateur plutôt que le supprimer pour conserver l'historique
4. **Vérification régulière** : Vérifiez régulièrement la liste des utilisateurs actifs
## Dépannage
### L'onglet Utilisateurs n'apparaît pas
- Vérifiez que vous avez bien les dernières modifications du code
- Assurez-vous que la page Paramètres est correctement chargée
### Erreur lors de la création d'un utilisateur
- Vérifiez que l'email n'est pas déjà utilisé
- Assurez-vous que tous les champs obligatoires sont remplis
- Vérifiez la connexion à Supabase
### La table utilisateurs n'existe pas
- Exécutez le script SQL `supabase_utilisateurs.sql` dans votre base de données Supabase
- Vérifiez les permissions de votre clé API Supabase
## Support
Pour toute question ou problème, consultez :
- La documentation de Supabase : https://supabase.com/docs
- Les logs de la console du navigateur pour plus de détails sur les erreurs