40 lines
1.2 KiB
Dart
40 lines
1.2 KiB
Dart
/// Use case: Soumettre un feedback sur un événement
|
|
library submit_event_feedback;
|
|
|
|
import 'package:injectable/injectable.dart';
|
|
import '../repositories/evenement_repository.dart';
|
|
|
|
/// Use case pour soumettre un feedback après un événement
|
|
/// Note: Cette fonctionnalité nécessite un endpoint backend dédié
|
|
@injectable
|
|
class SubmitEventFeedback {
|
|
final IEvenementRepository _repository;
|
|
|
|
SubmitEventFeedback(this._repository);
|
|
|
|
/// Exécute le use case
|
|
///
|
|
/// [evenementId] - UUID de l'événement
|
|
/// [note] - Note de 1 à 5
|
|
/// [commentaire] - Commentaire (optionnel)
|
|
///
|
|
/// Soumet un feedback pour l'événement
|
|
/// Réservé aux participants de l'événement
|
|
///
|
|
/// TODO: Ajouter endpoint backend POST /api/evenements/{id}/feedback
|
|
/// Lève une exception si:
|
|
/// - L'événement n'existe pas
|
|
/// - Le membre n'a pas participé
|
|
/// - L'événement n'est pas terminé
|
|
Future<void> call({
|
|
required String evenementId,
|
|
required int note,
|
|
String? commentaire,
|
|
}) async {
|
|
// TODO: Implémenter quand endpoint backend sera disponible
|
|
throw UnimplementedError(
|
|
'Endpoint POST /api/evenements/{id}/feedback non implémenté côté backend',
|
|
);
|
|
}
|
|
}
|