Refactoring et amélioration de la création et l'affichage d'un évènement.
This commit is contained in:
@@ -143,4 +143,29 @@ class EventRemoteDataSource {
|
||||
print('Réaction réussie');
|
||||
}
|
||||
}
|
||||
|
||||
/// Fermer un événement.
|
||||
Future<void> closeEvent(String eventId) async {
|
||||
print('Fermeture de l\'événement avec l\'ID: $eventId');
|
||||
|
||||
final response = await client.post(
|
||||
Uri.parse('${Urls.eventsUrl}/$eventId/close'),
|
||||
headers: {'Content-Type': 'application/json'},
|
||||
);
|
||||
|
||||
print('Statut de la réponse: ${response.statusCode}');
|
||||
|
||||
if (response.statusCode == 200) {
|
||||
print('Événement fermé avec succès');
|
||||
} else if (response.statusCode == 400) {
|
||||
// Si le serveur retourne une erreur 400, vérifiez le corps du message
|
||||
final responseBody = json.decode(response.body);
|
||||
final errorMessage = responseBody['message'] ?? 'Erreur inconnue';
|
||||
print('Erreur lors de la fermeture de l\'événement: $errorMessage');
|
||||
throw ServerExceptionWithMessage(errorMessage); // Utiliser la nouvelle exception ici
|
||||
} else {
|
||||
print('Erreur lors de la fermeture de l\'événement: ${response.body}');
|
||||
throw ServerExceptionWithMessage('Une erreur est survenue lors de la fermeture de l\'événement.');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ class EventModel {
|
||||
final String? imageUrl;
|
||||
final UserModel creator;
|
||||
final List<UserModel> participants;
|
||||
final String status;
|
||||
|
||||
/// Constructeur pour initialiser toutes les propriétés de l'événement.
|
||||
EventModel({
|
||||
@@ -25,6 +26,7 @@ class EventModel {
|
||||
this.imageUrl,
|
||||
required this.creator,
|
||||
required this.participants,
|
||||
required this.status,
|
||||
});
|
||||
|
||||
/// Convertit un objet JSON en `EventModel`.
|
||||
@@ -38,6 +40,7 @@ class EventModel {
|
||||
category: json['category'],
|
||||
link: json['link'] ?? '', // Assure qu'il ne soit pas null
|
||||
imageUrl: json['imageUrl'] ?? '', // Assure qu'il ne soit pas null
|
||||
status: json['status'],
|
||||
creator: UserModel.fromJson(json['creator']),
|
||||
participants: json['participants'] != null
|
||||
? (json['participants'] as List)
|
||||
|
||||
Reference in New Issue
Block a user