def post(self): """Anlegen eines Benutzers""" adm = ApplikationsAdministration() test = Benutzer.from_dict(api.payload) if test is not None: a = adm.benutzer_anlegen(test.get_name(), test.get_email(), test.get_google_id()) return a, 200 else: return '', 500
def get(self, email): """Auslesen aller Artikel, die zu einem Benutzer gehören""" adm = ApplikationsAdministration() user = adm.get_benutzer_by_email(email) if user is not None: article = adm.get_all_artikel_of_benutzer(user) return article else: return "Benutzer nicht gefunden", 500
def post(self): """Anlegen eines Artikels""" adm = ApplikationsAdministration() test = Artikel.from_dict(api.payload) if test is not None: a = adm.artikel_anlegen(test) return a, 200 else: return '', 500
def post(self): """Anlegen eines Einzelhändlers""" adm = ApplikationsAdministration() test = Einzelhaendler.from_dict(api.payload) if test is not None: a = adm.einzelhaendler_anlegen(test) return a, 200 else: return '', 500
def get(self, email, von, bis): """Auslesen der meist gekauften Artikel bei einem durch Namen definierten Einzelhaendler""" adm = ApplikationsAdministration() user = adm.get_benutzer_by_email(email) if user is not None: stat = adm.get_top_artikel_5_by_datum(user, von, bis) return stat else: return "Benutzer nicht gefunden", 500
def get(self, id): """Auslesen aller Listeneinträge in einem durch Id definierten Einkaufsliste""" adm = ApplikationsAdministration() liste = adm.get_einkaufsliste_by_id(id) if liste is not None: listeneintraege = adm.get_all_listeneintraege_of_einkaufslisten(liste) return listeneintraege else: return "Einkaufsliste nicht gefunden", 500
def post(self): """Anlegen eines Anwenderverbundes""" adm = ApplikationsAdministration() test = Anwenderverbund.from_dict(api.payload) if test is not None: a = adm.anwenderverbund_anlegen(test.get_name()) return a, 200 else: return '', 500
def get(self, id): """Auslesen aller Einkaufslisten in einem durch Id definierten Anwenderverbund""" adm = ApplikationsAdministration() verbund = adm.get_anwenderverbund_by_id(id) if verbund is not None: einkaufslisten = adm.get_all_einkaufslisten_of_anwenderverbund(verbund) return einkaufslisten else: return "Anwenderverbund nicht gefunden", 500
def get(self, email): """Auslesen der meist gekauften Artikel""" adm = ApplikationsAdministration() user = adm.get_benutzer_by_email(email) if benutzer is not None: stat = adm.get_top_artikel_5(benutzer) return stat else: return "Benutzer nicht gefunden", 500
def post(self): """Anlegen eines Listeneintrages""" adm = ApplikationsAdministration() test = Listeneintrag.from_dict(api.payload) if test is not None: a = adm.listeneintrag_anlegen(test) return a, 200 else: return '', 500
def put(self, id): """Update eines durch eine id bestimmten Artikel""" adm = ApplikationsAdministration() a = Artikel.from_dict(api.payload) if a is not None: a.set_id(id) adm.update_artikel(a) return '', 200 else: return '', 500
def post(self, id): """Hinzufügen eines Benutzers in einen Anwenderverbund""" adm = ApplikationsAdministration() verbund = adm.get_anwenderverbund_by_id(id) mitglied = Benutzer.from_dict(api.payload) if verbund is not None: adm.mitglieder_zum_anwenderverbund_hinzufuegen(verbund, mitglied) return mitglied else: return "Benutzer oder Anwenderverbund unbekannt", 500
def delete(self, id): """Löschen eines Benutzers in einem Anwenderverbund""" adm = ApplikationsAdministration() verbund = adm.get_anwenderverbund_by_id(id) mitglied = Benutzer.from_dict(api.payload) if verbund is not None: adm.mitglieder_vom_anwenderverbund_entfernen(verbund, mitglied) return mitglied else: return "Benutzer oder Anwenderverbund unbekannt", 500
def post(self, email): """Anlegen einer Einkaufsliste""" adm = ApplikationsAdministration() user = adm.get_benutzer_by_email(email) test = Einkaufsliste.from_dict(api.payload) if test is not None: a = adm.einkaufsliste_anlegen(test, user) return a, 200 else: return '', 500
def put(self, id): """Update einer durch id bestimmten Einkaufsliste""" adm = ApplikationsAdministration() a = Einkaufsliste.from_dict(api.payload) if a is not None: a.set_id(id) adm.update_einkaufsliste(a) return '', 200 else: return '', 500
def put(self, id): """Update eines durch eine id bestimmten Einzelhändlers""" adm = ApplikationsAdministration() a = Einzelhaendler.from_dict(api.payload) if a is not None: a.set_id(id) adm.update_einzelhaendler(a) return '', 200 else: return '', 500
def put(self, id): """Update eines durch eine id bestimmten Listeneintrag""" adm = ApplikationsAdministration() eintrag = Listeneintrag.from_dict(api.payload) if eintrag is not None: eintrag.set_id(id) eintrag.set_aenderungs_zeitpunkt_now() new_eintrag = adm.update_listeneintrag(eintrag) return new_eintrag , 200 else: return '', 500
def get(self, email): """Auslesen aller Anwenderverbünde für einen durch Email definierten Benutzer""" adm = ApplikationsAdministration() user = adm.get_benutzer_by_email(email) if benutzer is not None: anwenderverbund_ids = adm.get_anwenderverbuende_by_benutzer_email(user) result = [] for i in anwenderverbund_ids: anwenderverbund_objekt = adm.get_anwenderverbund_by_id(i) result.append(anwenderverbund_objekt) return result else: return "Benutzer nicht gefunden", 500
def get(self, id): """Auslesen aller Mitglieder in einem durch Id definierten Anwenderverbund""" adm = ApplikationsAdministration() verbund = adm.get_anwenderverbund_by_id(id) if verbund is not None: mitglieder_id = adm.mitglieder_zum_anwenderverbund_ausgeben(verbund) benutze_objekte = [] for i in mitglieder_id: benutze_objekt = adm.get_benutzer_by_id(i) benutze_objekte.append(benutze_objekt) return benutze_objekte else: return "Anwenderverbund nicht gefunden", 500
def delete(self, id): """Löschen eines Artikels anhand einer id""" adm = ApplikationsAdministration() article = adm.get_artikel_by_id(id) adm.delete_artikel(article) return '', 200
def delete(self, id): """Löschen eines Listeneintrages anhand einer id""" adm = ApplikationsAdministration() eintrag = adm.get_listeneintrag_by_id(id) adm.delete_listeneintrag(eintrag) return eintrag
def get(self, email): """Auslesen aller Einzelhändler anhand einer Benutzer-Email""" adm = ApplikationsAdministration() user = adm.get_benutzer_by_email(email) haendler = adm.get_all_einzelhaendler(user) return haendler
def delete(self, id): """Löschen eines Einzelhändlers anhand einer id""" adm = ApplikationsAdministration() haendler = adm.get_einzelhaendler_by_id(id) adm.delete_einzelhaendler(haendler) return '', 200
def delete(self, id): """Löschen eines Anwenderverbundes anhand einer id""" adm = ApplikationsAdministration() verbund = adm.get_anwenderverbund_by_id(id) adm.delete_anwenderverbund(verbund) return ''
def get(self, name): """Auslesen eines bestimmten Einzelhändlers anhand dessen Namen""" adm = ApplikationsAdministration() haendler = adm.get_einzelhaendler_by_name(name) return haendler
def get(self, name): """Auslesen eines bestimmten Benutzers anhand seines Namen""" adm = ApplikationsAdministration() user = adm.get_benutzer_by_name(name) return user
def get(self, email): """Auslesen eines bestimmten Benutzers anhand seiner Email""" adm = ApplikationsAdministration() user = adm.get_benutzer_by_email(email) return user
def delete(self, id): """Löschen einer Einkaufsliste anhand einer id""" adm = ApplikationsAdministration() liste = adm.get_einkaufsliste_by_id(id) adm.delete_einkaufsliste(liste) return ''
def wrapper(*args, **kwargs): # Verify Firebase auth. id_token = request.cookies.get("token") error_message = None claims = None objects = None if id_token: try: # Verify the token against the Firebase Auth API. This example # verifies the token on each page load. For improved performance, # some applications may wish to cache results in an encrypted # session store (see for instance # http://flask.pocoo.org/docs/1.0/quickstart/#sessions). claims = google.oauth2.id_token.verify_firebase_token( id_token, firebase_request_adapter) if claims is not None: adm = ApplikationsAdministration() google_user_id = claims.get("user_id") email = claims.get("email") name = claims.get("name") user = adm.get_user_by_google_user_id(google_user_id) # Benennen wie in ApplikationsAdministration if user is not None: """Fall: Der Benutzer ist unserem System bereits bekannt. Wir gehen davon aus, dass die google_user_id sich nicht ändert. Wohl aber können sich der zugehörige Klarname (name) und die E-Mail-Adresse ändern. Daher werden diese beiden Daten sicherheitshalber in unserem System geupdated.""" user.set_name(name) user.set_email(email) adm.update_benutzer(user) #set_name und set_email benennen wie in Benutzer.py #adm.save-user benennen wie in ApplikationsAdministration.py else: """Fall: Der Benutzer war bislang noch nicht eingelogged. Wir legen daher ein neues User-Objekt an, um dieses ggf. später nutzen zu können. """ user = adm.benutzer_anlegen(name, email, google_user_id) #Benennen wie in ApplikationsAdministration print(request.method, request.path, "angefragt durch:", name, email) objects = function(*args, **kwargs) return objects else: return '', 401 # UNAUTHORIZED !!! except ValueError as exc: # This will be raised if the token is expired or any other # verification checks fail. error_message = str(exc) return exc, 401 # UNAUTHORIZED !!! return '', 401 # UNAUTHORIZED !!!
def get(self, name): """Auslesen eines bestimmten Artikel anhand dessen Namen""" adm = ApplikationsAdministration() article = adm.get_artikel_by_name(name) return article