27 lines
1.3 KiB
SQL
27 lines
1.3 KiB
SQL
-- Koordinat-punkter per hull (green/bunker/vann/tre/tee osv.), for GPS-/
|
|
-- avstandsfunksjoner og for å kunne eksporteres til andre prosjekter
|
|
-- (f.eks. TeeCup) som slår opp anlegg via facility-slug.
|
|
--
|
|
-- Taksonomi (poi_type / location / side_fairway) er bevisst holdt som fri
|
|
-- tekst, ikke en Postgres ENUM, i tråd med resten av kodebasens mønster
|
|
-- for kategori-felt (f.eks. banetype) -- listen med forventede verdier
|
|
-- dokumenteres her, ikke håndheves i databasen:
|
|
--
|
|
-- poi_type: green, bunker_fairway, bunker_green, vann, trær, stein,
|
|
-- landemerke, vei, dogleg, tee, avstandsmarkør
|
|
-- location: front, midt, bak (nullable -- ikke alle poi_type har dette)
|
|
-- side_fairway: venstre, senter, høyre (nullable -- ikke alle poi_type har dette)
|
|
|
|
CREATE TABLE IF NOT EXISTS hole_points (
|
|
id SERIAL PRIMARY KEY,
|
|
hole_id INTEGER NOT NULL REFERENCES holes(id) ON DELETE CASCADE,
|
|
poi_type VARCHAR(50) NOT NULL,
|
|
location VARCHAR(20),
|
|
side_fairway VARCHAR(20),
|
|
geom GEOGRAPHY(Point, 4326) NOT NULL,
|
|
note TEXT,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS hole_points_hole_id_idx ON hole_points (hole_id);
|
|
CREATE INDEX IF NOT EXISTS hole_points_geom_gix ON hole_points USING GIST (geom);
|