Skip to content

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_reports via le bug_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_reports via le bug_report_provider
  • Règles Firebase : autorisations nécessaires en lecture, modification et suppression pour les Admins