Daily commit
This commit is contained in:
25
lib/bloc/tour/tour_bloc.dart
Normal file
25
lib/bloc/tour/tour_bloc.dart
Normal file
@ -0,0 +1,25 @@
|
||||
import 'package:app_gaslieferung/repository/tour_repository.dart';
|
||||
import 'package:bloc/bloc.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
|
||||
import 'tour_event.dart';
|
||||
import 'tour_state.dart';
|
||||
|
||||
class TourBloc extends Bloc<TourEvent, TourState> {
|
||||
TourRepository tour;
|
||||
|
||||
TourBloc({required this.tour}) : super(TourInitial()) {
|
||||
on<TourLoadEvent>(_onTourLoadEvent);
|
||||
}
|
||||
|
||||
void _onTourLoadEvent(TourLoadEvent event, Emitter<TourState> emit) async {
|
||||
emit(TourLoading());
|
||||
try {
|
||||
final tour = await this.tour.getTour(event.sessionId, event.carId);
|
||||
emit(TourLoaded(tour: tour));
|
||||
} catch (e, st) {
|
||||
debugPrint(st.toString());
|
||||
emit(TourLoadingFailed(message: e.toString()));
|
||||
}
|
||||
}
|
||||
}
|
||||
8
lib/bloc/tour/tour_event.dart
Normal file
8
lib/bloc/tour/tour_event.dart
Normal file
@ -0,0 +1,8 @@
|
||||
abstract class TourEvent {}
|
||||
|
||||
class TourLoadEvent extends TourEvent {
|
||||
String carId;
|
||||
String sessionId;
|
||||
|
||||
TourLoadEvent({required this.carId, required this.sessionId});
|
||||
}
|
||||
20
lib/bloc/tour/tour_state.dart
Normal file
20
lib/bloc/tour/tour_state.dart
Normal file
@ -0,0 +1,20 @@
|
||||
import 'package:app_gaslieferung/model/delivery.dart';
|
||||
import 'package:app_gaslieferung/model/tour.dart';
|
||||
|
||||
abstract class TourState {}
|
||||
|
||||
class TourInitial extends TourState {}
|
||||
|
||||
class TourLoaded extends TourState {
|
||||
Tour tour;
|
||||
|
||||
TourLoaded({required this.tour});
|
||||
}
|
||||
|
||||
class TourLoading extends TourState {}
|
||||
|
||||
class TourLoadingFailed extends TourState {
|
||||
String message;
|
||||
|
||||
TourLoadingFailed({required this.message});
|
||||
}
|
||||
Reference in New Issue
Block a user