Display devices and there status

This commit is contained in:
Peter Stockings
2023-01-24 20:16:12 +11:00
parent a0969c63db
commit 5dc2b866f4
5 changed files with 52 additions and 0 deletions

14
db.py
View File

@@ -42,3 +42,17 @@ class DataBase():
def get_all_cadences(self):
return self.execute('SELECT * FROM cadence')
def get_devices(self):
return self.execute("""
SELECT DEVICE.ID,
DEVICE.NAME,
MAX(CADENCE.LOGGED_AT) AS LAST_LOGGED_AT,
CASE WHEN(NOW() < (MAX(CADENCE.LOGGED_AT) + (INTERVAL '5 min'))) THEN 'yes'
ELSE 'no'
END AS IS_ACTIVE
FROM DEVICE
LEFT JOIN CADENCE ON DEVICE.ID = CADENCE.DEVICE_ID
GROUP BY DEVICE.ID
ORDER BY LAST_LOGGED_AT
""")