diff --git a/app.py b/app.py index 1086369..2d4fe4e 100644 --- a/app.py +++ b/app.py @@ -44,12 +44,28 @@ def entryPoint(): def serve_vue_app(): return send_from_directory(FlaskApp.static_folder, 'index.html') - -@FlaskApp.route("/route", method=['GET']) -def getRoute(): - # TODO: will contact gpx handler to get geoJSON from - return "not implemented", 500 - +@FlaskApp.route("/track", method=['GET']) +def getTrack(): + + if "start" in request.args and "end" in request.args or "track" in request.args: + if "start" in request.args and "end" in request.args: + # get tracks by filter + try: + return __gpxHandler.getTracksInTime(request.args["start"], request.args["end"]), 200 + except Exception as e: + return f"error {e}", 500 + + elif "track" in request.args: + # get track by id + try: + return __gpxHandler.getTrack(int(request.args["track"])), 200 + except Exception as e: + return f"error {e}", 500 + + pass + else: + # gets all tracks as list + return __gpxHandler.getTracks() @FlaskApp.route("/driver", methods=['GET', 'POST']) def handleDriverRoute(): @@ -81,9 +97,6 @@ def handleDriverRoute(): except Exception as e: return "error" + " " + str(e), 500 - return "not implemented", 500 - - @FlaskApp.route("/vehicle", methods=['GET', 'POST']) def handleVehicleRoute(): @@ -118,9 +131,6 @@ def handleVehicleRoute(): except Exception as e: return "error" + " " + str(e), 500 - return "not implemented", 500 - - @FlaskApp.route('/upload', methods=['POST']) def uploadFile(): if 'file' not in request.files: