From 60e6ae3eac51cdb8946d8c19bcdb6d1d08ba0337 Mon Sep 17 00:00:00 2001
From: Sara <sarasdj@stud.ntnu.no>
Date: Thu, 11 Apr 2024 13:20:57 +0200
Subject: [PATCH] update: buggy, first attempt to implement ice stats

---
 .../getIceThicknessLakes.cpython-311.pyc      | Bin 0 -> 12932 bytes
 server/consts.py                              |   2 -
 .../get_measurements.cpython-311.pyc          | Bin 4144 -> 4670 bytes
 .../input_new_data.cpython-311.pyc            | Bin 3108 -> 3074 bytes
 server/map_handler/get_measurements.py        | 129 +-----------------
 5 files changed, 7 insertions(+), 124 deletions(-)
 create mode 100644 server/ModelFromNVE/icemodellingscripts/__pycache__/getIceThicknessLakes.cpython-311.pyc

diff --git a/server/ModelFromNVE/icemodellingscripts/__pycache__/getIceThicknessLakes.cpython-311.pyc b/server/ModelFromNVE/icemodellingscripts/__pycache__/getIceThicknessLakes.cpython-311.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..dbdeee0ef194c9bd40333ba43d750871ae4b282c
GIT binary patch
literal 12932
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
M5>!2m1JC{c09&_TDgXcg

literal 0
HcmV?d00001

diff --git a/server/consts.py b/server/consts.py
index da41c583..a667ac84 100644
--- a/server/consts.py
+++ b/server/consts.py
@@ -12,5 +12,3 @@ SSL_CERT_PATH = CERT_DIR + "testCert.crt"
 # File paths
 MAP_HANDLER_PATH = "server/map_handler/"
 LAKE_RELATIONS_PATH = MAP_HANDLER_PATH + "lake_relations/"
-PLOT_PATH = "server/ModelFromNVE/output/plots/"
-
diff --git a/server/map_handler/__pycache__/get_measurements.cpython-311.pyc b/server/map_handler/__pycache__/get_measurements.cpython-311.pyc
index 314075cb96602386e95eef9e467a519de7802523..f8e3968878f7c56a0b929781e777cc9c39aa4023 100644
GIT binary patch
delta 1867
zcmb_cO>7fK6rS;V?Ol7l&VQVcCL8iY6D1K1K`kgk1&I>W08t60SVG2lCdP@qPG=_x
zMeBwGs;J6=Xb$DT!AKR*(gRg5Tw3)O)E;U}Mv5$P>7~srZN;Sr)Hg{T+f}*sX?Og-
z_ujtu`MsHWY<=HvJ_v;Z2xNS{eJ<9#W=8PL+P=N3h$v|#<BfVTB8Yg?YQ`7!W&BY;
zVD$!yYQ#tNIS=vQ@J0g!pG8C3rc85s2$wYy=ai>16m)%N`pj%>=IHFykf$6<QXXUR
zm6!~0%5A9xjV-cl(#|?5r{ahw6omH5T-(wBD;Ut9(<(xrBOMW(Q(T-!YfnZo7C(CS
z3Jn{pxADa{b3WHcJRLjV!J6{}R%);Y*js~jz-kQ+=!ip=iV&Zx5x*NCnj5(9L+BB_
zJAx7SS9FB9j#_t-tGPOa1La4GXi(c$bHTctx*M$Jc;5qo@a_mk@VSo!s+<4?>yS}{
zpb+>&RSOSRG9d&W87msqR&fU#5n#D1|0X$0%)5HdaQ&{jjM%tqxT@=~rX}I3zKmJ#
ztG)T%7D45go=zV|w_dn@@t$W`-1L|hkZP&s;^AFJl5T4Uk{x@UwB1!)BZ*1-U7sv9
z2~oH4twX%ACS1+yF#I=GL%iC1<c98J=qJ28LOcuGy=85@y<$UX-l*s#lEn32<V^b&
zv2KVoece$%ubeq(&-WqTSxJacKVlbi;kuD`x?z!5T9rLHQ<&b!G166E6Q+*xHLa*7
zBd?L}`ik4J4dN?rf9C}_nYr-CVO!hzUBN5ps&WCX;GHTx|3j61hjx3OZ>sXDYOa}Y
zuA-_&ED=!qJiVvColzan`D+np>2i#umSZVmU8ZwcMy*6Vojz<`Yqu;bL2XW%m5y^O
zZWAkQC&8hB<5~dj2+QGd?i}8f8+cP*R-1C0Z<?^hHvE6!i1<nC>FznsSe98S+k#7m
zr|hJap>b!4(G28vgsQ(a&{Fo(t2D91X<3`2JaGjGl+{I+vN@B-p2^KCKF~kK4dNGl
zIiSn?X}h*K9~e;OO=OAdfmG`>X!86!VL0a3(Uyl|b&m)KkNGC_rr*(oI3FCHdC`JG
zO@*eBhx3KQXA9?Ih0Do8$|)MWWblH)pGO9s4Ng9ZKJ5fwaqv=U@KP}nFGb=vPd+yq
zZ;#~lhrM4IMPsyNj24X1Elqq9oalJoHS}!w?H@XyMhh1b#bHt!CdDpV>Z0Pi-~(I~
z)cCOJz++r655QB@CQ8~wL7Nc28JBRII2p>ep9r2X(YhI!I;gBijy6y2SDx-yrw)pr
zL*Ml7fxncNcP&CMR~5v%ck%o-*2F!tzvoLdgxM)@Ir5lU>|I#dNM-p*{A%7=4YF}C
zlzj}QnawbnvmA0LTc&I*k+mJ}Ft4;t{$o3pB{cmG%Vti$e|!wOo{=~WLv#`>waA?@
znCZy`oxPGuEZEd>rsE6Lsm_eaft1y`bT-Z<l>x-gfQ8M-Me_Sgn}n20X?ld611O0*
kpNaMG$dL`ySEzqBkX`t%XUm(#czg@htVH-52E4M$-#9sjdjJ3c

delta 1345
zcmbVMO>7%Q6n?YgUGIPVlf<!;#wLkcrL?LO3W`XDM5QPJRjClCMy=?U*+fp_H63pf
zK)VfxB5|k$(Hy8mkbG)E;ZW2AJyg9xuP)?(f~dsNoGdsXfk4cxNxVkl!f5BseDl8j
z-kUeG`)J}`$-Zk@I`FphRc^VM*|CSv*_{((HGC76FiE(HWr@f)6H78dufwF$64b>>
zbf6N)cl}D$eG`kNf11fhfq!iz06qo{e01mnASjUTNC11hcNzjBg*ZSB#L{wh=g$I?
z#DqPIhPSVL8!CZ9aQ=`CVUpuS467W=F|2W{#IUYGAUMhH8b@jm(qc#pbne%qmBA>i
zpFD~V+@<B&PdGP53}WtTp%Eklc@yY#U<7gy3qmaRR61r^UFk+b?CUuQj61v_dq+h<
zaO)$kq7b{w<*2WV*fc(w_Klu2vQZkxN&hYmj1@!%b`_DpIZnFuoo~gsaw8cP^anh;
zZTjh$$Lvjn;I-&f=%AnNvR0#;Aut(SLA`H;miHgrz$B?Ja=j-VTIaphaqv53jUr3{
zy%O3z7i1`~KY>rB-a!14<U=cfhAFm^15)_6pZhG~8vrs)MtTDyV2kn)dnl(yF9Ctj
zzF~W6XWT+t@HV~#TPP-e?0<=8jlRRGHBurK83L=37BdWFl&Q-2cyaOF;ss~TEqPAW
zEmgeIitE2ob)EVKb*rxD*Iz8%KdscIftJR#TB7tVaqcafo6p&A>Mv-J{j3#-N9HK4
zQK4{s!=>+3yp<CF7@ccQ-DM~A88vetzeOva&#vnI?0x+M)W>XNlYMARBt(|%fl)dB
z3ZJOF*B|m@e-GNyH6#!Js9H_?%)R^*b#`B!ZK|{E1@pX8)-r7<vm54VsXfI0Fwf%e
zM@HF#br&^R+q#}9fA(6_F7xM!I<>D(HPtCrx38jpwr|&RbI;Gsz}GYSd=Y;my_}sd
z;Kv1dzQ~sPzI;Yp^7YQ&<F9QDbmR!HMp$O2QWIlT{8J_oeN|*DKAaL=;Fg{|G@GoJ
zy1k&#GG91QsN<1Zl?quZHhCZ~uh$&ELl;u?f-pkjclBJgMmE;nm*_<fg?8Oxd+Ae!
bw!VhYbQ@y!GS*Syw#!PHJUf$-<w)jlm`?ii

diff --git a/server/map_handler/__pycache__/input_new_data.cpython-311.pyc b/server/map_handler/__pycache__/input_new_data.cpython-311.pyc
index 7f959582f8d78d8341fb2f14b0c7bfc033a99259..6b7334b408e14cb1b5f4a0e804b3394cae03dbc6 100644
GIT binary patch
delta 236
zcmZ1?(ImmUoR^o20SKn=6;Es3$eYK(=sdZGLz5#uBQY-}C$(tuQVv}<cA$b{pUF2k
zT0I`{h<#*`;Z%Mgq4a@)pVt^nOklYyB0hs<M&KOwi9S<&7C2rKQN19ddRI<yfy#oy
zCF(PC=H#pm-XO9eaf|rMm^CpM<t!(!<g|$wS6z^@!f;9YijobEYs&YsUa<4OXc2J5
zBH(IJ_=Sl0i$Mujf)cJKrC-P>xR_LUC8_YPnDh+Ki(+b5#MIWZu1H+Tv4-OVGozT%
cM|KuL<1Y+A;sb)<*__2SmywZUG6#<g0MolvY5)KL

delta 294
zcmZpYSR%o@oR^o20SJsw|4L2Y$eYK(Xg#@xLv!+44qY}jpm=fF<OdwBJ|EZ^c*H(3
zNOLMbkWl)-z{l&)1R*D|+!Yp^P%^`DO8G>aDK-lXFA1w$5LUS>r?^06LE#ehnK^TE
z)*7!U+2FXQe5K7An~QShlh<<E)QhPs2w9=HBz#562E#S!TT3t4`du{lzhdrxH8AW#
zc-+On_$z_&R}<4Nq~~8uEVz<baJ8uX0|P@PqZ89dpsN_2nZ7`%uM7;XOkP0OFnBZh
zfaF}6d_i&`3MeS*$Mlh%S<oLS1R_5`Nj5NtYqJN}Tt-<oJ4V$H446cbHZTAHrPN-v

diff --git a/server/map_handler/get_measurements.py b/server/map_handler/get_measurements.py
index 61c48dcd..e19b099a 100644
--- a/server/map_handler/get_measurements.py
+++ b/server/map_handler/get_measurements.py
@@ -1,124 +1,9 @@
 import json
-import random
-from datetime import datetime
-from server.consts import PLOT_PATH
+from server.ModelFromNVE.icemodellingscripts.getIceThicknessLakes import get_raw_dates, ice_prognosis_raw_data
 
 
-# get_markers requests all marker data or valid markers, converts the data to json, and writes
-# the data to the response object
 def get_measurements(self, cursor, lake_name):
     try:
-        print("Lake name in get_measurements: ", lake_name)
-        sql_query = '''
-            SELECT m.MeasurementID, m.SensorID, m.TimeMeasured, m.CenterLat, m.CenterLon,
-                   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 = ?
-        '''
-
-        cursor.execute(sql_query, (lake_name,))
-
-        rows = cursor.fetchall()
-
-        # List of all fetched measurement objects
-        measurement_data = {}
-
-        '''
-        f = open('server/?')
-        data = json.load(f)
-
-        '''
-        # Iterate over all fetched rows
-        for row in rows:
-            measurement_id = row[0]
-            sub_div_id = row[8]
-            center_lat = row[12]
-            center_lng = row[13]
-
-            '''
-            curr_stat = []
-            
-            # Find matching ice stat
-            for stat in data['stats']
-                if ice_stats.sub_div_id == sub_div_id
-                    curr_stat = stat
-                    break
-            '''
-
-            # Create subdivision new object
-            sub_division = {
-                'SubdivID': sub_div_id,
-                'GroupID': row[9],
-                'MinThickness': row[10],
-                'AvgThickness': row[11],
-                'CenLatitude': center_lat,
-                'CenLongitude': center_lng,
-                'Accuracy': row[14],
-                'Color': calculateColor(row[11]),  # NB color calculated based on average thickness, should be minimum
-                'IceStats': ()  # NB temp empty, add ice stats later
-            }
-
-            # Check if measurement ID already exists in measurement_data
-            if measurement_id in measurement_data:
-                # Create new subdivision within measurement if it does not already exist
-                if sub_division not in measurement_data[measurement_id]['Subdivisions']:
-                    measurement_data[measurement_id]['Subdivisions'].append(sub_division)
-
-            else:
-                # Create a new entry for measurement_id if it does not already exist in the list
-                measurement_data[measurement_id] = {
-                    'MeasurementID': measurement_id,
-                    'TimeMeasured': row[2],
-                    'CenterLat': row[3],
-                    'CenterLon': row[4],
-                    'Sensor': {  # Each measurement only has one related sensor
-                        'SensorID': row[1],
-                        'SensorType': row[5],
-                        'Active': bool(row[6])
-                    },
-                    'Subdivisions': [sub_division],  # Array of sub_division objects
-                }
-
-        # NB remember to clos file after implementation
-        # f.close()
-
-        # Convert dictionary values to list of measurements
-        data = list(measurement_data.values())
-
-        if len(data) == 0:
-            marker_data = json.dumps(['no measurements'])
-        else:
-            # Convert list of dictionaries to JSON
-            marker_data = json.dumps(data, indent=4)
-
-    except Exception as e:
-        print(f"Error in querying database: {e}")
-        marker_data = '[]'
-
-        # Set headers
-        self.send_response(500)
-        self.send_header("Content-type", "application/json")
-        self.end_headers()
-
-    # Set headers
-    self.send_response(200)
-    self.send_header("Content-type", "application/json")
-    self.end_headers()
-
-    # Write marker data to response object
-    self.wfile.write(marker_data.encode('utf-8'))
-
-
-def get_measurements(self, cursor, lake_name):
-    try:
-        print("Lake name in get_measurements: ", lake_name)
         sql_query = '''
             SELECT m.MeasurementID, m.SensorID, m.TimeMeasured, m.CenterLat, m.CenterLon,
                    s.SensorType, s.Active, 
@@ -161,6 +46,10 @@ def get_measurements(self, cursor, lake_name):
                     curr_stat = stat
                     break
             '''
+            # NB test
+            print("sub_div_id before call: ", sub_div_id, "   center lat and lng: ", center_lng, "   ", center_lng)
+            ice_stats = get_raw_dates(ice_prognosis_raw_data(sub_div_id, center_lat, center_lng))
+            print("ice stats:", ice_stats[0])
 
             # Create subdivision new object
             sub_division = {
@@ -172,7 +61,7 @@ def get_measurements(self, cursor, lake_name):
                 'CenLongitude': center_lng,
                 'Accuracy': row[14],
                 'Color': calculateColor(row[11]),  # NB color calculated based on average thickness, should be minimum
-                'IceStats': ()  # NB temp empty, add ice stats later
+                'IceStats': get_raw_dates(ice_prognosis_raw_data(sub_div_id, center_lat, center_lng))
             }
 
             # Check if measurement ID already exists in measurement_data
@@ -196,8 +85,6 @@ def get_measurements(self, cursor, lake_name):
                     'Subdivisions': [sub_division],  # Array of sub_division objects
                 }
 
-        # Add ice stats
-
         # NB remember to clos file after implementation
         # f.close()
 
@@ -211,7 +98,7 @@ def get_measurements(self, cursor, lake_name):
             marker_data = json.dumps(data, indent=4)
 
     except Exception as e:
-        print(f"Error in querying database: {e}")
+        print(f"Error in getting measurements: {e}")
         marker_data = '[]'
 
         # Set headers
@@ -239,5 +126,3 @@ def calculateColor(thickness: float):  # NB neither final colors nor ranges
         return 0xFF00d6ff  # Blue
     else:
         return 0xFF939393  # Gray
-
-#def addIceStats(lake: str, measurements: list):
-- 
GitLab