feat: payment method report

This commit is contained in:
efrilm
2025-08-06 11:23:03 +07:00
parent ae4f7b06ce
commit fd254c22fd
9 changed files with 608 additions and 164 deletions
@@ -1,6 +1,6 @@
import 'package:enaklo_pos/data/datasources/analytic_remote_datasource.dart';
import 'package:enaklo_pos/data/models/response/payment_method_analytic_response_model.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:enaklo_pos/data/datasources/order_remote_datasource.dart';
import 'package:enaklo_pos/data/models/response/payment_method_response_model.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
part 'payment_method_report_event.dart';
@@ -9,16 +9,23 @@ part 'payment_method_report_bloc.freezed.dart';
class PaymentMethodReportBloc
extends Bloc<PaymentMethodReportEvent, PaymentMethodReportState> {
final OrderRemoteDatasource datasource;
final AnalyticRemoteDatasource datasource;
PaymentMethodReportBloc(this.datasource) : super(const _Initial()) {
on<_GetPaymentMethodReport>((event, emit) async {
emit(const _Loading());
final result = await datasource.getPaymentMethodByRangeDate(
event.startDate,
event.endDate,
final result = await datasource.getPaymentMethod(
dateFrom: event.startDate,
dateTo: event.endDate,
);
result.fold((l) => emit(_Error(l)), (r) => emit(_Loaded(r.data!)));
result.fold(
(l) => emit(_Error(l)),
(r) => emit(
_Loaded(
r.data,
),
),
);
});
}
}
}
@@ -16,22 +16,24 @@ final _privateConstructorUsedError = UnsupportedError(
/// @nodoc
mixin _$PaymentMethodReportEvent {
String get startDate => throw _privateConstructorUsedError;
String get endDate => throw _privateConstructorUsedError;
DateTime get startDate => throw _privateConstructorUsedError;
DateTime get endDate => throw _privateConstructorUsedError;
@optionalTypeArgs
TResult when<TResult extends Object?>({
required TResult Function(String startDate, String endDate)
required TResult Function(DateTime startDate, DateTime endDate)
getPaymentMethodReport,
}) =>
throw _privateConstructorUsedError;
@optionalTypeArgs
TResult? whenOrNull<TResult extends Object?>({
TResult? Function(String startDate, String endDate)? getPaymentMethodReport,
TResult? Function(DateTime startDate, DateTime endDate)?
getPaymentMethodReport,
}) =>
throw _privateConstructorUsedError;
@optionalTypeArgs
TResult maybeWhen<TResult extends Object?>({
TResult Function(String startDate, String endDate)? getPaymentMethodReport,
TResult Function(DateTime startDate, DateTime endDate)?
getPaymentMethodReport,
required TResult orElse(),
}) =>
throw _privateConstructorUsedError;
@@ -66,7 +68,7 @@ abstract class $PaymentMethodReportEventCopyWith<$Res> {
$Res Function(PaymentMethodReportEvent) then) =
_$PaymentMethodReportEventCopyWithImpl<$Res, PaymentMethodReportEvent>;
@useResult
$Res call({String startDate, String endDate});
$Res call({DateTime startDate, DateTime endDate});
}
/// @nodoc
@@ -92,11 +94,11 @@ class _$PaymentMethodReportEventCopyWithImpl<$Res,
startDate: null == startDate
? _value.startDate
: startDate // ignore: cast_nullable_to_non_nullable
as String,
as DateTime,
endDate: null == endDate
? _value.endDate
: endDate // ignore: cast_nullable_to_non_nullable
as String,
as DateTime,
) as $Val);
}
}
@@ -110,7 +112,7 @@ abstract class _$$GetPaymentMethodReportImplCopyWith<$Res>
__$$GetPaymentMethodReportImplCopyWithImpl<$Res>;
@override
@useResult
$Res call({String startDate, String endDate});
$Res call({DateTime startDate, DateTime endDate});
}
/// @nodoc
@@ -135,11 +137,11 @@ class __$$GetPaymentMethodReportImplCopyWithImpl<$Res>
startDate: null == startDate
? _value.startDate
: startDate // ignore: cast_nullable_to_non_nullable
as String,
as DateTime,
endDate: null == endDate
? _value.endDate
: endDate // ignore: cast_nullable_to_non_nullable
as String,
as DateTime,
));
}
}
@@ -151,9 +153,9 @@ class _$GetPaymentMethodReportImpl implements _GetPaymentMethodReport {
{required this.startDate, required this.endDate});
@override
final String startDate;
final DateTime startDate;
@override
final String endDate;
final DateTime endDate;
@override
String toString() {
@@ -185,7 +187,7 @@ class _$GetPaymentMethodReportImpl implements _GetPaymentMethodReport {
@override
@optionalTypeArgs
TResult when<TResult extends Object?>({
required TResult Function(String startDate, String endDate)
required TResult Function(DateTime startDate, DateTime endDate)
getPaymentMethodReport,
}) {
return getPaymentMethodReport(startDate, endDate);
@@ -194,7 +196,8 @@ class _$GetPaymentMethodReportImpl implements _GetPaymentMethodReport {
@override
@optionalTypeArgs
TResult? whenOrNull<TResult extends Object?>({
TResult? Function(String startDate, String endDate)? getPaymentMethodReport,
TResult? Function(DateTime startDate, DateTime endDate)?
getPaymentMethodReport,
}) {
return getPaymentMethodReport?.call(startDate, endDate);
}
@@ -202,7 +205,8 @@ class _$GetPaymentMethodReportImpl implements _GetPaymentMethodReport {
@override
@optionalTypeArgs
TResult maybeWhen<TResult extends Object?>({
TResult Function(String startDate, String endDate)? getPaymentMethodReport,
TResult Function(DateTime startDate, DateTime endDate)?
getPaymentMethodReport,
required TResult orElse(),
}) {
if (getPaymentMethodReport != null) {
@@ -243,13 +247,13 @@ class _$GetPaymentMethodReportImpl implements _GetPaymentMethodReport {
abstract class _GetPaymentMethodReport implements PaymentMethodReportEvent {
const factory _GetPaymentMethodReport(
{required final String startDate,
required final String endDate}) = _$GetPaymentMethodReportImpl;
{required final DateTime startDate,
required final DateTime endDate}) = _$GetPaymentMethodReportImpl;
@override
String get startDate;
DateTime get startDate;
@override
String get endDate;
DateTime get endDate;
/// Create a copy of PaymentMethodReportEvent
/// with the given fields replaced by the non-null parameter values.
@@ -265,7 +269,7 @@ mixin _$PaymentMethodReportState {
TResult when<TResult extends Object?>({
required TResult Function() initial,
required TResult Function() loading,
required TResult Function(PaymentMethodData data) loaded,
required TResult Function(PaymentMethodAnalyticData data) loaded,
required TResult Function(String message) error,
}) =>
throw _privateConstructorUsedError;
@@ -273,7 +277,7 @@ mixin _$PaymentMethodReportState {
TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial,
TResult? Function()? loading,
TResult? Function(PaymentMethodData data)? loaded,
TResult? Function(PaymentMethodAnalyticData data)? loaded,
TResult? Function(String message)? error,
}) =>
throw _privateConstructorUsedError;
@@ -281,7 +285,7 @@ mixin _$PaymentMethodReportState {
TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial,
TResult Function()? loading,
TResult Function(PaymentMethodData data)? loaded,
TResult Function(PaymentMethodAnalyticData data)? loaded,
TResult Function(String message)? error,
required TResult orElse(),
}) =>
@@ -378,7 +382,7 @@ class _$InitialImpl implements _Initial {
TResult when<TResult extends Object?>({
required TResult Function() initial,
required TResult Function() loading,
required TResult Function(PaymentMethodData data) loaded,
required TResult Function(PaymentMethodAnalyticData data) loaded,
required TResult Function(String message) error,
}) {
return initial();
@@ -389,7 +393,7 @@ class _$InitialImpl implements _Initial {
TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial,
TResult? Function()? loading,
TResult? Function(PaymentMethodData data)? loaded,
TResult? Function(PaymentMethodAnalyticData data)? loaded,
TResult? Function(String message)? error,
}) {
return initial?.call();
@@ -400,7 +404,7 @@ class _$InitialImpl implements _Initial {
TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial,
TResult Function()? loading,
TResult Function(PaymentMethodData data)? loaded,
TResult Function(PaymentMethodAnalyticData data)? loaded,
TResult Function(String message)? error,
required TResult orElse(),
}) {
@@ -495,7 +499,7 @@ class _$LoadingImpl implements _Loading {
TResult when<TResult extends Object?>({
required TResult Function() initial,
required TResult Function() loading,
required TResult Function(PaymentMethodData data) loaded,
required TResult Function(PaymentMethodAnalyticData data) loaded,
required TResult Function(String message) error,
}) {
return loading();
@@ -506,7 +510,7 @@ class _$LoadingImpl implements _Loading {
TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial,
TResult? Function()? loading,
TResult? Function(PaymentMethodData data)? loaded,
TResult? Function(PaymentMethodAnalyticData data)? loaded,
TResult? Function(String message)? error,
}) {
return loading?.call();
@@ -517,7 +521,7 @@ class _$LoadingImpl implements _Loading {
TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial,
TResult Function()? loading,
TResult Function(PaymentMethodData data)? loaded,
TResult Function(PaymentMethodAnalyticData data)? loaded,
TResult Function(String message)? error,
required TResult orElse(),
}) {
@@ -575,7 +579,7 @@ abstract class _$$LoadedImplCopyWith<$Res> {
_$LoadedImpl value, $Res Function(_$LoadedImpl) then) =
__$$LoadedImplCopyWithImpl<$Res>;
@useResult
$Res call({PaymentMethodData data});
$Res call({PaymentMethodAnalyticData data});
}
/// @nodoc
@@ -597,7 +601,7 @@ class __$$LoadedImplCopyWithImpl<$Res>
null == data
? _value.data
: data // ignore: cast_nullable_to_non_nullable
as PaymentMethodData,
as PaymentMethodAnalyticData,
));
}
}
@@ -608,7 +612,7 @@ class _$LoadedImpl implements _Loaded {
const _$LoadedImpl(this.data);
@override
final PaymentMethodData data;
final PaymentMethodAnalyticData data;
@override
String toString() {
@@ -639,7 +643,7 @@ class _$LoadedImpl implements _Loaded {
TResult when<TResult extends Object?>({
required TResult Function() initial,
required TResult Function() loading,
required TResult Function(PaymentMethodData data) loaded,
required TResult Function(PaymentMethodAnalyticData data) loaded,
required TResult Function(String message) error,
}) {
return loaded(data);
@@ -650,7 +654,7 @@ class _$LoadedImpl implements _Loaded {
TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial,
TResult? Function()? loading,
TResult? Function(PaymentMethodData data)? loaded,
TResult? Function(PaymentMethodAnalyticData data)? loaded,
TResult? Function(String message)? error,
}) {
return loaded?.call(data);
@@ -661,7 +665,7 @@ class _$LoadedImpl implements _Loaded {
TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial,
TResult Function()? loading,
TResult Function(PaymentMethodData data)? loaded,
TResult Function(PaymentMethodAnalyticData data)? loaded,
TResult Function(String message)? error,
required TResult orElse(),
}) {
@@ -710,9 +714,9 @@ class _$LoadedImpl implements _Loaded {
}
abstract class _Loaded implements PaymentMethodReportState {
const factory _Loaded(final PaymentMethodData data) = _$LoadedImpl;
const factory _Loaded(final PaymentMethodAnalyticData data) = _$LoadedImpl;
PaymentMethodData get data;
PaymentMethodAnalyticData get data;
/// Create a copy of PaymentMethodReportState
/// with the given fields replaced by the non-null parameter values.
@@ -791,7 +795,7 @@ class _$ErrorImpl implements _Error {
TResult when<TResult extends Object?>({
required TResult Function() initial,
required TResult Function() loading,
required TResult Function(PaymentMethodData data) loaded,
required TResult Function(PaymentMethodAnalyticData data) loaded,
required TResult Function(String message) error,
}) {
return error(message);
@@ -802,7 +806,7 @@ class _$ErrorImpl implements _Error {
TResult? whenOrNull<TResult extends Object?>({
TResult? Function()? initial,
TResult? Function()? loading,
TResult? Function(PaymentMethodData data)? loaded,
TResult? Function(PaymentMethodAnalyticData data)? loaded,
TResult? Function(String message)? error,
}) {
return error?.call(message);
@@ -813,7 +817,7 @@ class _$ErrorImpl implements _Error {
TResult maybeWhen<TResult extends Object?>({
TResult Function()? initial,
TResult Function()? loading,
TResult Function(PaymentMethodData data)? loaded,
TResult Function(PaymentMethodAnalyticData data)? loaded,
TResult Function(String message)? error,
required TResult orElse(),
}) {
@@ -3,7 +3,7 @@ part of 'payment_method_report_bloc.dart';
@freezed
class PaymentMethodReportEvent with _$PaymentMethodReportEvent {
const factory PaymentMethodReportEvent.getPaymentMethodReport({
required String startDate,
required String endDate,
required DateTime startDate,
required DateTime endDate,
}) = _GetPaymentMethodReport;
}
}
@@ -4,6 +4,7 @@ part of 'payment_method_report_bloc.dart';
class PaymentMethodReportState with _$PaymentMethodReportState {
const factory PaymentMethodReportState.initial() = _Initial;
const factory PaymentMethodReportState.loading() = _Loading;
const factory PaymentMethodReportState.loaded(PaymentMethodData data) = _Loaded;
const factory PaymentMethodReportState.loaded(
PaymentMethodAnalyticData data) = _Loaded;
const factory PaymentMethodReportState.error(String message) = _Error;
}
}