diff --git a/server/Flask/main.py b/server/Flask/main.py index d2951f0..7da2986 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -1,15 +1,16 @@ from flask import Flask, request import mysql.connector - +from queries import * app = Flask(__name__) @app.route('/') def index(): node = request.args.get('node', default = None) dataType = request.args.get('dataType', default = None) - return getData(node, dataType) + MAC = request.args.get('MAC', default = None) + return getData(node, dataType, MAC) -def getData(node, dataType): +def getData(node, dataType, MAC): try: mydb = mysql.connector.connect( host="localhost", @@ -17,20 +18,12 @@ def getData(node, dataType): password="Dingleberries69!", database="NodeData" ) -#turn this into a switch statement - cursor = mydb.cursor() - if node: - query = f"SELECT * FROM Measurement WHERE NodeID = {node}" - elif dataType: - query = f"SELECT * FROM Measurement WHERE Type = '{dataType}'" - else: - query = "SELECT * FROM `Measurement`" + + query = get_query(node, dataType, MAC) + cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results - # Convert the results to a string for display - result_str = ', '.join([str(row) for row in result]) - cursor.close() mydb.close() diff --git a/server/Flask/queries.py b/server/Flask/queries.py new file mode 100644 index 0000000..c9aae44 --- /dev/null +++ b/server/Flask/queries.py @@ -0,0 +1,12 @@ +def get_query(node, dataType, MAC): + if node and dataType: + query = f"SELECT * FROM Measurement WHERE NodeID = {node} AND Type = '{dataType}'" + elif node: + query = f"SELECT * FROM Measurement WHERE NodeID = {node}" + elif dataType: + query = f"SELECT * FROM Measurement WHERE Type = '{dataType}'" + elif MAC: + query = f"SELECT * FROM Node WHERE MAC = '{MAC}'" + else: + query = "SELECT * FROM `Measurement`" + return query