import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:hl_lieferservice/feature/delivery/overview/bloc/tour_event.dart'; import 'package:hl_lieferservice/feature/delivery/overview/bloc/tour_state.dart'; import 'package:hl_lieferservice/feature/delivery/overview/repository/tour_repository.dart'; import 'package:hl_lieferservice/model/tour.dart'; import 'package:hl_lieferservice/widget/operations/bloc/operation_bloc.dart'; import 'package:hl_lieferservice/widget/operations/bloc/operation_event.dart'; class TourBloc extends Bloc { OperationBloc opBloc; TourRepository deliveryRepository; TourBloc({required this.opBloc, required this.deliveryRepository}) : super(TourInitial()) { on(_load); } Future _load(LoadTour event, Emitter emit) async { opBloc.add(LoadOperation()); try { Tour tour = await deliveryRepository.loadAll(event.teamId); List payments = await deliveryRepository.loadPaymentOptions(); tour.paymentMethods = payments; emit(TourLoaded(tour: tour)); opBloc.add(FinishOperation()); } catch (e) { opBloc.add( FailOperation(message: "Fehler beim Laden der heutigen Fahrten"), ); } } }