feat: Implement centralized error handling with ErrorService; replace print statements with logging in services and blocs

feat: Add ErrorContent widget for displaying error messages in dialogs and bottom sheets
refactor: Update GroupBloc and GroupRepository to utilize ErrorService for error logging
refactor: Enhance user and trip services to log errors using ErrorService
refactor: Clean up debug print statements in GroupContent and related components
This commit is contained in:
Dayron
2025-10-15 11:43:21 +02:00
parent 03ed85bf98
commit 0162eb67f5
12 changed files with 422 additions and 197 deletions

View File

@@ -1,7 +1,9 @@
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:travel_mate/data/models/group.dart';
import 'package:travel_mate/services/error_service.dart';
class GroupService {
final _errorService = ErrorService();
final FirebaseFirestore _firestore = FirebaseFirestore.instance;
Stream<List<Group>> getGroupsStream() {
@@ -17,7 +19,7 @@ class GroupService {
await _firestore.collection('groups').add(group.toMap());
return true;
} catch (e) {
print('Erreur lors de la création du groupe: $e');
_errorService.logError('Erreur lors de la création du groupe: $e', StackTrace.current);
return false;
}
}
@@ -27,7 +29,7 @@ class GroupService {
await _firestore.collection('groups').doc(group.id).update(group.toMap());
return true;
} catch (e) {
print('Erreur lors de la mise à jour du groupe: $e');
_errorService.logError('Erreur lors de la mise à jour du groupe: $e', StackTrace.current);
return false;
}
}
@@ -37,7 +39,7 @@ class GroupService {
await _firestore.collection('groups').doc(groupId).delete();
return true;
} catch (e) {
print('Erreur lors de la suppression du groupe: $e');
_errorService.logError('Erreur lors de la suppression du groupe: $e', StackTrace.current);
return false;
}
}
@@ -49,10 +51,9 @@ class GroupService {
.where('members', arrayContains: userId)
.snapshots()
.map((snapshot) {
print('Groupes trouvés pour l\'utilisateur $userId: ${snapshot.docs.length}');
return snapshot.docs.map((doc) {
final group = Group.fromMap(doc.data(), doc.id);
print('Groupe: ${group.name}, Membres: ${group.members.length}');
_errorService.logError('Groupe: ${group.name}, Membres: ${group.members.length}', StackTrace.current);
return group;
}).toList();
});
@@ -65,6 +66,4 @@ class GroupService {
Future<void> addMemberToGroup(String groupId, String memberId) async {
// TODO: Implémenter l'ajout d'un membre à un groupe
}
}