From aa492121430e26a1d880544d96b1b3683f63b519 Mon Sep 17 00:00:00 2001 From: Florian Bezannier Date: Wed, 23 Dec 2020 09:51:05 +0100 Subject: [PATCH] update trips automatically --- MyPSACC.py | 3 ++- web/callback.py | 16 ++++++++++++++-- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/MyPSACC.py b/MyPSACC.py index 90f3553..125efa7 100644 --- a/MyPSACC.py +++ b/MyPSACC.py @@ -405,7 +405,8 @@ class MyPSACC: def set_record(self, value: bool): self._record_enabled = value - def record_position(self, vin, res: psac.models.status.Status): + @staticmethod + def record_position(vin, res: psac.models.status.Status): conn = sqlite3.connect('info.db') conn.execute( "CREATE TABLE IF NOT EXISTS position (Timestamp DATETIME PRIMARY KEY, VIN TEXT, longitude REAL, latitude REAL, mileage REAL, level INTEGER);") diff --git a/web/callback.py b/web/callback.py index 95c25a3..27e8d77 100644 --- a/web/callback.py +++ b/web/callback.py @@ -1,4 +1,5 @@ import json +import sqlite3 import traceback from datetime import datetime, timezone import dash_bootstrap_components as dbc @@ -33,7 +34,7 @@ def display_value(value): @app.route('/getvehicles') -def getvehicules(): +def get_vehicules(): return jsonify(myp.getVIN()) @@ -102,9 +103,16 @@ def after_request(response): header['Access-Control-Allow-Origin'] = '*' return response +def update_trips(): + global trips + logger.info("update_trips") + try: + trips = MyPSACC.get_trips() + except: + logger.error("update_trips: "+traceback.format_exc()) try: - trips = MyPSACC.get_trips() + update_trips() min_date = trips[0].start_at max_date = trips[-1].start_at min_millis = figures.unix_time_millis(min_date) @@ -146,3 +154,7 @@ dash_app.layout = dbc.Container(fluid=True, children=[ html.H1('My car info'), data_div ]) +conn = sqlite3.connect('info.db') +conn.create_function("update_trips",0,update_trips) +conn.execute("CREATE TRIGGER IF NOT EXISTS update_trigger AFTER INSERT ON position BEGIN SELECT update_trips(); END;") +conn.commit()