Refactoring
This commit is contained in:
@@ -168,4 +168,29 @@ class EventRemoteDataSource {
|
||||
throw ServerExceptionWithMessage('Une erreur est survenue lors de la fermeture de l\'événement.');
|
||||
}
|
||||
}
|
||||
|
||||
/// Rouvrir un événement.
|
||||
Future<void> reopenEvent(String eventId) async {
|
||||
print('Réouverture de l\'événement avec l\'ID: $eventId');
|
||||
|
||||
final response = await client.post(
|
||||
Uri.parse('${Urls.eventsUrl}/$eventId/reopen'),
|
||||
headers: {'Content-Type': 'application/json'},
|
||||
);
|
||||
|
||||
print('Statut de la réponse: ${response.statusCode}');
|
||||
|
||||
if (response.statusCode == 200) {
|
||||
print('Événement rouvert 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 réouverture de l\'événement: $errorMessage');
|
||||
throw ServerExceptionWithMessage(errorMessage);
|
||||
} else {
|
||||
print('Erreur lors de la réouverture de l\'événement: ${response.body}');
|
||||
throw ServerExceptionWithMessage('Une erreur est survenue lors de la réouverture de l\'événement.');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,18 +1,21 @@
|
||||
import 'package:afterwork/data/models/user_model.dart';
|
||||
|
||||
/// Modèle de données représentant un événement.
|
||||
/// Cette classe encapsule toutes les propriétés d'un événement, y compris
|
||||
/// le titre, la description, la date, la localisation, la catégorie, les liens,
|
||||
/// l'image, le créateur, les participants et le statut de l'événement.
|
||||
class EventModel {
|
||||
final String id;
|
||||
final String title;
|
||||
final String description;
|
||||
final String date;
|
||||
final String location;
|
||||
final String category;
|
||||
final String link;
|
||||
final String? imageUrl;
|
||||
final UserModel creator;
|
||||
final List<UserModel> participants;
|
||||
final String status;
|
||||
final String id; // Identifiant unique de l'événement
|
||||
final String title; // Titre de l'événement
|
||||
final String description; // Description de l'événement
|
||||
final String date; // Date de l'événement
|
||||
final String location; // Localisation de l'événement
|
||||
final String category; // Catégorie de l'événement
|
||||
final String link; // Lien associé à l'événement
|
||||
final String? imageUrl; // URL de l'image de l'événement (optionnel)
|
||||
final UserModel creator; // Créateur de l'événement
|
||||
final List<UserModel> participants; // Liste des participants à l'événement
|
||||
final String status; // Statut de l'événement (e.g., "OPEN", "CLOSED")
|
||||
|
||||
/// Constructeur pour initialiser toutes les propriétés de l'événement.
|
||||
EventModel({
|
||||
@@ -31,6 +34,9 @@ class EventModel {
|
||||
|
||||
/// Convertit un objet JSON en `EventModel`.
|
||||
factory EventModel.fromJson(Map<String, dynamic> json) {
|
||||
// Log de la conversion depuis JSON
|
||||
print('Conversion de l\'objet JSON en EventModel: ${json['id']}');
|
||||
|
||||
return EventModel(
|
||||
id: json['id'],
|
||||
title: json['title'],
|
||||
@@ -52,6 +58,9 @@ class EventModel {
|
||||
|
||||
/// Convertit un `EventModel` en objet JSON.
|
||||
Map<String, dynamic> toJson() {
|
||||
// Log de la conversion en JSON
|
||||
print('Conversion de l\'EventModel en objet JSON: $id');
|
||||
|
||||
return {
|
||||
'id': id,
|
||||
'title': title,
|
||||
@@ -63,6 +72,7 @@ class EventModel {
|
||||
'imageUrl': imageUrl,
|
||||
'creator': creator.toJson(),
|
||||
'participants': participants.map((user) => user.toJson()).toList(),
|
||||
'status': status,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user