Le tableau de bord organisateur
Ce que fait le back-office de l'organisateur : les pages de la barre latérale et qui les voit, la vue d'ensemble, les rapports et exports CSV, les paramètres de l'espace de travail, les notifications et la connexion.
Pour le pack Full Stack
Pages
Chaque page existe en anglais sous /en et en arabe sous /ar. Le tableau de bord s'ouvre sur /en/dashboard, après la connexion sur /en/auth/login. Chaque élément de la barre latérale ne s'affiche que si le rôle du membre connecté détient sa permission.
| Élément de la barre latérale | Chemin | Permission | Rôle |
|---|---|---|---|
| Vue d'ensemble | /en/dashboard | overview.view | Les ventes de la période choisie, l'entrée en direct et les prochains événements. |
| Événements | /en/dashboard/events | events.view | Les onglets Tous, Publiés, Brouillons et Terminés, la recherche et les filtres, l'éditeur d'événement et les participants de chaque événement. |
| Commandes | /en/dashboard/orders | orders.view | Les commandes avec totaux par statut et filtres, le détail de chaque commande, les remboursements et l'export CSV. |
| Contrôle des billets | /en/dashboard/check-in | checkin.scan | L'entrée : caméra ou code saisi, scans récents et alertes. |
| Lieux | /en/dashboard/venues | venues.view | Les lieux sur une carte, l'éditeur de lieu et l'éditeur de plan de salle. |
| Rapports | /en/dashboard/reports | reports.view | Les ventes payées par période, événement, fournisseur de paiement et catégorie, avec export CSV. |
| Équipe | /en/dashboard/team | admins.view | Les membres de l'espace de travail, les invitations, les rôles et les sessions de contrôle des billets. |
| Assistant IA | /en/dashboard/ai-assistant | ai_chat.use | Répond aux questions sur les ventes et les entrées, dessine des graphiques et rédige des rappels à valider. |
| Studio de lieux | /en/dashboard/studio | studio.use | Transforme la photo d'un lieu vide en concept d'événement IA. |
| Paramètres | /en/dashboard/settings | settings.view | Général, Paiements, Équipe et Notifications pour l'espace de travail ; Profil et Sécurité pour chaque membre. |
Les rôles s'ouvrent depuis la page Équipe, et les Demandes (/en/dashboard/leads, leads.view) et les Notifications depuis le menu du compte, qui contient aussi le Profil du membre et « View website » (NEXT_PUBLIC_SITE_URL). Une palette de recherche dans la barre du haut trouve les pages. Une page ouverte par son adresse sans la permission indique qu'elle ne fait pas partie du rôle du membre, le même refus que celui de l'API. Chaque membre arrive sur la première page que son rôle ouvre : la vue d'ensemble pour la plupart, l'entrée pour le rôle Contrôle des billets.
La vue d'ensemble
- Le sous-total des billets, les billets payés, les contrôles et les frais pour les 7 derniers jours, les 30 derniers jours, ce mois-ci ou depuis toujours, avec un graphique des ventes de billets qui a un point pour chaque jour de la période.
- L'entrée en direct : la session aux portes ouvertes, combien de personnes sont entrées, combien sont attendues et combien restent, avec un lien vers son contrôle des billets.
- Les cinq prochains événements publiés avec les ventes par rapport à la capacité et les contrôles, et le nombre de contrôles qui demandent de l'attention (alertes d'entrée pas encore vues, plus les commandes en attente de vérification).
- Les jours sont ceux de l'espace de travail, dans son fuseau horaire. Seules les commandes payées comptent, le jour de leur paiement ; les commandes gratuites comptent comme des commandes et n'ajoutent rien à aucun montant.
Rapports et exports
Rapports affiche le sous-total des billets, les frais, ce qui a été encaissé et ce qui a été remboursé pour une période (les mêmes quatre, ou deux dates de votre choix) et un événement ou tous, puis les ventes par événement avec la part de chacun, par fournisseur de paiement (Stripe, PayPal, paiement de test et gratuit) et par catégorie.
- Export CSV dans Rapports et dans Commandes met un fichier en file d'attente en arrière-plan et propose Download the file dès qu'il est prêt. Il contient les commandes que montrent les filtres actuels, avec référence, date, statut, événement, client, e-mail, billets, sous-total, frais, total, remboursé, devise et fournisseur.
- Le lien de téléchargement fait office de permission, fonctionne une heure et seulement pour le membre qui l'a demandé. Les fichiers contiennent les noms et adresses e-mail des acheteurs et sont conservés dans
EXPORT_DIR(./exportssans Docker, le volume de données avec Docker). - L'export exige
reports.export. Les rôles Propriétaire, Gestionnaire et Finance des données d'exemple la détiennent.
Paramètres
Les paramètres ont six onglets. Les quatre onglets de l'espace de travail exigent settings.view pour être vus et settings.edit pour enregistrer ; Profil et Sécurité appartiennent au membre connecté, quel que soit son rôle.
| Onglet | Ce qu'elle définit |
|---|---|
| Général | Le nom de l'espace de travail, l'e-mail de support, la devise (USD, EUR, GBP, SAR ou AED), le fuseau horaire et les frais de réservation en pourcentage (0 à 20, jusqu'à deux décimales ; 3 dans les données d'exemple), que le participant paie au paiement. La devise se verrouille dès que le premier billet est payé. La durée de réservation des places et la limite par commande ne sont pas ici : ce sont des colonnes de l'espace de travail alimentées par le settings.json de l'API. |
| Paiements | Indique si Stripe, PayPal et le paiement de test sont connectés, en mode test ou non configurés, avec les variables à définir dans le .env de l'API et l'adresse du webhook de chaque fournisseur. Les clés ne sont jamais saisies ni affichées ici. |
| Équipe | Ce que chaque rôle peut faire avec les événements, les remboursements, les scans et les rapports, avec des liens vers l'équipe et les rôles. |
| Notifications | Trois réglages pour la cloche de notifications de l'équipe : commandes payées, demandes de remboursement et alertes de contrôle. Ils ne changent que ce que l'équipe est informée : les e-mails de billets, de reçus et de remboursements aux acheteurs partent toujours. |
| Profil | La photo, le nom, l'e-mail et le téléphone du membre. |
| Sécurité | Le mot de passe du membre. |
Celui qui a enregistré les paramètres après le chargement de la page l'emporte : la page affiche alors sa version et demande de vérifier et d'enregistrer de nouveau. Le logo de la marque n'est pas téléversé ici : il vient des fichiers de marque du projet.
Notifications
| Notification | Qui la reçoit |
|---|---|
| Une commande est payée | Chaque membre qui peut voir les commandes, tant que le réglage des commandes payées est activé |
| Un remboursement est demandé | Chaque autre membre qui peut rembourser, tant que le réglage des demandes de remboursement est activé |
| Un billet est refusé à l'entrée (présenté deux fois, au mauvais événement, ou annulé) | Chaque membre qui peut publier des événements, tant que le réglage des alertes de contrôle est activé |
| Un message arrive par le formulaire de contact du site | Chaque membre qui peut lire les demandes |
| Un concept du studio de lieux se termine ou échoue | Le membre qui l'a lancé |
- Elles arrivent en direct, et la cloche liste les 30 plus récentes. Chacune est conservée 30 jours.
- La connexion en direct utilise
NEXT_PUBLIC_WEBSOCKET_BASE_URL, l'adresse de l'API sans/api, et leFRONTEND_URLde l'API doit être l'adresse du tableau de bord. Un rechargement affiche toujours les lignes les plus récentes ; seules les mises à jour en direct dépendent de la connexion.
Connexion
- Les membres de l'équipe se connectent ici ; les participants se connectent sur le site, jamais ici. Les comptes d'équipe d'exemple sont listés dans le guide d'installation.
- Remember me garde la session après la fermeture du navigateur, jusqu'à l'expiration du jeton de l'API (sept jours par défaut,
JWT_EXPIRATION) ; décochez-le et la session se termine avec le navigateur ou l'onglet. - Un mauvais e-mail et un mauvais mot de passe donnent le même message, si bien que le formulaire ne dit jamais à personne quelles adresses ont un compte. Après dix tentatives échouées en quinze minutes depuis une même adresse, l'API refuse pendant un moment.
- Quand l'API refuse une session (un jeton expiré ou révoqué), le tableau de bord vous déconnecte et ouvre la page de connexion. Un changement des rôles d'un membre l'atteint pendant qu'il est connecté.
Comment le code du tableau de bord s'articule
Inclus avec votre achat. Connectez-vous pour le lire, ou ouvrez-le dans votre téléchargement.
La structure du code, et les recettes pour ajouter une page, une traduction et un service API.