From 4ab7709c8203e2085ebb6bdbcef14845cfbc8f54 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 14:41:02 +0200 Subject: [PATCH] Refactor getData function and fix query bug --- server/Flask/main.py | 4 ++-- server/Flask/queries.py | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/server/Flask/main.py b/server/Flask/main.py index 349cf99..029b1e0 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -49,9 +49,9 @@ def loginDB(): ) return mydb -def getData(node, dataType, MAC, dateStart, dateEnd): +def getData(node, dataType, MAC, dateStart, dateEnd, type): mydb = loginDB() - query = get_query(node, dataType, MAC, False, False, dateStart, dateEnd) + query = get_query(node, dataType, MAC, dateStart, dateEnd, type) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results diff --git a/server/Flask/queries.py b/server/Flask/queries.py index 2257b79..8c6d004 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -1,12 +1,12 @@ def get_query(node, dataType, MAC, questionID, replies, dateStart, dateEnd): - if dateStart and dateEnd and node: + if dateStart and dateEnd and node and dataType: + query = f'''SELECT * + FROM Measurement + WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}' AND NodeID = {node} AND Type IN {dataType} OR;''' + elif dateStart and dateEnd and node: query = f'''SELECT * FROM Measurement WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}' AND NodeID = {node};''' - elif dateStart and dateEnd: - query = f'''SELECT * - FROM Measurement - WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}';''' elif node and dataType: query = f"SELECT * FROM Measurement WHERE NodeID = {node} AND Type = '{dataType}'" elif node: