gestion supp user admin

This commit is contained in:
2026-05-11 22:55:30 +02:00
parent 2cab2ddd1d
commit 01cf4dd5a1
17 changed files with 728 additions and 8 deletions

View File

@@ -0,0 +1,38 @@
# Guide de Gestion des Utilisateurs (Suspension & Suppression)
Ce document détaille les procédures de sanctions et de gestion des comptes sur Afrohub.
## 1. Suspension de Compte
La suspension est une mesure temporaire permettant de bloquer l'accès d'un utilisateur sans supprimer ses données.
### 1.1. Suspension Entrepreneur
- **Compte Suspendu** : L'entrepreneur ne peut plus se connecter. Son shop est automatiquement masqué.
- **Shop Masqué (Uniquement)** : L'entrepreneur peut se connecter, mais sa boutique n'est plus visible dans l'annuaire.
### 1.2. Suspension Visiteur
- L'accès à la messagerie et aux fonctionnalités interactives (avis, favoris) est bloqué.
## 2. Suppression de Compte (Soft Delete & Grace Period)
La suppression suit un cycle de vie sécurisé pour permettre la réactivation en cas d'erreur ou de changement d'avis.
### 2.1. Déclenchement par l'Admin
L'admin choisit :
1. **Le Motif** : Violation des CGU, Inactivité, Demande de l'utilisateur, etc.
2. **Le Délai** :
- **Immédiat** : Le compte est supprimé à la prochaine exécution du script de nettoyage.
- **7, 15, 30 jours** : Le compte est désactivé mais conservé en base pendant cette durée.
### 2.2. État "Suppression en cours"
- L'utilisateur ne peut plus se connecter.
- Il reçoit un email contenant un lien de réactivation.
- Dans l'admin, la ligne utilisateur est affichée en rouge avec le statut "Suppression en cours".
### 2.3. Réactivation
- L'utilisateur peut cliquer sur le lien dans son mail.
- Il doit fournir une justification pour la réactivation.
- Une fois validé, le compte redevient "Actif" et le délai de suppression est annulé.
## 3. Suppression Définitive (Hard Delete)
- S'exécute automatiquement via la tâche Cron.
- Supprime toutes les données associées en cascade (Boutique, Messages, Avis, Favoris).
- **Action irréversible**.

View File

@@ -0,0 +1,35 @@
# Guide de Maintenance et Déploiement (Admin)
## 1. Architecture Monorepo
Le projet utilise **npm workspaces**.
- Racine : Dépendances partagées, Prisma Schema, Dossier `/app` (Front).
- `/admin` : Application Next.js dédiée à l'administration.
## 2. Commandes Utiles
À exécuter depuis la racine du projet :
- `npm run dev:admin` : Lancer l'admin en développement.
- `npm run build:admin` : Builder l'admin pour la production.
- `npx prisma db push` : Synchroniser le schéma Prisma avec la base de données.
- `npx prisma generate` : Régénérer le client Prisma.
## 3. Déploiement sur Dokploy
### Configuration de l'application Admin :
- **Build Command** : `npm run build:admin`
- **Start Command** : `npm run start:admin`
- **Install Command** : `npm install --legacy-peer-deps` (à la racine)
### Variables d'environnement critiques :
- `DATABASE_URL` : Connexion PostgreSQL.
- `CRON_SECRET` : Clé pour sécuriser le nettoyage des comptes.
- `SMTP_HOST`, `SMTP_USER`, `SMTP_PASS` : Configuration pour l'envoi d'emails.
- `NEXT_PUBLIC_APP_URL` : URL du site front-end (pour les liens de réactivation).
## 4. Configuration des Tâches Cron
Pour automatiser la suppression définitive des comptes :
1. Dans Dokploy, créez une tâche Cron pour l'application Admin.
2. Planification : `0 0 * * *` (tous les jours à minuit).
3. Commande : `curl -X GET "https://votre-admin.com/api/cron/cleanup-users?key=VOTRE_SECRET"`
## 5. Gestion de la Base de Données
Le schéma Prisma se trouve à la racine : `/prisma/schema.prisma`.
Toute modification du schéma doit être suivie d'un `npx prisma db push` et d'un redémarrage des serveurs pour que le client Prisma soit mis à jour.

View File

@@ -0,0 +1,44 @@
# Spécifications Fonctionnelles - Panel Administration
## 1. Vue d'ensemble
Le panel d'administration permet de piloter l'ensemble de la plateforme Afrohub, de modérer les contenus et de gérer la configuration globale.
## 2. Tableau de Bord (Dashboard)
- Statistiques clés : Nombre d'utilisateurs, entreprises, avis en attente.
- Métriques d'audience (via le menu Metrics).
- Visualisation géographique des entreprises.
## 3. Gestion des Utilisateurs
### 3.1. Entrepreneurs
- Validation des boutiques (Certification).
- Modification des forfaits (Starter, Booster, Empire).
- Gestion de la mise en avant (Slides Home).
- Suspension de boutique ou de compte complet.
- Suppression de compte avec choix du motif et du délai (0, 7, 15, 30 jours).
### 3.2. Visiteurs
- Consultation des informations de contact.
- Vérification manuelle de l'email.
- Suspension et suppression de compte.
## 4. Modération des Contenus
- **Avis** : Approbation ou rejet des avis laissés par les utilisateurs.
- **Signalements** : Traitement des messages signalés dans la messagerie.
- **Commentaires** : Gestion des commentaires sur les articles.
## 5. Gestion éditoriale
- **Actualités** : Création, édition et suppression d'articles.
- **Interviews** : Gestion des entretiens avec les entrepreneurs.
- **Événements** : Publication et gestion de l'agenda.
- **Slides** : Configuration du carrousel de la page d'accueil (Boutiques ou Custom).
## 6. Configuration du Site
- Informations de contact (Email, Téléphone, Adresse).
- Liens réseaux sociaux.
- Gestion des documents légaux (CGU, CGV, Confidentialité).
- Personnalisation des templates d'emails (Vérification, Mot de passe, Suppression, Réactivation).
- Gestion des taxonomies (Catégories d'entreprises, Pays).
## 7. Automatisation (Cron)
- Nettoyage automatique des comptes marqués pour suppression après expiration du délai.
- URL sécurisée : `/api/cron/cleanup-users?key=SECRET`.