From 5dd653519128450e16b38ce7a159ff01c2ea3974 Mon Sep 17 00:00:00 2001 From: dahoud <41957584+DahoudG@users.noreply.github.com> Date: Thu, 16 Apr 2026 19:46:06 +0000 Subject: [PATCH] fix: corriger 5 erreurs compilation mock-complete MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. confirmerMockPaiement() placé HORS de la classe → déplacé à l'intérieur (contribution_repository.dart + transaction_epargne_repository.dart) 2. result.clientReference?.isNotEmpty → null-safe avec ?. 3. IContributionRepository n'a pas confirmerMockPaiement → cast vers ContributionRepository (implémentation) avec check is 4. Import data/repositories ajouté dans payment_dialog.dart --- .../data/repositories/contribution_repository.dart | 1 - .../presentation/widgets/payment_dialog.dart | 12 +++++++++--- .../repositories/transaction_epargne_repository.dart | 1 - 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/lib/features/contributions/data/repositories/contribution_repository.dart b/lib/features/contributions/data/repositories/contribution_repository.dart index 1752309..95228f5 100644 --- a/lib/features/contributions/data/repositories/contribution_repository.dart +++ b/lib/features/contributions/data/repositories/contribution_repository.dart @@ -368,7 +368,6 @@ class ContributionRepositoryImpl implements IContributionRepository { } throw Exception('Erreur lors de la génération'); } -} /// Confirme un paiement mock (mode dev) côté backend. /// Appelle GET /api/wave-redirect/mock-complete?ref={id} diff --git a/lib/features/contributions/presentation/widgets/payment_dialog.dart b/lib/features/contributions/presentation/widgets/payment_dialog.dart index af0dca3..b9c7a44 100644 --- a/lib/features/contributions/presentation/widgets/payment_dialog.dart +++ b/lib/features/contributions/presentation/widgets/payment_dialog.dart @@ -16,6 +16,7 @@ import '../../bloc/contributions_bloc.dart'; import '../../bloc/contributions_event.dart'; import '../../data/models/contribution_model.dart'; import '../../domain/repositories/contribution_repository.dart'; +import '../../data/repositories/contribution_repository.dart'; /// Dialogue de paiement de contribution class PaymentDialog extends StatefulWidget { @@ -452,11 +453,16 @@ class _PaymentDialogState extends State { final isMock = url.contains('mock') || url.contains('localhost') || !AppConfig.isProd; if (isMock) { // Confirmer côté backend pour que la cotisation soit réellement payée - final ref = result.clientReference.isNotEmpty ? result.clientReference : result.intentionPaiementId; + final ref = (result.clientReference?.isNotEmpty == true) + ? result.clientReference! + : (result.intentionPaiementId ?? ''); if (ref.isNotEmpty) { try { - final mockRepo = getIt(); - await mockRepo.confirmerMockPaiement(ref); + final repo = getIt(); + // Appel direct via l'implémentation (confirmerMockPaiement n'est pas dans l'interface) + if (repo is ContributionRepository) { + await repo.confirmerMockPaiement(ref); + } } catch (_) {} } await Future.delayed(const Duration(milliseconds: 400)); diff --git a/lib/features/epargne/data/repositories/transaction_epargne_repository.dart b/lib/features/epargne/data/repositories/transaction_epargne_repository.dart index 737117b..26cf88d 100644 --- a/lib/features/epargne/data/repositories/transaction_epargne_repository.dart +++ b/lib/features/epargne/data/repositories/transaction_epargne_repository.dart @@ -164,7 +164,6 @@ class TransactionEpargneRepository { versementId: data['versementId'] as String? ?? data['clientReference'] as String? ?? '', ); } -} /// Confirme un paiement mock (mode dev) côté backend. /// Appelle GET /api/wave-redirect/mock-complete?ref={id}