Rust backend setup

This commit is contained in:
2023-09-04 14:51:59 -04:00
parent 7a7f90809a
commit acfc89feb8
1296 changed files with 1616 additions and 1056 deletions

View File

@@ -0,0 +1 @@
DROP TABLE airports;

View File

@@ -0,0 +1,7 @@
CREATE TABLE "airports" (
id SERIAL PRIMARY KEY,
full_name VARCHAR NOT NULL,
icao VARCHAR NOT NULL,
latitude INT NOT NULL,
longitude INT NOT NULL
)

View File

@@ -0,0 +1 @@
DROP TABLE metars;

View File

@@ -0,0 +1,24 @@
CREATE TABLE "metars" (
id SERIAL PRIMARY KEY,
icao TEXT NOT NULL,
raw_text TEXT NOT NULL,
station_id TEXT NOT NULL,
observation_time TEXT NOT NULL,
latitude INTEGER NOT NULL,
longitude INTEGER NOT NULL,
temp_c DOUBLE PRECISION NOT NULL,
dewpoint_c DOUBLE PRECISION NOT NULL,
wind_dir_degrees INTEGER NOT NULL,
wind_speed_kt INTEGER NOT NULL,
visibility_statute_mi TEXT NOT NULL,
altim_in_hg DOUBLE PRECISION NOT NULL,
sea_level_pressure_mb DOUBLE PRECISION,
wx_string TEXT,
flight_category TEXT,
three_hr_pressure_tendency_mb DOUBLE PRECISION,
metar_type TEXT,
max_t_c DOUBLE PRECISION,
min_t_c DOUBLE PRECISION,
precip_in DOUBLE PRECISION,
elevation_m INTEGER
)

View File

@@ -0,0 +1,2 @@
DROP FUNCTION IF EXISTS diesel_manage_updated_at(_tbl regclass);
DROP FUNCTION IF EXISTS diesel_set_updated_at();

View File

@@ -0,0 +1,18 @@
CREATE OR REPLACE FUNCTION diesel_manage_updated_at(_tbl regclass) RETURNS VOID AS $$
BEGIN
EXECUTE format('CREATE TRIGGER set_updated_at BEFORE UPDATE ON %s
FOR EACH ROW EXECUTE PROCEDURE diesel_set_updated_at()', _tbl);
END;
$$ LANGUAGE plpgsql;
CREATE OR REPLACE FUNCTION diesel_set_updated_at() RETURNS trigger AS $$
BEGIN
IF (
NEW IS DISTINCT FROM OLD AND
NEW.updated_at IS NOT DISTINCT FROM OLD.updated_at
) THEN
NEW.updated_at := current_timestamp;
END IF;
RETURN NEW;
END;
$$ LANGUAGE plpgsql;