🎫 GUIDE COMPLET - SYSTÈME DE TICKETS
📖 Vue d'ensemble
Le système de tickets permet de gérer les demandes de support client de manière professionnelle et organisée. Il est accessible dans le panneau admin.
🎯 Objectif
Permettre aux administrateurs de :
- Créer et gérer des tickets de support
- Suivre l'état d'avancement des demandes
- Assigner les tickets aux membres de l'équipe
- Hiérarchiser selon la priorité
- Historiser les échanges avec les clients
---
📊 Structure de la Base de Données
Table support_tickets
```sql
CREATE TABLE support_tickets (
id INT PRIMARY KEY,
ticket_number VARCHAR(50) UNIQUE, -- Exemple: TICK-2025-0123
client_id INT, -- ID du client (optionnel)
client_name VARCHAR(100), -- Nom du client
client_email VARCHAR(100), -- Email du client
subject VARCHAR(255), -- Sujet du ticket
description TEXT, -- Description détaillée
priority ENUM('low','medium','high','urgent'), -- Priorité
status ENUM('new','in_progress','waiting','resolved','closed'), -- Statut
assigned_to VARCHAR(100), -- Assigné à (utilisateur)
tags VARCHAR(255), -- Tags/étiquettes
created_at TIMESTAMP, -- Date de création
updated_at TIMESTAMP, -- Date de modification
resolved_at TIMESTAMP -- Date de résolution
);
```
Table ticket_comments
```sql
CREATE TABLE ticket_comments (
id INT PRIMARY KEY,
ticket_id INT, -- ID du ticket parent
user_name VARCHAR(100), -- Auteur du commentaire
comment TEXT, -- Contenu du commentaire
is_internal TINYINT(1), -- 1 = interne, 0 = visible client
created_at TIMESTAMP -- Date du commentaire
);
```
---
🎨 Statuts des Tickets
Le système utilise 5 statuts principaux :
1. 🆕 new (Nouveau)
- Ticket créé mais pas encore pris en charge
- Couleur : Bleu (#3b82f6)
- Action : Attendre qu'un membre de l'équipe le prenne en charge
2. ⏳ in_progress (En cours)
- Ticket pris en charge et en cours de traitement
- Couleur : Orange (#f59e0b)
- Action : Traiter la demande du client
3. ⏸️ waiting (En attente)
- Ticket en attente d'une réponse du client
- Couleur : Violet (#8b5cf6)
- Action : Attendre la réponse du client
4. ✅ resolved (Résolu)
- Ticket résolu, en attente de confirmation
- Couleur : Vert (#10b981)
- Action : Attendre que le client confirme la résolution
5. 🔒 closed (Fermé)
- Ticket définitivement fermé
- Couleur : Gris (#6b7280)
- Action : Archive, plus aucune action à faire
---
📈 Niveaux de Priorité
🔴 urgent (Urgent)
- Temps de réponse : Immédiat (< 1h)
- Exemples : Problème critique, système down, sécurité
- Couleur : Rouge (#ef4444)
🟠 high (Haute)
- Temps de réponse : < 4h
- Exemples : Problème majeur, blocage
- Couleur : Orange (#f97316)
🟡 medium (Moyenne)
- Temps de réponse : < 24h
- Exemples : Problème standard
- Couleur : Jaune (#f59e0b)
- Priorité par défaut : ✅
⚪ low (Basse)
- Temps de réponse : < 72h
- Exemples : Demande d'information, suggestion
- Couleur : Gris (#6b7280)
---
🎯 Fonctionnalités Disponibles
Dans le Panneau Admin (pages/admin/tickets.php)
1. 📊 Statistiques en Temps Réel
Affichage automatique :
- Total de tickets
- Nouveaux tickets
- Tickets en cours
- Tickets résolus
2. 🔍 Recherche et Filtres
- Recherche : Par numéro, sujet, client
- Filtre par statut : new, in_progress, waiting, resolved, closed
- Filtre par priorité : urgent, high, medium, low
3. ➕ Création de Tickets
Modal avec formulaire :
- Sélection du client (ou nouveau)
- Nom et email du client
- Sujet (obligatoire)
- Description détaillée (obligatoire)
- Priorité
Génération automatique du numéro :
```
TICK-2025-0123
```
Format : TICK- + année + - + numéro séquentiel
4. 📝 Modification de Tickets
Accès via le bouton ✏️ Modifier
- Changement de statut
- Modification de la priorité
- Assignation à un utilisateur
- Modification du sujet/description
5. 👁️ Visualisation Détaillée
Accès via le bouton 👁️ Voir
- Informations complètes du ticket
- Liste des commentaires
- Historique des changements
- Ajout de commentaires
6. 🗑️ Suppression
- Avec confirmation
- Action irréversible
7. 🏷️ Ordre de Tri
Tickets triés automatiquement par :
- Priorité (urgent → low)
- Date (plus récent en premier)
---
🔄 Workflow Typique
Scénario 1 : Nouvelle Demande
Étape 1 : Création
```
Client appelle → Admin crée un ticket
- Numéro : TICK-2025-0123
- Statut : new
- Priorité : medium (par défaut)
```
Étape 2 : Prise en Charge
```
Admin modifie le ticket
- Statut : in_progress
- Assigné à : "Jean Dupont"
```
Étape 3 : Traitement
```
Admin ajoute des commentaires
- "Client rappelé"
- "Rendez-vous prévu"
```
Étape 4 : Résolution
```
Admin change le statut
- Statut : resolved
```
Étape 5 : Fermeture
```
Après confirmation client
- Statut : closed
```
---
📱 Utilisation sur Mobile
Navigation
- Cliquez sur le menu hamburger (☰)
- Sélectionnez 🎫 Tickets
- Cliquez sur ➕ Nouveau ticket
Formulaire Mobile
Le formulaire s'adapte automatiquement :
- Sélection du client depuis liste déroulante
- Remplissage automatique si client existant
- Champs empilés verticalement
- Bouton "Créer" pleine largeur
Visualisation
- Liste des tickets avec statistiques en haut
- Filtres accessibles
- Tableau scrollable horizontalement
- Actions : Voir, Modifier, Supprimer
---
🎯 Cas d'Usage Courants
Cas 1 : Support Technique
```
Priorité : high ou urgent
Statut initial : new
→ Assigner à un technicien
→ Suivre en "in_progress"
→ Résoudre et fermer
```
Cas 2 : Demande d'Information
```
Priorité : low ou medium
Statut initial : new
→ Répondre rapidement
→ Passer en "resolved"
→ Fermer après confirmation
```
Cas 3 : Problème Bloquant
```
Priorité : urgent
Statut initial : new
→ Traitement immédiat
→ Commentaires fréquents
→ Communication intensive
```
---
🔧 Gestion Avancée
Assignation
- Tickets assignés à des membres de l'équipe
- Champ
assigned_to: Nom d'utilisateur - Filtrage possible par assignation
Commentaires
- Commentaires publics : Visibles au client
- Commentaires internes : Visibles uniquement en admin
- Stockés dans
ticket_comments
Tags
- Champ
tagspour étiquetage - Permet la catégorisation
- Exemples : "hardware", "software", "billing"
---
📊 Métriques et Statistiques
Automatiques
Le système calcule automatiquement :
- ✅ Total de tickets
- ✅ Nouveaux (non traités)
- ✅ En cours de traitement
- ✅ Résolus
- ✅ Taux de résolution
Tri Personnalisé
```
ORDER BY priority (urgent → low),
created_at DESC (plus récent)
```
---
🛡️ Sécurité et Permissions
Permissions Requises
- Voir les tickets : Tous les utilisateurs connectés
- Créer des tickets : Utilisateurs avec permissions
- Modifier : Assignés ou admins
- Supprimer : Admins uniquement
Journal d'Audit
Toutes les actions sont enregistrées dans audit_logs :
- Création de ticket
- Modification de statut
- Ajout de commentaires
- Suppression
---
🎓 Comment Utiliser
Pour Créer un Ticket
- Aller sur la page Tickets (menu → 🎫 Tickets)
- Cliquer sur "➕ Nouveau ticket"
- Remplir le formulaire :
- Client (optionnel) : Choisir dans la liste
- Nom du client : Si nouveau client
- Email du client
- Sujet : Titre du problème
- Description : Détails complets
- Priorité : Choisir urgent/high/medium/low
- Créer le ticket
Pour Modifier un Ticket
- Cliquer sur "✏️ Modifier" sur le ticket
- Changer ce que vous voulez :
- Statut (nouveau → en cours → résolu → fermé)
- Priorité (augmenter si besoin)
- Assigné à (nom de l'utilisateur)
- Sauvegarder
Pour Voir les Détails
- Cliquer sur "👁️ Voir" sur le ticket
- Voir toutes les infos :
- Détails complets
- Commentaires
- Historique
- Ajouter un commentaire si besoin
---
📝 Exemples de Tickets
Ticket #1 - Support Technique
```
Numéro : TICK-2025-0015
Client : Jean Dupont
Sujet : Mon ordinateur ne démarre plus
Description : L'ordinateur affiche un écran bleu au démarrage
Priorité : high
Statut : in_progress
Assigned to : Marie Martin
```
Ticket #2 - Demande d'Information
```
Numéro : TICK-2025-0016
Client : Sophie Laurent
Sujet : Demande de devis pour installation
Description : Besoin d'un devis pour installation domotique
Priorité : medium
Statut : new
Assigned to : -
```
---
🎯 Résumé
Le système de tickets permet :
- ✅ Organisation des demandes client
- ✅ Suivi de l'état d'avancement
- ✅ Attribution aux membres de l'équipe
- ✅ Hiérarchisation par priorité
- ✅ Historique des échanges
- ✅ Statistiques en temps réel
- ✅ Compatible mobile 100%
Fichiers principaux :
tickets.php- Liste et gestionview-ticket.php- Détails d'un ticketedit-ticket.php- Modification d'un ticketconfig-db.php- Structure de la base de données
Dernière mise à jour : Janvier 2025