This commit is contained in:
Felipe
2024-04-05 11:56:45 -05:00
parent f46450e5db
commit e82c7c3afd
18 changed files with 1297 additions and 546 deletions
@@ -1,13 +1,30 @@
import 'dart:developer';
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:service_repository/service_repository.dart';
class FirebaseServiceRepository {
final serviceCollection = FirebaseFirestore.instance.collection('services');
final serviceCollection =
FirebaseFirestore.instance.collection('services v2');
Future<void> createService(ServiceEntity entity) async {
log('xd -- ${entity.toString()}');
await serviceCollection.add(entity.toDocument());
Future<String> createService(ServiceEntity entity) async {
DocumentReference<Map<String, dynamic>> docRef =
await serviceCollection.add(entity.toDocument());
return docRef.id;
}
Stream<ServiceEntity> getService(String serviceId) {
return serviceCollection.doc(serviceId).snapshots().map((snapshot) {
if (snapshot.exists) {
return ServiceEntity.fromDocument(snapshot.data()!);
} else {
throw Exception('El servicio con ID $serviceId no existe');
}
});
}
Future<void> updateServiceStatus(
String serviceId, ServiceStatus newStatus) async {
await serviceCollection
.doc(serviceId)
.update({'status': enumToIntService(newStatus)});
}
}