services
This commit is contained in:
@@ -17,10 +17,14 @@ class ServiceBloc extends Bloc<ServiceEvent, ServiceState> {
|
||||
: _serviceRepository = serviceRepository,
|
||||
super(CreateServiceInitial()) {
|
||||
on<CreateService>(_onCreateService);
|
||||
on<LoadService>(_onLoadService);
|
||||
on<UpdateServiceStatus>(_onUpdateServiceStatus);
|
||||
}
|
||||
|
||||
void _onCreateService(CreateService event, Emitter<ServiceState> emit) async {
|
||||
try {
|
||||
emit(CreateServiceLoading());
|
||||
|
||||
ServiceEntity service = ServiceEntity(
|
||||
professionalId: event.professionalId,
|
||||
professionalScored: false,
|
||||
@@ -40,12 +44,37 @@ class ServiceBloc extends Bloc<ServiceEvent, ServiceState> {
|
||||
location: event.location,
|
||||
);
|
||||
|
||||
log('xd -- $service');
|
||||
String serviceId = await _serviceRepository.createService(service);
|
||||
|
||||
await _serviceRepository.createService(service);
|
||||
|
||||
emit(const CreateServiceSuccess());
|
||||
emit(CreateServiceSuccess(serviceId));
|
||||
} catch (e) {
|
||||
log(e.toString());
|
||||
emit(CreateServiceFailure());
|
||||
}
|
||||
}
|
||||
|
||||
void _onLoadService(LoadService event, Emitter<ServiceState> emit) async {
|
||||
try {
|
||||
final serviceStream = _serviceRepository.getService(event.serviceId);
|
||||
|
||||
await for (var service in serviceStream) {
|
||||
emit(ServiceLoaded(service));
|
||||
}
|
||||
} catch (e) {
|
||||
log(e.toString());
|
||||
emit(CreateServiceFailure());
|
||||
}
|
||||
}
|
||||
|
||||
void _onUpdateServiceStatus(
|
||||
UpdateServiceStatus event, Emitter<ServiceState> emit) async {
|
||||
try {
|
||||
emit(CreateServiceLoading());
|
||||
await _serviceRepository.updateServiceStatus(
|
||||
event.serviceId, event.newStatus);
|
||||
emit(ServiceStatusUpdated(event.newStatus));
|
||||
} catch (e) {
|
||||
log(e.toString());
|
||||
emit(CreateServiceFailure());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user