datos para el servicio

This commit is contained in:
Felipe
2024-04-03 10:58:46 -05:00
parent d7fe33cf30
commit f46450e5db
15 changed files with 470 additions and 169 deletions
@@ -8,14 +8,17 @@ import 'package:professional_repository/professional_repository.dart';
import 'package:firebase_storage/firebase_storage.dart';
class FirebaseProfessionalRepository {
final professionalCollection = FirebaseFirestore.instance.collection('professional_info');
final professionalCollection =
FirebaseFirestore.instance.collection('professional_info');
ProfessionalEntity? _proInfo;
final StreamController<ProfessionalEntity?> _proInfoBroadcast = StreamController<ProfessionalEntity?>.broadcast();
final StreamController<ProfessionalEntity?> _proInfoBroadcast =
StreamController<ProfessionalEntity?>.broadcast();
bool isProModeActive = false;
final StreamController<bool> _isProModeActiveBroadcast = StreamController.broadcast();
final StreamController<bool> _isProModeActiveBroadcast =
StreamController.broadcast();
FirebaseProfessionalRepository() {
_isProModeActiveBroadcast.add(isProModeActive);
@@ -48,7 +51,6 @@ class FirebaseProfessionalRepository {
_proInfo = proInfo;
_proInfoBroadcast.add(proInfo);
} catch (e) {
log('xd -- Error updating from firebase ${e.toString()}');
_proInfo = null;
_proInfoBroadcast.add(null);
}
@@ -177,7 +179,8 @@ class FirebaseProfessionalRepository {
Future<List<ProfessionalEntity>> getProfessionalInfo() async {
try {
QuerySnapshot<Map<String, dynamic>> querySnapshot = await professionalCollection.get();
QuerySnapshot<Map<String, dynamic>> querySnapshot =
await professionalCollection.get();
return querySnapshot.docs
.map((e) => ProfessionalEntity.fromDocument(e.data()))
.toList();
@@ -19,7 +19,7 @@ class ServiceEntity extends Equatable {
final TimeOfDay range1Hour2;
final String rate;
final ServiceStatus status;
final LocationPreferences location;
final ServiceLocationPreferences location;
const ServiceEntity({
required this.professionalId,
@@ -1,11 +0,0 @@
export 'location_preferences.dart';
enum LocationPreferences { office, delivery }
int enumToInt(LocationPreferences state) {
return state.index;
}
LocationPreferences intToEnum(int value) {
return LocationPreferences.values[value];
}
@@ -1,2 +1,2 @@
export 'location_preferences.dart';
export 'service_location_preferences.dart';
export 'service_status.dart';
@@ -0,0 +1,11 @@
export 'service_location_preferences.dart';
enum ServiceLocationPreferences { office, delivery }
int enumToInt(ServiceLocationPreferences state) {
return state.index;
}
ServiceLocationPreferences intToEnum(int value) {
return ServiceLocationPreferences.values[value];
}
@@ -1,3 +1,5 @@
import 'dart:developer';
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:service_repository/service_repository.dart';
@@ -5,6 +7,7 @@ class FirebaseServiceRepository {
final serviceCollection = FirebaseFirestore.instance.collection('services');
Future<void> createService(ServiceEntity entity) async {
await serviceCollection.doc().set(entity.toDocument());
log('xd -- ${entity.toString()}');
await serviceCollection.add(entity.toDocument());
}
}