From 5bf5a193b9d4f5e1a450698afe8eef5c2844d652 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Fri, 29 Mar 2024 15:18:36 +0100 Subject: [PATCH] Add getQuestionData route --- server/Flask/main.py | 21 ++++++++++++++++++--- server/Flask/queries.py | 7 +++++-- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/server/Flask/main.py b/server/Flask/main.py index c185937..7232c81 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -22,9 +22,13 @@ def getNodeInfoIndex(): macAdress = request.args.get('macAdress', None) return getNodeInfo(macAdress) +@app.route('/getQuestionData') +def getQuestionDataIndex(): + return getQuestionData() + def updateData(node, name, location): mydb = loginDB() - query = update_query(node, name, location) + query = update_query(node, name, location, False, False) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) mydb.commit() @@ -45,7 +49,7 @@ def loginDB(): def getData(node, dataType, MAC): mydb = loginDB() - query = get_query(node, dataType, MAC) + query = get_query(node, dataType, MAC, False, False) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results @@ -56,7 +60,18 @@ def getData(node, dataType, MAC): def getNodeInfo(macAdress): mydb = loginDB() - query = get_query(False, False, macAdress) + query = get_query(False, False, macAdress, False, False) + cursor = mydb.cursor(dictionary=True) # Enable dictionary output + cursor.execute(query) + result = cursor.fetchall() # Fetch the results + cursor.close() + mydb.close() + + return result + +def getQuestionData(): + mydb = loginDB() + query = get_query(False, False, False, True, False) 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 e2da308..dda5ff9 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -1,4 +1,4 @@ -def get_query(node, dataType, MAC): +def get_query(node, dataType, MAC, questionID, replies): if node and dataType: query = f"SELECT * FROM Measurement WHERE NodeID = {node} AND Type = '{dataType}'" elif node: @@ -7,12 +7,15 @@ def get_query(node, dataType, MAC): query = f"SELECT * FROM Measurement WHERE Type = '{dataType}'" elif MAC: query = f"SELECT * FROM Node WHERE MAC = '{MAC}'" + elif questionID: + query = f"SELECT * FROM Question" + elif replies: + query = f"SELECT * FROM Reply WHERE QuestionID = '{questionID}'" else: query = "SELECT * FROM `Measurement`" return query - def update_query(node, name, location): if node and name and location: query = f"""