fix orm issues, on report last 100

This commit is contained in:
cgte 2021-10-06 13:59:39 +00:00
parent a788958ac5
commit 844aa68c57
2 changed files with 10 additions and 5 deletions

View File

@ -98,7 +98,11 @@ def list_notification(idsonde: str):
@app.get("/notifications/{idsonde}/text")
def list_notification_as_text(request: Request, idsonde: str):
content = notifications[idsonde][-1]
notifs = notifications[idsonde]
try:
content =notifs[-1]
except IndexError:
return
try:
recipients = sondeid2notifsemails(idsonde)
except KeyError:
@ -207,10 +211,9 @@ def list_notification_as_text(
if message.endswith(k):
return "color: %s;" % v
return ""
if not (sonde := crud.get_sonde(db, idsonde)):
return
mesures = sonde.mesures
mesures = [x for x in crud.get_mesure(db, sonde.sonde_id, only_last=100)]
res = []

View File

@ -25,9 +25,11 @@ def create_mesure(db: Session, sonde_id: int, content: dict):
return db_mesure
def get_mesure(db: Session, sonde_id: int, only_last=False):
def get_mesure(db: Session, sonde_id: int, only_last: int =0):
q = db.query(models.Mesure).filter(models.Mesure.sonde_id == sonde_id)
if not only_last:
return q.all()
else:
return [q.all()[-1]] # order by id desc limit 1
q = q.order_by(models.Mesure.mesure_id.desc()).limit(only_last)
return reversed(q.all()) # order by id desc limit 1