Files
Holzleitner-Lieferservice-App/lib/feature/delivery/overview/bloc/tour_bloc.dart
Dennis Nemec b19a6e1cd4 Initial draft
2025-09-20 16:14:06 +02:00

34 lines
1.2 KiB
Dart

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<TourEvent, TourState> {
OperationBloc opBloc;
TourRepository deliveryRepository;
TourBloc({required this.opBloc, required this.deliveryRepository})
: super(TourInitial()) {
on<LoadTour>(_load);
}
Future<void> _load(LoadTour event, Emitter<TourState> emit) async {
opBloc.add(LoadOperation());
try {
Tour tour = await deliveryRepository.loadAll(event.teamId);
List<Payment> 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"),
);
}
}
}