From ae4f7b06cedb24d7d9e24afdf379dfe1bbe87dd4 Mon Sep 17 00:00:00 2001 From: efrilm Date: Wed, 6 Aug 2025 00:53:02 +0700 Subject: [PATCH] fix: refund --- .../datasources/order_remote_datasource.dart | 6 +- lib/presentation/refund/bloc/refund_bloc.dart | 4 +- .../refund/bloc/refund_bloc.freezed.dart | 55 +++++++++---------- .../refund/bloc/refund_event.dart | 2 +- .../refund/pages/refund_page.dart | 2 +- 5 files changed, 34 insertions(+), 35 deletions(-) diff --git a/lib/data/datasources/order_remote_datasource.dart b/lib/data/datasources/order_remote_datasource.dart index c8a3761..f6e8925 100644 --- a/lib/data/datasources/order_remote_datasource.dart +++ b/lib/data/datasources/order_remote_datasource.dart @@ -535,12 +535,12 @@ class OrderRemoteDatasource { } Future> refundPayment({ - required String paymentId, + required String orderId, required String reason, required int refundAmount, }) async { final authData = await AuthLocalDataSource().getAuthData(); - final url = '${Variables.baseUrl}/api/v1/payments/$paymentId/refund'; + final url = '${Variables.baseUrl}/api/v1/orders/$orderId/refund'; try { final response = await dio.post( @@ -564,7 +564,7 @@ class OrderRemoteDatasource { return const Left('Gagal refund'); } } on DioException catch (e) { - final errorMessage = e.response?.data['message'] ?? 'Kesalahan jaringan'; + final errorMessage = 'Terjadi kesalahan coba lagi nanti'; log("💥 Dio error: ${e.message}"); log("💥 Dio response: ${e.response?.data}"); return Left(errorMessage); diff --git a/lib/presentation/refund/bloc/refund_bloc.dart b/lib/presentation/refund/bloc/refund_bloc.dart index 24098e5..e16896d 100644 --- a/lib/presentation/refund/bloc/refund_bloc.dart +++ b/lib/presentation/refund/bloc/refund_bloc.dart @@ -19,7 +19,7 @@ class RefundBloc extends Bloc { } Future _onRefundPayment( - String paymentId, + String orderId, String reason, int refundAmount, Emitter emit, @@ -27,7 +27,7 @@ class RefundBloc extends Bloc { emit(const RefundState.loading()); final result = await _orderRemoteDatasource.refundPayment( - paymentId: paymentId, + orderId: orderId, reason: reason, refundAmount: refundAmount, ); diff --git a/lib/presentation/refund/bloc/refund_bloc.freezed.dart b/lib/presentation/refund/bloc/refund_bloc.freezed.dart index 79f9b00..4799ad7 100644 --- a/lib/presentation/refund/bloc/refund_bloc.freezed.dart +++ b/lib/presentation/refund/bloc/refund_bloc.freezed.dart @@ -16,24 +16,24 @@ final _privateConstructorUsedError = UnsupportedError( /// @nodoc mixin _$RefundEvent { - String get paymentId => throw _privateConstructorUsedError; + String get orderId => throw _privateConstructorUsedError; String get reason => throw _privateConstructorUsedError; int get refundAmount => throw _privateConstructorUsedError; @optionalTypeArgs TResult when({ - required TResult Function(String paymentId, String reason, int refundAmount) + required TResult Function(String orderId, String reason, int refundAmount) refundPayment, }) => throw _privateConstructorUsedError; @optionalTypeArgs TResult? whenOrNull({ - TResult? Function(String paymentId, String reason, int refundAmount)? + TResult? Function(String orderId, String reason, int refundAmount)? refundPayment, }) => throw _privateConstructorUsedError; @optionalTypeArgs TResult maybeWhen({ - TResult Function(String paymentId, String reason, int refundAmount)? + TResult Function(String orderId, String reason, int refundAmount)? refundPayment, required TResult orElse(), }) => @@ -68,7 +68,7 @@ abstract class $RefundEventCopyWith<$Res> { RefundEvent value, $Res Function(RefundEvent) then) = _$RefundEventCopyWithImpl<$Res, RefundEvent>; @useResult - $Res call({String paymentId, String reason, int refundAmount}); + $Res call({String orderId, String reason, int refundAmount}); } /// @nodoc @@ -86,14 +86,14 @@ class _$RefundEventCopyWithImpl<$Res, $Val extends RefundEvent> @pragma('vm:prefer-inline') @override $Res call({ - Object? paymentId = null, + Object? orderId = null, Object? reason = null, Object? refundAmount = null, }) { return _then(_value.copyWith( - paymentId: null == paymentId - ? _value.paymentId - : paymentId // ignore: cast_nullable_to_non_nullable + orderId: null == orderId + ? _value.orderId + : orderId // ignore: cast_nullable_to_non_nullable as String, reason: null == reason ? _value.reason @@ -115,7 +115,7 @@ abstract class _$$RefundPaymentImplCopyWith<$Res> __$$RefundPaymentImplCopyWithImpl<$Res>; @override @useResult - $Res call({String paymentId, String reason, int refundAmount}); + $Res call({String orderId, String reason, int refundAmount}); } /// @nodoc @@ -131,14 +131,14 @@ class __$$RefundPaymentImplCopyWithImpl<$Res> @pragma('vm:prefer-inline') @override $Res call({ - Object? paymentId = null, + Object? orderId = null, Object? reason = null, Object? refundAmount = null, }) { return _then(_$RefundPaymentImpl( - paymentId: null == paymentId - ? _value.paymentId - : paymentId // ignore: cast_nullable_to_non_nullable + orderId: null == orderId + ? _value.orderId + : orderId // ignore: cast_nullable_to_non_nullable as String, reason: null == reason ? _value.reason @@ -156,12 +156,12 @@ class __$$RefundPaymentImplCopyWithImpl<$Res> class _$RefundPaymentImpl implements _RefundPayment { const _$RefundPaymentImpl( - {required this.paymentId, + {required this.orderId, required this.reason, required this.refundAmount}); @override - final String paymentId; + final String orderId; @override final String reason; @override @@ -169,7 +169,7 @@ class _$RefundPaymentImpl implements _RefundPayment { @override String toString() { - return 'RefundEvent.refundPayment(paymentId: $paymentId, reason: $reason, refundAmount: $refundAmount)'; + return 'RefundEvent.refundPayment(orderId: $orderId, reason: $reason, refundAmount: $refundAmount)'; } @override @@ -177,15 +177,14 @@ class _$RefundPaymentImpl implements _RefundPayment { return identical(this, other) || (other.runtimeType == runtimeType && other is _$RefundPaymentImpl && - (identical(other.paymentId, paymentId) || - other.paymentId == paymentId) && + (identical(other.orderId, orderId) || other.orderId == orderId) && (identical(other.reason, reason) || other.reason == reason) && (identical(other.refundAmount, refundAmount) || other.refundAmount == refundAmount)); } @override - int get hashCode => Object.hash(runtimeType, paymentId, reason, refundAmount); + int get hashCode => Object.hash(runtimeType, orderId, reason, refundAmount); /// Create a copy of RefundEvent /// with the given fields replaced by the non-null parameter values. @@ -198,30 +197,30 @@ class _$RefundPaymentImpl implements _RefundPayment { @override @optionalTypeArgs TResult when({ - required TResult Function(String paymentId, String reason, int refundAmount) + required TResult Function(String orderId, String reason, int refundAmount) refundPayment, }) { - return refundPayment(paymentId, reason, refundAmount); + return refundPayment(orderId, reason, refundAmount); } @override @optionalTypeArgs TResult? whenOrNull({ - TResult? Function(String paymentId, String reason, int refundAmount)? + TResult? Function(String orderId, String reason, int refundAmount)? refundPayment, }) { - return refundPayment?.call(paymentId, reason, refundAmount); + return refundPayment?.call(orderId, reason, refundAmount); } @override @optionalTypeArgs TResult maybeWhen({ - TResult Function(String paymentId, String reason, int refundAmount)? + TResult Function(String orderId, String reason, int refundAmount)? refundPayment, required TResult orElse(), }) { if (refundPayment != null) { - return refundPayment(paymentId, reason, refundAmount); + return refundPayment(orderId, reason, refundAmount); } return orElse(); } @@ -257,12 +256,12 @@ class _$RefundPaymentImpl implements _RefundPayment { abstract class _RefundPayment implements RefundEvent { const factory _RefundPayment( - {required final String paymentId, + {required final String orderId, required final String reason, required final int refundAmount}) = _$RefundPaymentImpl; @override - String get paymentId; + String get orderId; @override String get reason; @override diff --git a/lib/presentation/refund/bloc/refund_event.dart b/lib/presentation/refund/bloc/refund_event.dart index 2ea1eb0..364aee9 100644 --- a/lib/presentation/refund/bloc/refund_event.dart +++ b/lib/presentation/refund/bloc/refund_event.dart @@ -3,7 +3,7 @@ part of 'refund_bloc.dart'; @freezed class RefundEvent with _$RefundEvent { const factory RefundEvent.refundPayment({ - required String paymentId, + required String orderId, required String reason, required int refundAmount, }) = _RefundPayment; diff --git a/lib/presentation/refund/pages/refund_page.dart b/lib/presentation/refund/pages/refund_page.dart index 0b17cc0..4837c61 100644 --- a/lib/presentation/refund/pages/refund_page.dart +++ b/lib/presentation/refund/pages/refund_page.dart @@ -788,7 +788,7 @@ class _RefundPageState extends State with TickerProviderStateMixin { // Trigger refund event context.read().add( RefundEvent.refundPayment( - paymentId: widget.selectedOrder.id ?? + orderId: widget.selectedOrder.id ?? '', // Assuming order ID is payment ID reason: reason, refundAmount: refundAmount,