This commit is contained in:
Felipe
2024-03-15 16:55:01 -05:00
parent a3c50cf2c8
commit e5a8221edf
9 changed files with 337 additions and 115 deletions
@@ -1,11 +1,12 @@
import 'dart:async';
import 'dart:developer';
import 'dart:io';
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:professional_repository/professional_repository.dart';
import 'package:firebase_storage/firebase_storage.dart';
class FirebaseProfessionalRepository {
bool isProModeActive = false;
final professionalCollection =
FirebaseFirestore.instance.collection('professional_info');
@@ -28,4 +29,52 @@ class FirebaseProfessionalRepository {
Future<void> saveProfessionalInfo(ProfessionalEntity entity) async {
await professionalCollection.doc(entity.id).set(entity.toJson());
}
Future<String> uploadPdfCedula(String file, String userId) async {
try {
File pdfFile = File(file);
Reference firebaseStoreRef =
FirebaseStorage.instance.ref().child('$userId/PDF/${userId}_cedula');
await firebaseStoreRef.putFile(pdfFile);
String url = await firebaseStoreRef.getDownloadURL();
return url;
} catch (e) {
log(e.toString());
rethrow;
}
}
Future<String> uploadPdfCertificado(String file, String userId) async {
try {
File pdfFile = File(file);
Reference firebaseStoreRef = FirebaseStorage.instance
.ref()
.child('$userId/PDF/${userId}_certificado');
await firebaseStoreRef.putFile(pdfFile);
String url = await firebaseStoreRef.getDownloadURL();
return url;
} catch (e) {
log(e.toString());
rethrow;
}
}
Future<List<String>> uploadPdfsEspecializaciones(
List<String> files, String userId) async {
try {
List<String> urls = [];
for (String file in files) {
File pdfFile = File(file);
Reference firebaseStoreRef = FirebaseStorage.instance.ref().child(
'$userId/PDF/${userId}_${DateTime.now().millisecondsSinceEpoch}_especializacion');
await firebaseStoreRef.putFile(pdfFile);
String url = await firebaseStoreRef.getDownloadURL();
urls.add(url);
}
return urls;
} catch (e) {
log(e.toString());
rethrow;
}
}
}