Compare commits
2 Commits
b9b6ff85ea
...
49e990dfea
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
49e990dfea | ||
|
|
40e970a5dc |
@@ -339,4 +339,40 @@ class MatchDao extends DatabaseAccessor<AppDatabase> with _$MatchDaoMixin {
|
|||||||
);
|
);
|
||||||
return rowsAffected > 0;
|
return rowsAffected > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ============================================================
|
||||||
|
// TEMPORARY: Winner methods - these are stubs and do not persist data
|
||||||
|
// TODO: Implement proper winner handling
|
||||||
|
// ============================================================
|
||||||
|
|
||||||
|
/// TEMPORARY: Checks if a match has a winner.
|
||||||
|
/// Currently returns true if the match has any players.
|
||||||
|
Future<bool> hasWinner({required String matchId}) async {
|
||||||
|
final players = await db.playerMatchDao.getPlayersOfMatch(matchId: matchId);
|
||||||
|
return players?.isNotEmpty ?? false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// TEMPORARY: Gets the winner of a match.
|
||||||
|
/// Currently returns the first player in the match's player list.
|
||||||
|
Future<Player?> getWinner({required String matchId}) async {
|
||||||
|
final players = await db.playerMatchDao.getPlayersOfMatch(matchId: matchId);
|
||||||
|
return (players?.isNotEmpty ?? false) ? players!.first : null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// TEMPORARY: Sets the winner of a match.
|
||||||
|
/// Currently does nothing - winner is not persisted.
|
||||||
|
Future<bool> setWinner({
|
||||||
|
required String matchId,
|
||||||
|
required String winnerId,
|
||||||
|
}) async {
|
||||||
|
// TODO: Implement winner persistence
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// TEMPORARY: Removes the winner of a match.
|
||||||
|
/// Currently does nothing - winner is not persisted.
|
||||||
|
Future<bool> removeWinner({required String matchId}) async {
|
||||||
|
// TODO: Implement winner persistence
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ class Match {
|
|||||||
final Group? group;
|
final Group? group;
|
||||||
final List<Player>? players;
|
final List<Player>? players;
|
||||||
final String? notes;
|
final String? notes;
|
||||||
|
Player? winner;
|
||||||
|
|
||||||
Match({
|
Match({
|
||||||
String? id,
|
String? id,
|
||||||
@@ -21,12 +22,13 @@ class Match {
|
|||||||
this.group,
|
this.group,
|
||||||
this.players,
|
this.players,
|
||||||
this.notes,
|
this.notes,
|
||||||
|
this.winner,
|
||||||
}) : id = id ?? const Uuid().v4(),
|
}) : id = id ?? const Uuid().v4(),
|
||||||
createdAt = createdAt ?? clock.now();
|
createdAt = createdAt ?? clock.now();
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String toString() {
|
String toString() {
|
||||||
return 'Match{id: $id, name: $name, game: $game, group: $group, players: $players, notes: $notes}';
|
return 'Match{id: $id, name: $name, game: $game, group: $group, players: $players, notes: $notes, winner: $winner}';
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Creates a Match instance from a JSON object.
|
/// Creates a Match instance from a JSON object.
|
||||||
|
|||||||
Reference in New Issue
Block a user