feat(masterdata): add ÖTO seed data, regulation validation tests, and profile module integration
- Introduced ÖTO 2026-compliant seed data (`V008__Seed_OETO_2026_Data.sql`) for tournament classes, license matrix, and age groups. - Added `RegulationSeedVerificationTest` to validate repository queries and domain eligibility logic. - Implemented a new `profile-feature` module covering user profile management and ZNS linking. - Integrated the `profile-feature` into the desktop shell and frontend with Koin DI configuration. - Extended CHANGELOG, ROADMAP, and architecture documentation to reflect related changes. Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
+46
@@ -0,0 +1,46 @@
|
||||
-- V008: Seed OETO 2026 Data (Turnierklassen, Lizenz-Matrix, Altersklassen)
|
||||
-- Basierend auf ÖTO 2026
|
||||
|
||||
-- 1. Turnierklassen (Springen & Dressur)
|
||||
INSERT INTO turnierklasse (turnierklasse_id, sparte, code, bezeichnung, max_hoehe, aufgaben_niveau)
|
||||
VALUES
|
||||
-- Springen
|
||||
(gen_random_uuid(), 'SPRINGEN', 'E', 'Einsteiger', 95, NULL),
|
||||
(gen_random_uuid(), 'SPRINGEN', 'A', 'Anfänger', 105, NULL),
|
||||
(gen_random_uuid(), 'SPRINGEN', 'L', 'Leicht', 115, NULL),
|
||||
(gen_random_uuid(), 'SPRINGEN', 'LM', 'Leicht-Mittel', 125, NULL),
|
||||
(gen_random_uuid(), 'SPRINGEN', 'M', 'Mittelschwer', 135, NULL),
|
||||
(gen_random_uuid(), 'SPRINGEN', 'S', 'Schwer', 150, NULL),
|
||||
-- Dressur
|
||||
(gen_random_uuid(), 'DRESSUR', 'E', 'Einsteiger', NULL, 'Aufgabengruppe E'),
|
||||
(gen_random_uuid(), 'DRESSUR', 'A', 'Anfänger', NULL, 'Aufgabengruppe A'),
|
||||
(gen_random_uuid(), 'DRESSUR', 'L', 'Leicht', NULL, 'Aufgabengruppe L'),
|
||||
(gen_random_uuid(), 'DRESSUR', 'LM', 'Leicht-Mittel', NULL, 'Aufgabengruppe LM'),
|
||||
(gen_random_uuid(), 'DRESSUR', 'LP', 'Leicht-Profi', NULL, 'Aufgabengruppe LP'),
|
||||
(gen_random_uuid(), 'DRESSUR', 'M', 'Mittelschwer', NULL, 'Aufgabengruppe M'),
|
||||
(gen_random_uuid(), 'DRESSUR', 'S', 'Schwer', NULL, 'Aufgabengruppe S');
|
||||
|
||||
-- 2. Lizenz-Matrix (Springen)
|
||||
INSERT INTO license_matrix (license_id, sparte, lizenz_klasse, max_turnierklasse_code)
|
||||
VALUES ('00000000-0000-0000-0001-000000000001', 'SPRINGEN', 'LIZENZFREI', 'E'),
|
||||
('00000000-0000-0000-0001-000000000002', 'SPRINGEN', 'R1', 'L'),
|
||||
('00000000-0000-0000-0001-000000000003', 'SPRINGEN', 'R2', 'M'),
|
||||
('00000000-0000-0000-0001-000000000004', 'SPRINGEN', 'R3', 'S'),
|
||||
('00000000-0000-0000-0001-000000000005', 'SPRINGEN', 'R4', 'S');
|
||||
|
||||
-- 2.1 Lizenz-Matrix (Dressur)
|
||||
INSERT INTO license_matrix (license_id, sparte, lizenz_klasse, max_turnierklasse_code)
|
||||
VALUES ('00000000-0000-0000-0002-000000000001', 'DRESSUR', 'LIZENZFREI', 'E'),
|
||||
('00000000-0000-0000-0002-000000000002', 'DRESSUR', 'RD1', 'L'),
|
||||
('00000000-0000-0000-0002-000000000003', 'DRESSUR', 'RD2', 'M'),
|
||||
('00000000-0000-0000-0002-000000000004', 'DRESSUR', 'RD3', 'S'),
|
||||
('00000000-0000-0000-0002-000000000005', 'DRESSUR', 'RD4', 'S');
|
||||
|
||||
-- 3. Altersklassen (Standard ÖTO)
|
||||
INSERT INTO altersklasse (id, altersklasse_code, bezeichnung, min_alter, max_alter)
|
||||
VALUES (gen_random_uuid(), 'KINDER', 'Kinder', NULL, 12),
|
||||
(gen_random_uuid(), 'JGD_U16', 'Jugend U16', 13, 16),
|
||||
(gen_random_uuid(), 'JUN_U18', 'Junioren U18', 17, 18),
|
||||
(gen_random_uuid(), 'YR_U21', 'Junge Reiter U21', 19, 21),
|
||||
(gen_random_uuid(), 'AK', 'Allgemeine Klasse', 22, 39),
|
||||
(gen_random_uuid(), 'SEN_U45', 'Senioren Ü45', 45, NULL);
|
||||
Reference in New Issue
Block a user