32 lines
1.1 KiB
Dart
32 lines
1.1 KiB
Dart
/// Use case: Récupérer mes inscriptions aux événements
|
|
library get_my_registrations;
|
|
|
|
import 'package:injectable/injectable.dart';
|
|
import '../../data/repositories/evenement_repository_impl.dart' show EvenementSearchResult;
|
|
import '../repositories/evenement_repository.dart';
|
|
|
|
/// Use case pour récupérer les événements auxquels le membre est inscrit
|
|
@injectable
|
|
class GetMyRegistrations {
|
|
final IEvenementRepository _repository;
|
|
|
|
GetMyRegistrations(this._repository);
|
|
|
|
/// Exécute le use case
|
|
///
|
|
/// [page] - Numéro de page (pagination)
|
|
/// [size] - Taille de la page
|
|
///
|
|
/// Retourne la liste paginée des événements auxquels le membre est inscrit
|
|
/// Note: Cette fonctionnalité utilise les événements à venir + filtre côté client
|
|
/// pour déterminer les inscriptions (endpoint dédié à ajouter côté backend)
|
|
Future<EvenementSearchResult> call({
|
|
int page = 0,
|
|
int size = 20,
|
|
}) async {
|
|
// Pour l'instant, on récupère les événements à venir
|
|
// TODO: Ajouter endpoint backend GET /api/evenements/mes-inscriptions
|
|
return _repository.getEvenementsAVenir(page: page, size: size);
|
|
}
|
|
}
|