feat(db+domain): add turniernummer and einschraenkungen fields for tournament scope and constraints
- **Database Changes:** Introduced `turnier_nummer` (mandatory, 5 digits) and `einschraenkungen` (mandatory, ÖTO-specific constraints) columns in `turniere` table. Seeded `turnier_nummer` with `oeps_turniernummer` where applicable. - **Domain Models:** Extended `Turnier` and `DomTurnier` with `turnierNummer` and `einschraenkungen` fields. Added `TeilnehmerKreisE` enum for mapping restriction types. - **Services and Controllers:** Updated repository and service operations to handle the new fields. Controllers reflect the new request models for creation and updates. - **Validation:** Enforced input validation for `turnierNummer` format and `einschraenkungen` values. Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
+23
@@ -0,0 +1,23 @@
|
||||
-- V4: Add turnier_nummer and einschraenkungen to turniere
|
||||
-- Context: ÖTO § 3 Turniernummer + Teilnehmerkreis-Einschränkungen
|
||||
|
||||
ALTER TABLE IF EXISTS turniere
|
||||
ADD COLUMN IF NOT EXISTS turnier_nummer VARCHAR(5);
|
||||
|
||||
ALTER TABLE IF EXISTS turniere
|
||||
ADD COLUMN IF NOT EXISTS einschraenkungen TEXT;
|
||||
|
||||
UPDATE turniere
|
||||
SET turnier_nummer = oeps_turniernummer
|
||||
WHERE (turnier_nummer IS NULL OR turnier_nummer = '')
|
||||
AND oeps_turniernummer ~ '^\d{5}$';
|
||||
|
||||
UPDATE turniere
|
||||
SET einschraenkungen = ''
|
||||
WHERE einschraenkungen IS NULL;
|
||||
|
||||
ALTER TABLE turniere
|
||||
ALTER COLUMN turnier_nummer SET NOT NULL;
|
||||
|
||||
ALTER TABLE turniere
|
||||
ALTER COLUMN einschraenkungen SET NOT NULL;
|
||||
Reference in New Issue
Block a user