From 38692c43a716949ac80679c308bf896c8ad10d63 Mon Sep 17 00:00:00 2001 From: Sara <sarasdj@stud.ntnu.no> Date: Thu, 22 Feb 2024 10:58:51 +0100 Subject: [PATCH] update: sql_query, non-functional --- server/main.py | 8 +-- .../__pycache__/get_markers.cpython-311.pyc | Bin 4249 -> 3320 bytes server/map/get_markers.py | 49 +++++++----------- 3 files changed, 23 insertions(+), 34 deletions(-) diff --git a/server/main.py b/server/main.py index 92a0fa09..f44d0175 100644 --- a/server/main.py +++ b/server/main.py @@ -37,11 +37,11 @@ class IceHTTP(BaseHTTPRequestHandler): self.wfile.write(b"Root path hit!") elif self.path == '/update_map': # NB: should be POST? - get_all_markers(self, self.cursor, False) # Get all markers - + get_all_markers(self, self.cursor, False, 'Mjosa') # Get all markers + # NB: temporary hardcoded waterBodyName elif self.path == '/get_valid_markers': # NB: should be POST? - get_all_markers(self, self.cursor, True) # Get only valid markers - + get_all_markers(self, self.cursor, True, 'Mjosa') # Get only valid markers + # NB: temporary hardcoded waterBodyName def do_POST(self): if self.path == '/get_weather_data': get_weather(self) diff --git a/server/map/__pycache__/get_markers.cpython-311.pyc b/server/map/__pycache__/get_markers.cpython-311.pyc index 136fe074aa97b652908bd4f21f45768bb9a6020e..d7a54e2e927f314e198348cc16ce57c24ed6ba17 100644 GIT binary patch delta 1548 zcmaJ=O>7%Q6rT0&+PmxBwG(gtjkEbDBDir9T8XClY3ziQVj2h~5ek))*#y(XCTlw= z)h_11!HOzMGzUO3l98ek1cJheD@cJH*T_;WUkE3Z6AKlh;>0+%v7G}?GvAwU=Dj!X zz1jV^>v5a-nILcg%Ma}j6-wL}XD?7iS{4>-63<6}V*C)W01`T-SyWo1pyiGLfKKgy z+RAH`My?b0EdYFB+5g^`q{BeBYP27$e68Cw8zkE*0fEk7PE|Q(bRDzSF<TvD>KI$c zxGI}~_OwlBHAb`U0ChxTHLF(R3i+z(4xx6PKSf!h3oVh3BmwTmaS$66st%Zmb*$#z zxb43(0k(5g?d}t}HF%Z;I@6@aZV=d}p=tvg({wSFacp$=L7WBliapS*=nu=NgNx&i zS45-HDA`AFXqoKmbk$!#04V8p*rfB3R@kiD(I;ffWe(C`wv^te5(A$<-2>uMg#*wF zR9P3|j_M9<)dciA+0;^wxC|iBg?EGqQ_`q|>LKiCk{Tr2U^}`^y+-mGC;EnxEU*Lp zLiI52U}zeD8XOYoDV%SXcA*uf#Uh_AnN@Evw51H45g+uvoLKdTcfzr7G&1iWlA(7_ zjV9hIEnf&n!dr>0#W%uhw<Ag{HdG4nEc8zAC~9a!sX2k(86^@|)a#*mIG%t?F;sac z8rdjson30j?rUoaHMF+Np=0JL^fz-E9kJ6$XE}RKIw)fu>wNXOz)JzSl(T$Ap5)}R z+<8Wx4*JoXHXpKbJ;~GJpEGDH2sHub{RLaOnu7CuEd}TK8VX{41qDZmZ@w6un_qmz zA1E-DybHB?p5k7U;FLh$a$bT)zjFPA3kmk6Mt49}qpBQ^$lD1;-3>=J(4PG#uUMdB z%I12(ihB@?s%r6nF9>gkaPzK4;coGD3T$k9^VXRcQh2Yx#}cczVELKQS9~`uVka5p z_~qmjURm*st>Zl21*YYBg6=Rad=sByO*h~hOhB*;M4oRl+HPd|8>#sdM!YBPi687{ zt{B}TS!OiHj2g`7iKFRWaxa;6$T^3cqD(7rdkm%(YpK-)GTV3tshRu}a;71DGZi!$ z(A}5JEF3iFJ3Jq4r!VGv2M&pY*^27!%Y+X4^F95U?SqSXcV~u3&zcU#Et&vB>blts zoF1dgXE=)E#MNmGT>4JT4a^-2xq+L8t2pvfZ|3!!H1=R6C(S&RuKg@sJ08zUOF3!D zkd_{s9C}|I>F)DoCW`l{2bWA2H-<CCU^wNBC+i$GoWp;$qu<2$8ix-T3~?BbEaS^D zK7;Wg-LXFv=m>bgk%yaQ$fGBlXG!u$lE&*nQXRy7ReOsth2eAX2qRD@G5o`fZ$)8Z bQ<+d_P|)eVut*Rihmr}3`u|bAiv9luv)hR& literal 4249 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 DbTA~C diff --git a/server/map/get_markers.py b/server/map/get_markers.py index 13b97aa5..067f0af6 100644 --- a/server/map/get_markers.py +++ b/server/map/get_markers.py @@ -5,35 +5,24 @@ import json # the data to the response object def get_all_markers(self, cursor, valid: bool, waterBodyName): try: - # NB: interval temporarily hard coded to 5 days - if valid: - cursor.execute(''' - SELECT m.MeasurementID, m.SensorID, m.TimeMeasured, - s.SensorType, s.Active, - b.Name, - d.SubDivisionID, d.GroupID, d.MinimumThickness, - d.AverageThickness, d.CenterLatitude, d.CenterLongitude, - d.Accuracy - FROM Measurement m - INNER JOIN Sensor s ON m.SensorID = s.SensorID - INNER JOIN BodyOfWater b ON m.WaterBodyName = b.Name - LEFT JOIN SubDivision d ON m.MeasurementID = d.MeasurementID - WHERE m.TimeMeasured > DATE_SUB(NOW(), INTERVAL 5 DAY) & b.Name = ? - ''', waterBodyName) - else: - cursor.execute(''' - SELECT m.MeasurementID, m.SensorID, m.TimeMeasured, - s.SensorType, s.Active, - b.Name, - d.SubDivisionID, d.GroupID, d.MinimumThickness, - d.AverageThickness, d.CenterLatitude, d.CenterLongitude, - d.Accuracy - FROM Measurement m - INNER JOIN Sensor s ON m.SensorID = s.SensorID - INNER JOIN BodyOfWater b ON m.WaterBodyName = b.Name - LEFT JOIN SubDivision d ON m.MeasurementID = d.MeasurementID - WHERE b.Name = ? - ''', waterBodyName) + sql_query = ''' + SELECT m.MeasurementID, m.SensorID, m.TimeMeasured, + s.SensorType, s.Active, + b.Name, + d.SubDivisionID, d.GroupID, d.MinimumThickness, + d.AverageThickness, d.CenterLatitude, d.CenterLongitude, + d.Accuracy + FROM Measurement m + INNER JOIN Sensor s ON m.SensorID = s.SensorID + INNER JOIN BodyOfWater b ON m.WaterBodyName = b.Name + LEFT JOIN SubDivision d ON m.MeasurementID = d.MeasurementID + WHERE b.Name = ? + ''' + + if valid: # Append time restriction, NB temporarily hardcoded to 5 days + sql_query += ' AND m.TimeMeasured > DATE_SUB(NOW(), INTERVAL 5 DAY)' + + cursor.execute(sql_query, (waterBodyName,)) rows = cursor.fetchall() @@ -88,7 +77,7 @@ def get_all_markers(self, cursor, valid: bool, waterBodyName): marker_data = json.dumps(data, indent=4) except Exception as e: - print(f"An error occurred while querying the database: {e}") + print(f"Error in querying database: {e}") resp_code = 500 marker_data = '[]' -- GitLab