28 lines
930 B
Dart
28 lines
930 B
Dart
import 'package:app_gaslieferung/model/car.dart';
|
|
import 'package:app_gaslieferung/repository/tour_repository.dart';
|
|
import 'package:bloc/bloc.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'event.dart';
|
|
import 'state.dart';
|
|
|
|
class TourSelectBloc extends Bloc<TourSelectEvent, TourSelectState> {
|
|
TourRepository repository;
|
|
|
|
TourSelectBloc({required this.repository}) : super(TourSelectInitial()) {
|
|
on<TourSelectLoadMetadataEvent>(_onTourSelectLoadCarsEvent);
|
|
}
|
|
|
|
void _onTourSelectLoadCarsEvent(
|
|
TourSelectLoadMetadataEvent event,
|
|
Emitter<TourSelectState> emit,
|
|
) async {
|
|
emit(TourSelectLoading());
|
|
try {
|
|
emit(TourSelectLoaded(data: await repository.getSupplierTourMetadata(event.sessionId)));
|
|
} catch (e,st) {
|
|
debugPrint("Error on loading cars: $e\n$st");
|
|
emit(TourSelectError(message: "Es ist ein unbekannter Fehler aufgetreten. Versuchen Sie es erneut."));
|
|
}
|
|
}
|
|
}
|