2025-08-06 13:05:58 +07:00
|
|
|
import 'package:enaklo_pos/data/datasources/analytic_remote_datasource.dart';
|
|
|
|
|
import 'package:enaklo_pos/data/models/response/dashboard_analytic_response_model.dart';
|
2025-07-30 22:38:44 +07:00
|
|
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
|
|
|
|
import 'package:freezed_annotation/freezed_annotation.dart';
|
|
|
|
|
|
|
|
|
|
part 'summary_event.dart';
|
|
|
|
|
part 'summary_state.dart';
|
|
|
|
|
part 'summary_bloc.freezed.dart';
|
|
|
|
|
|
|
|
|
|
class SummaryBloc extends Bloc<SummaryEvent, SummaryState> {
|
2025-08-06 13:05:58 +07:00
|
|
|
final AnalyticRemoteDatasource datasource;
|
2025-07-30 22:38:44 +07:00
|
|
|
SummaryBloc(
|
|
|
|
|
this.datasource,
|
|
|
|
|
) : super(const _Initial()) {
|
|
|
|
|
on<_GetSummary>((event, emit) async {
|
|
|
|
|
emit(const _Loading());
|
2025-08-06 13:05:58 +07:00
|
|
|
final result = await datasource.getDashboard(
|
|
|
|
|
dateFrom: event.startDate,
|
|
|
|
|
dateTo: event.endDate,
|
|
|
|
|
);
|
|
|
|
|
result.fold((l) => emit(_Error(l)), (r) => emit(_Success(r.data)));
|
2025-07-30 22:38:44 +07:00
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|