Gestion des bugs - Documentation techniques
Base de données
Ce système utilise Firebase Firestore pour stocker les rapports de bugs.
Les données sont structurées de la manière suivante :
- Collection : bug_reports
- Document ID : UUID généré automatiquement
- Champs :
- zoneBug: La zone de l'application où le bug a été rencontré
- descriptionBug: La description détaillée du bug
- email: L'email de l'utilisateur (optionnel)
- uid: L'ID utilisateur (si connecté)
- platform: La plateforme (Android/iOS)
- device_model: Le modèle de l'appareil
- device_version: La version du système d'exploitation
- app_version: La version de l'application
- status: Le statut du bug (open, in_progress, resolved)
- createdAt: La date de création
- updatedAt: La date de mise à jour
Architecture technique
Gestion des données
La gestion des données est réalisée via le processus suivant :
- lib/mappers/bug_report_mapper.dart : représentation d'un document ID avec interface Firebase
- lib/models/bug_report.dart : modèle métier pour les rapports de bugs
- lib/services/bug_report_service.dart : service pour gérer les opérations CRUD sur les rapports de bugs
- lib/providers/bug_report_provider.dart : provider pour gérer l'état des rapports de bugs. C'est le point d'entrée et d'interface entre les écrans et la base de données
NB: Pour comprendre la gestion, se reporter au document ARCHITECTURE_DATABASE.md
Interfaces utilisateurs
Bouton Signaler un bug
Code du bouton : bug_report_button.dart
- Bouton accessible à plusieurs endroits
- Accessible à tous les utilisateurs
- Ouvre l'écran
Signaler un bug
Écran Signaler un bug
Code de l'écran : bug_report_screen.dart
- Formulaire de signalement de bugs
- Accessible à tous les utilisateurs
- Ajout de données dans la base de données
bug_reportsvia lebug_report_provider - Règles Firebase : autorisations nécessaires en création pour tous (même inconnus)
Écran Gestion des bugs
Code de l'écran : admin_bug_reports_screen.dart
- Écran d'administration des rapports de bugs
- Accessible aux Administrateurs
- Lecture et modification de données dans la base de données
bug_reportsvia lebug_report_provider - Règles Firebase : autorisations nécessaires en lecture, modification et suppression pour les Admins