Daily commit

This commit is contained in:
Dennis Nemec
2026-02-05 10:46:13 +01:00
parent 4e808e234d
commit e0007dcf33
51 changed files with 2131 additions and 139 deletions

View File

@ -1,14 +1,27 @@
import 'package:app_gaslieferung/repository/tour_select_repository.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> {
TourSelectRepository repository;
TourRepository repository;
TourSelectBloc({required this.repository}) : super(TourSelectInitial()) {
on<TourSelectEvent>((event, emit) {
// TODO: handle event
});
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."));
}
}
}

View File

@ -1,5 +1,7 @@
abstract class TourSelectEvent {}
class TourSelectLoadingEvent extends TourSelectEvent {}
class TourSelectLoadedEvent extends TourSelectEvent {}
class TourSelectErrorEvent extends TourSelectEvent {}
class TourSelectLoadMetadataEvent extends TourSelectEvent {
String sessionId;
TourSelectLoadMetadataEvent({required this.sessionId});
}

View File

@ -1,3 +1,19 @@
import 'package:app_gaslieferung/model/supplier.dart';
abstract class TourSelectState {}
class TourSelectInitial extends TourSelectState {}
class TourSelectInitial extends TourSelectState {}
class TourSelectLoading extends TourSelectState {}
class TourSelectLoaded extends TourSelectState {
SupplierTourMetadata data;
TourSelectLoaded({required this.data});
}
class TourSelectError extends TourSelectState {
String message;
TourSelectError({required this.message});
}