Add Teams endpoint and endpoints with service

This commit is contained in:
2026-03-09 15:48:47 +01:00
parent 67d4288c84
commit ea45d74c0f
7 changed files with 383 additions and 44 deletions

View File

@@ -0,0 +1,36 @@
class Team {
final int id;
final String name;
final String tag;
final String description;
final String createdAt;
Team({
required this.id,
required this.name,
required this.tag,
required this.description,
required this.createdAt,
});
factory Team.fromJson(Map<String, dynamic> json) {
return Team(
id: json['id'] as int,
name: json['name'] as String,
tag: json['tag'] as String,
description: (json['description'] as String?) ?? '',
createdAt: (json['createdAt'] as String?) ?? '',
);
}
Map<String, dynamic> toJson() {
return {
'id': id,
'name': name,
'tag': tag,
'description': description,
'createdAt': createdAt,
};
}
}

View File

@@ -1,3 +1,5 @@
import 'package:frontend_splatournament_manager/models/team.dart';
class Tournament {
final int id;
final String name;
@@ -6,6 +8,7 @@ class Tournament {
final int currentTeamAmount;
final String registrationStartDate;
final String registrationEndDate;
final List<Team> teams;
Tournament({
required this.id,
@@ -15,6 +18,7 @@ class Tournament {
required this.currentTeamAmount,
required this.registrationStartDate,
required this.registrationEndDate,
this.teams = const [],
});
factory Tournament.fromJson(dynamic json) {
@@ -26,6 +30,9 @@ class Tournament {
currentTeamAmount: json['currentTeamAmount'],
registrationStartDate: json['registrationStartDate'],
registrationEndDate: json['registrationEndDate'],
teams: (json['teams'] as List<dynamic>? ?? [])
.map((t) => Team.fromJson(t as Map<String, dynamic>))
.toList(),
);
}