49 lines
2.2 KiB
MySQL
49 lines
2.2 KiB
MySQL
|
|
-- =====================================================================
|
||
|
|
-- TeeCup — migrasjon 088
|
||
|
|
-- Shotgun-start: alternativ til den tradisjonelle, staggerte starten
|
||
|
|
-- =====================================================================
|
||
|
|
-- Reverserer/utvider EKSPLISITT migrasjon 084 sitt bevisste "IKKE
|
||
|
|
-- shotgun"-valg fra 2026-08-18 -- se ADR-096 for full begrunnelse for
|
||
|
|
-- hvorfor dette nå bygges. Samme arkitektoniske hull fantes BEGGE
|
||
|
|
-- steder rundeplanlegging finnes i appen: individuelle turneringer
|
||
|
|
-- (tournament_round/tournament_round_group) og lag/Cup-format
|
||
|
|
-- (session/match) -- ett delt starthull for HELE runden/økten, kun
|
||
|
|
-- ulikt KLOKKESLETT per gruppe/match, aldri ulikt HULL. Rettet
|
||
|
|
-- identisk begge steder.
|
||
|
|
--
|
||
|
|
-- start_mode = 'consecutive' (standard, uendret oppførsel -- INGEN
|
||
|
|
-- regresjon): alle grupper/matcher deler samme starthull
|
||
|
|
-- (tournament_round.start_hole / session.start_hole, uendret), staggert
|
||
|
|
-- KUN på klokkeslett (eksisterende tee_time_override-mønster, uendret).
|
||
|
|
--
|
||
|
|
-- start_mode = 'shotgun': ALLE grupper/matcher i runden/økten går ut
|
||
|
|
-- SAMTIDIG (intervallet blir meningsløst og ignoreres av app-laget i
|
||
|
|
-- denne modusen) -- fra HVER SIN starthull i stedet. Nytt, valgfritt
|
||
|
|
-- per-gruppe/per-match starthull-felt dekker dette -- NULL når runden/
|
||
|
|
-- økten uansett er 'consecutive' (bruker da forelderens delte
|
||
|
|
-- starthull som før), settes eksplisitt av organisator per gruppe/
|
||
|
|
-- match kun i shotgun-modus.
|
||
|
|
--
|
||
|
|
-- Samme text+CHECK-mønster som migrasjon 087 (ikke en ny
|
||
|
|
-- CREATE TYPE ... AS ENUM, konsistent med nyere migrasjoner i denne
|
||
|
|
-- filserien).
|
||
|
|
-- =====================================================================
|
||
|
|
|
||
|
|
\set ON_ERROR_STOP on
|
||
|
|
|
||
|
|
ALTER TABLE tournament_round
|
||
|
|
ADD COLUMN start_mode text NOT NULL DEFAULT 'consecutive'
|
||
|
|
CHECK (start_mode IN ('consecutive', 'shotgun'));
|
||
|
|
|
||
|
|
ALTER TABLE tournament_round_group
|
||
|
|
ADD COLUMN start_hole smallint
|
||
|
|
CHECK (start_hole IS NULL OR start_hole BETWEEN 1 AND 18);
|
||
|
|
|
||
|
|
ALTER TABLE session
|
||
|
|
ADD COLUMN start_mode text NOT NULL DEFAULT 'consecutive'
|
||
|
|
CHECK (start_mode IN ('consecutive', 'shotgun'));
|
||
|
|
|
||
|
|
ALTER TABLE match
|
||
|
|
ADD COLUMN start_hole smallint
|
||
|
|
CHECK (start_hole IS NULL OR start_hole BETWEEN 1 AND 18);
|