Updated methods in gameDao

This commit is contained in:
2025-11-23 00:17:27 +01:00
parent fa841e328e
commit cfed05595c

View File

@@ -20,13 +20,16 @@ class GameDao extends DatabaseAccessor<AppDatabase> with _$GameDaoMixin {
result.map((row) async { result.map((row) async {
final group = await db.groupGameDao.getGroupOfGame(gameId: row.id); final group = await db.groupGameDao.getGroupOfGame(gameId: row.id);
final players = await db.playerGameDao.getPlayersOfGame(gameId: row.id); final players = await db.playerGameDao.getPlayersOfGame(gameId: row.id);
final winner = row.winnerId != null
? await db.playerDao.getPlayerById(playerId: row.winnerId!)
: null;
return Game( return Game(
id: row.id, id: row.id,
name: row.name, name: row.name,
group: group, group: group,
players: players, players: players,
createdAt: row.createdAt, createdAt: row.createdAt,
winner: row.winnerId, winner: winner,
); );
}), }),
); );
@@ -45,13 +48,17 @@ class GameDao extends DatabaseAccessor<AppDatabase> with _$GameDaoMixin {
if (await db.groupGameDao.gameHasGroup(gameId: gameId)) { if (await db.groupGameDao.gameHasGroup(gameId: gameId)) {
group = await db.groupGameDao.getGroupOfGame(gameId: gameId); group = await db.groupGameDao.getGroupOfGame(gameId: gameId);
} }
Player? winner;
if (result.winnerId != null) {
winner = await db.playerDao.getPlayerById(playerId: result.winnerId!);
}
return Game( return Game(
id: result.id, id: result.id,
name: result.name, name: result.name,
players: players, players: players,
group: group, group: group,
winner: result.winnerId, winner: winner,
createdAt: result.createdAt, createdAt: result.createdAt,
); );
} }
@@ -64,7 +71,7 @@ class GameDao extends DatabaseAccessor<AppDatabase> with _$GameDaoMixin {
GameTableCompanion.insert( GameTableCompanion.insert(
id: game.id, id: game.id,
name: game.name, name: game.name,
winnerId: Value(game.winner), winnerId: Value(game.winner?.id),
createdAt: game.createdAt, createdAt: game.createdAt,
), ),
mode: InsertMode.insertOrReplace, mode: InsertMode.insertOrReplace,
@@ -100,7 +107,7 @@ class GameDao extends DatabaseAccessor<AppDatabase> with _$GameDaoMixin {
id: game.id, id: game.id,
name: game.name, name: game.name,
createdAt: game.createdAt, createdAt: game.createdAt,
winnerId: Value(game.winner), winnerId: Value(game.winner?.id),
), ),
) )
.toList(), .toList(),