From 8333029c4f99de8660066ccab99d9ac2e82c6ebb Mon Sep 17 00:00:00 2001 From: Robert Goldmann <deadlocker@gmx.de> Date: Sun, 17 Jan 2021 10:53:26 +0100 Subject: [PATCH] v2.0.3; order measurements by timestamp descending --- src/logic/database/Crud.py | 14 ++++++++++---- src/logic/database/Schemas.py | 4 ++-- src/logic/routers/MeasurementRouter.py | 2 +- src/version.json | 4 ++-- 4 files changed, 15 insertions(+), 9 deletions(-) diff --git a/src/logic/database/Crud.py b/src/logic/database/Crud.py index 2256b16..5fe6860 100644 --- a/src/logic/database/Crud.py +++ b/src/logic/database/Crud.py @@ -117,11 +117,17 @@ def get_measurements(db: Session, startDateTime: str, endDateTime: str) -> List[ def get_measurements_for_sensor(db: Session, startDateTime: str, endDateTime: str, sensorId: int) -> List[Models.Measurement]: if startDateTime and endDateTime: - return db.query(Models.Measurement).filter(and_(startDateTime <= Models.Measurement.timestamp, - endDateTime >= Models.Measurement.timestamp, - Models.Measurement.sensor_id == sensorId)).all() + return db.query(Models.Measurement) \ + .filter(and_(startDateTime <= Models.Measurement.timestamp, + endDateTime >= Models.Measurement.timestamp, + Models.Measurement.sensor_id == sensorId)) \ + .order_by(Models.Measurement.timestamp.desc()) \ + .all() - return db.query(Models.Measurement).filter(Models.Measurement.sensor_id == sensorId).all() + return db.query(Models.Measurement) \ + .filter(Models.Measurement.sensor_id == sensorId) \ + .order_by(Models.Measurement.timestamp.desc()) \ + .all() def get_latest_measurement_for_sensor(db: Session, sensorId: int) -> Models.Measurement: diff --git a/src/logic/database/Schemas.py b/src/logic/database/Schemas.py index f6b6fec..44be90a 100644 --- a/src/logic/database/Schemas.py +++ b/src/logic/database/Schemas.py @@ -25,8 +25,8 @@ class Version(BaseModel): class MinMax(BaseModel): - min: float or None - max: float or None + min: float = None + max: float = None # ===== measurement ===== diff --git a/src/logic/routers/MeasurementRouter.py b/src/logic/routers/MeasurementRouter.py index c927cf3..af10479 100644 --- a/src/logic/routers/MeasurementRouter.py +++ b/src/logic/routers/MeasurementRouter.py @@ -70,7 +70,7 @@ async def get_min_and_max_for_sensor_ids(sensorIds: List[int] = Query(None), if values: return MinMax(min=min(values), max=max(values)) - return MinMax(min=None, max=None) + return MinMax() @router.post('/measurements/', response_model=Schemas.Status, diff --git a/src/version.json b/src/version.json index eb4dbd9..16a01eb 100644 --- a/src/version.json +++ b/src/version.json @@ -1,7 +1,7 @@ { "version": { - "name": "v2.0.3", - "code": 11, + "name": "v2.0.4", + "code": 12, "date": "17.01.21" } } \ No newline at end of file -- GitLab