Initial draft
This commit is contained in:
33
lib/feature/delivery/overview/bloc/tour_bloc.dart
Normal file
33
lib/feature/delivery/overview/bloc/tour_bloc.dart
Normal file
@ -0,0 +1,33 @@
|
||||
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"),
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
7
lib/feature/delivery/overview/bloc/tour_event.dart
Normal file
7
lib/feature/delivery/overview/bloc/tour_event.dart
Normal file
@ -0,0 +1,7 @@
|
||||
abstract class TourEvent {}
|
||||
|
||||
class LoadTour extends TourEvent {
|
||||
String teamId;
|
||||
|
||||
LoadTour({required this.teamId});
|
||||
}
|
||||
13
lib/feature/delivery/overview/bloc/tour_state.dart
Normal file
13
lib/feature/delivery/overview/bloc/tour_state.dart
Normal file
@ -0,0 +1,13 @@
|
||||
import '../../../../model/tour.dart';
|
||||
|
||||
abstract class TourState {}
|
||||
|
||||
class TourInitial extends TourState {}
|
||||
|
||||
class TourLoading extends TourState {}
|
||||
|
||||
class TourLoaded extends TourState {
|
||||
Tour tour;
|
||||
|
||||
TourLoaded({required this.tour});
|
||||
}
|
||||
Reference in New Issue
Block a user