File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 2727
2828 _min_teams := NEW .min_teams ;
2929
30+ -- Validate first stage minimum teams (must be at least 4 * number of groups)
31+ IF current_order = 1 AND NEW .groups IS NOT NULL AND NEW .groups > 0 THEN
32+ IF NEW .min_teams < 4 * NEW .groups THEN
33+ RAISE EXCEPTION ' First stage must have at least % teams given % groups (minimum 4 teams per group)' ,
34+ 4 * NEW .groups , NEW .groups USING ERRCODE = ' 22000' ;
35+ END IF;
36+ END IF;
37+
3038 FOR stage_record IN
3139 SELECT * FROM tournament_stages
3240 WHERE tournament_id = NEW .tournament_id
@@ -160,6 +168,14 @@ BEGIN
160168 NEW .max_teams = NEW .min_teams ;
161169 END IF;
162170 END IF;
171+
172+ -- Validate first stage minimum teams (must be at least 4 * number of groups)
173+ IF NEW." order" = 1 AND NEW .groups IS NOT NULL AND NEW .groups > 0 THEN
174+ IF NEW .min_teams < 4 * NEW .groups THEN
175+ RAISE EXCEPTION ' First stage must have at least % teams given % groups (minimum 4 teams per group)' ,
176+ 4 * NEW .groups , NEW .groups USING ERRCODE = ' 22000' ;
177+ END IF;
178+ END IF;
163179
164180 -- Validate that this stage can accommodate teams advancing from the previous stage
165181 IF NEW." order" > 1 THEN
You can’t perform that action at this time.
0 commit comments