deleteDocumentsByQuery method
Deletes existing documents from Firebase.
query
is query. If document will match that particular query
it will be deleted.
Implementation
Future<bool> deleteDocumentsByQuery(Query query) async {
try {
_loggingService.log('FirestoreHelper.deleteDocumentsByQuery: Deleting. Query: ${query.parameters}');
final querySnapshot = await query.get();
final futures = <Future>[];
querySnapshot.docs.forEach((element) {
_loggingService.log('FirestoreHelper.deleteDocumentsByQuery: Deleting. DocId: ${element.id}');
futures.add(element.reference.delete());
});
await Future.wait(futures);
return true;
} catch (e, s) {
_loggingService.log('FirestoreHelper.deleteDocumentsByQuery: Exception: $e. StackTrace: $s', logType: LogType.error);
return false;
}
}