update lsrfunc

This commit is contained in:
2025-12-10 01:50:09 +00:00
parent 19723739ab
commit 9577e94c4f

View File

@@ -140,14 +140,14 @@ def find_max_reflectivity(lat, lon, start_time, end_time):
conn = psycopg2.connect(host='localhost', database='nws', user='nws', password='nws')
cursor = conn.cursor()
sql = "update power set vtec = svr.vtec from svr where ST_Contains(svr.nwspoly,power.realgeom) and power.outagen > 5 and power.startguess > svr.issue and power.startguess < svr.endtime + (120 ||'minutes')::interval"
sql = "update newpower set vtec = svr.vtec from svr where ST_Contains(svr.nwspoly,newpower.geom) and newpower.outagen > 5 and newpower.start_time > svr.issue and newpower.start_time < svr.endtime + (120 ||'minutes')::interval"
cursor.execute(sql)
conn.commit()
#find potentiall verifying reports and add ids to lsrids in svr
"""
-- This comment block seems to have an unrelated query example.
UPDATE svr SET lsrids = array_cat( your_array_column, ARRAY[ (SELECT unnest(ARRAY[1, 2, 3]) EXCEPT SELECT unnest(your_array_column)) ] );
@@ -155,8 +155,8 @@ UPDATE svr SET lsrids = array_cat( your_array_column, ARRAY[ (SELECT unnest(ARRA
sql = """WITH unique_ids AS (
SELECT svr.vtec, array_agg(DISTINCT power.id) AS new_ids
FROM svr
JOIN power ON svr.vtec = power.vtec
WHERE EXTRACT(EPOCH FROM (current_timestamp - svr.endtime ))/60/60/24 < 3
JOIN newpower power ON svr.vtec = power.vtec
WHERE EXTRACT(EPOCH FROM (current_timestamp - svr.endtime ))/60/60/24 < 3
GROUP BY svr.vtec
)
UPDATE svr
@@ -171,7 +171,7 @@ cursor.execute(sql)
conn.commit()
cursor.execute("SELECT r.id, r.lat, r.lon, s.issue, s.endtime FROM power r JOIN svr s ON r.vtec = s.vtec WHERE r.vtec IS NOT NULL AND r.lsrref is null and s.issue > '2024-07-25' and outagen > 4 limit 50")
cursor.execute("SELECT r.id, r.lat, r.lon, s.issue, s.endtime FROM newpower r JOIN svr s ON r.vtec = s.vtec WHERE r.vtec IS NOT NULL AND r.lsrref is null and s.issue > '2024-07-25' and outagen > 4 limit 50")
svrreports = cursor.fetchall()
@@ -182,7 +182,7 @@ for i in svrreports:
start_time = i[3]
end_time = i[4]
max_reflectivity, reflectivity_time = find_max_reflectivity(lat, lon, start_time, end_time)
sql = "UPDATE power set lsrtime = %s, lsrref = %s where id = %s"
sql = "UPDATE newpower set lsrtime = %s, lsrref = %s where id = %s"
vals = (reflectivity_time,max_reflectivity,repid)
print(vals)
cursor.execute(sql,vals)
@@ -199,5 +199,3 @@ print("Maximum Reflectivity:", max_reflectivity)
print("Time of Maximum Reflectivity:", reflectivity_time)
"""