32 lines
948 B
Python
Raw Normal View History

import os
from google.cloud import firestore
from communicator import app
from communicator.models.sample import Sample
class FirebaseService(object):
"""Connects to the Google's Firecloud service to retrieve any records added by the tablets. """
def __init__(self):
resource_path = os.path.join(app.instance_path, 'firestore_service_key.json')
self.db = firestore.Client.from_service_account_json(resource_path)
def get_samples(self):
# Then query for documents
samples = self.db.collection(u'samples')
return samples
@staticmethod
def record_to_sample(fb_sample):
sample = Sample()
dictionary = fb_sample.to_dict()
sample.barcode = dictionary["id"]
sample.student_id = dictionary["barcodeId"]
sample.date = dictionary["createdAt"]
sample.location = dictionary["locationId"]
sample.in_firebase = True
return sample