Neue Datenbank Struktur #156

Open
gelbeinhalb wants to merge 88 commits from feature/88-neue-datenbank-struktur into development
2 changed files with 9 additions and 3 deletions
Showing only changes of commit 8dd2f5f8b8 - Show all commits

View File

@@ -20,6 +20,7 @@ class TeamDao extends DatabaseAccessor<AppDatabase> with _$TeamDaoMixin {
final members = await _getTeamMembers(teamId: row.id);
return Team(
id: row.id,
name: row.name,
createdAt: row.createdAt,
members: members,
);
@@ -34,6 +35,7 @@ class TeamDao extends DatabaseAccessor<AppDatabase> with _$TeamDaoMixin {
final members = await _getTeamMembers(teamId: teamId);
return Team(
id: result.id,
name: result.name,
createdAt: result.createdAt,
members: members,
);
@@ -66,7 +68,7 @@ class TeamDao extends DatabaseAccessor<AppDatabase> with _$TeamDaoMixin {
await into(teamTable).insert(
TeamTableCompanion.insert(
id: team.id,
name: '', // Team name from table (not in DTO currently)
name: team.name,
createdAt: team.createdAt,
),
mode: InsertMode.insertOrReplace,
@@ -87,7 +89,7 @@ class TeamDao extends DatabaseAccessor<AppDatabase> with _$TeamDaoMixin {
.map(
(team) => TeamTableCompanion.insert(
id: team.id,
name: '',
name: team.name,
createdAt: team.createdAt,
),
)

View File

@@ -4,11 +4,13 @@ import 'package:uuid/uuid.dart';
class Team {
final String id;
final String name;
final DateTime createdAt;
final List<Player> members;
Team({
String? id,
required this.name,
DateTime? createdAt,
required this.members,
}) : id = id ?? const Uuid().v4(),
@@ -16,12 +18,13 @@ class Team {
@override
String toString() {
return 'Team{id: $id, members: $members}';
return 'Team{id: $id, name: $name, members: $members}';
}
/// Creates a Team instance from a JSON object.
Team.fromJson(Map<String, dynamic> json)
: id = json['id'],
name = json['name'],
createdAt = DateTime.parse(json['createdAt']),
members = (json['members'] as List)
.map((memberJson) => Player.fromJson(memberJson))
@@ -30,6 +33,7 @@ class Team {
/// Converts the Team instance to a JSON object.
Map<String, dynamic> toJson() => {
'id': id,
'name': name,
'createdAt': createdAt.toIso8601String(),
'members': members.map((member) => member.toJson()).toList(),
};