Fehlende Methoden für Games Datenbank inplementieren #76

Merged
flixcoo merged 35 commits from feature/74-fehlende-methoden-für-games-datenbank-inplementieren into development 2025-12-05 17:54:13 +00:00
Owner

Fehlende Methoden für Games Datenbank inplementieren

Zugehörige Issue(s):
Closes #74

Beschreibung

Eine klare und prägnante Übersicht über die vorgenommenen Änderungen. Erläutere nicht nur das was gemacht wurde, sondern auch warum.

Änderungen

Es wurden folgende neue Methoden inkl. Tests implementiert:

  • setWinner(): Setzte den Gewinner eines Spiels
  • getWinner(): Bekomme den Gewinner eines Spiels als Player-Objekt (Nullable)
  • removeWinner(): Entfernt den Gewinner eines Spiels
  • hasWinner(): Gibt zurück, ob ein Spiel einen Gewinner hat
  • updateGameName(): Ändert den Namen eines Spiels
  • updateGroupOfGame(): Ändert die einem Spiel zugewiesene Gruppe
  • updatePlayersFromGame(): Ändert die einem Spiel zugewiesenen Spieler

Außerdem

  • Namen der addGames(), addPlayers() und addGroups()-Methoden angepasst um sie besser von den Methoden zum Hinzufügen eines einzelnen Objekts zu unterscheiden

Zusätzliche Anmerkungen

Ich hab bisschen verkackt und die Änderungen auf der Branch zu #3 gemacht, deswegen sind hier jetzt auch die Änderungen davon drin

# Fehlende Methoden für Games Datenbank inplementieren **Zugehörige Issue(s):** Closes #74 ## Beschreibung *Eine klare und prägnante Übersicht über die vorgenommenen Änderungen. Erläutere nicht nur das was gemacht wurde, sondern auch warum.* ## Änderungen ### Es wurden folgende neue Methoden inkl. Tests implementiert: - `setWinner()`: Setzte den Gewinner eines Spiels - `getWinner()`: Bekomme den Gewinner eines Spiels als `Player`-Objekt (Nullable) - `removeWinner()`: Entfernt den Gewinner eines Spiels - `hasWinner()`: Gibt zurück, ob ein Spiel einen Gewinner hat - `updateGameName()`: Ändert den Namen eines Spiels - `updateGroupOfGame()`: Ändert die einem Spiel zugewiesene Gruppe - `updatePlayersFromGame()`: Ändert die einem Spiel zugewiesenen Spieler ### Außerdem - Namen der `addGames()`, `addPlayers()` und `addGroups()`-Methoden angepasst um sie besser von den Methoden zum Hinzufügen eines einzelnen Objekts zu unterscheiden ## Zusätzliche Anmerkungen Ich hab bisschen verkackt und die Änderungen auf der Branch zu #3 gemacht, deswegen sind hier jetzt auch die Änderungen davon drin
flixcoo added this to the Minimum Viable Product (MVP) milestone 2025-11-26 13:46:13 +00:00
flixcoo added the
PR
Ready for Review
2
label 2025-11-26 13:46:13 +00:00
flixcoo self-assigned this 2025-11-26 13:46:13 +00:00
flixcoo requested review from Owners 2025-11-26 13:46:14 +00:00
flixcoo added 28 commits 2025-11-26 13:47:25 +00:00
Implemented View for choosing group and ruleset
All checks were successful
Pull Request Pipeline / lint (pull_request) Successful in 2m13s
Pull Request Pipeline / test (pull_request) Successful in 2m15s
e71cb11295
Replaced unique box decorations with standardBoxDecoration
All checks were successful
Pull Request Pipeline / test (pull_request) Successful in 2m2s
Pull Request Pipeline / lint (pull_request) Successful in 2m9s
2ba710ca2d
moved input widgets to new folder
All checks were successful
Pull Request Pipeline / test (pull_request) Successful in 2m1s
Pull Request Pipeline / lint (pull_request) Successful in 2m9s
9efbc12909
# Conflicts:
#	lib/presentation/views/main_menu/create_group_view.dart
Implemented app skeleton
All checks were successful
Pull Request Pipeline / test (pull_request) Successful in 2m3s
Pull Request Pipeline / lint (pull_request) Successful in 2m6s
5fbf2ccb45
Implemented player selection
All checks were successful
Pull Request Pipeline / test (pull_request) Successful in 2m5s
Pull Request Pipeline / lint (pull_request) Successful in 2m12s
2838376434
Changed create game button size
All checks were successful
Pull Request Pipeline / test (pull_request) Successful in 2m6s
Pull Request Pipeline / lint (pull_request) Successful in 2m8s
b5234c765c
Implemented ChooseTile
All checks were successful
Pull Request Pipeline / test (pull_request) Successful in 2m2s
Pull Request Pipeline / lint (pull_request) Successful in 2m6s
745aaef978
Implemented updateGameName() and tests for it
All checks were successful
Pull Request Pipeline / lint (pull_request) Successful in 2m11s
Pull Request Pipeline / test (pull_request) Successful in 3m30s
dc0e536221
sneeex added a new dependency 2025-11-26 15:39:14 +00:00
sneeex requested changes 2025-11-26 16:10:35 +00:00
Dismissed
@@ -66,3 +66,4 @@
/// Adds a new [Game] to the database.
/// Also adds associated players and group if they exist.
/// If a game, player, or group already exists, it will be replaced.
Future<void> addGame({required Game game}) async {
Owner

warum steht hier if a game player or group exists it will be replaced? bezieht sich das auf das game, bzw. die group/den player im game? Vorhin meintest du doch das replace funktioniert nicht so

warum steht hier if a game player or group exists it will be replaced? bezieht sich das auf das game, bzw. die group/den player im game? Vorhin meintest du doch das replace funktioniert nicht so
Author
Owner

Das Replacen funktioniert nicht bei den Verbindungstabellen, aber bei Entity-Tabellen schon. Bei den Verbindungstabellen sind beide Schlüssel zusammen primary key und deswegen kann da nichts ersetzt werden, weil die primary keys beim ersetzen gleich bleiben, nur die anderen attribute ändern sich

Das Replacen funktioniert nicht bei den Verbindungstabellen, aber bei Entity-Tabellen schon. Bei den Verbindungstabellen sind beide Schlüssel zusammen primary key und deswegen kann da nichts ersetzt werden, weil die primary keys beim ersetzen gleich bleiben, nur die anderen attribute ändern sich
sneeex marked this conversation as resolved
@@ -16,0 +14,4 @@
/// [GroupGameTable]. If there is already group associated to the game,
/// it will be replaced.
Future<void> addGroupToGame({
required String gameId,
Owner

sind hier nicht addGroupToGame und updateGroupOfGame redundant? Zumindest steht bei addGroupToGame ja, dass es replaced wird, wenn's existiert

sind hier nicht addGroupToGame und updateGroupOfGame redundant? Zumindest steht bei addGroupToGame ja, dass es replaced wird, wenn's existiert
flixcoo marked this conversation as resolved
@@ -137,2 +137,4 @@
}
});
test('Updating the games players works coreclty', () async {
Owner

*correctly

*correctly
Author
Owner

digga warum mache ich das immer falsch omg

digga warum mache ich das immer falsch omg
sneeex marked this conversation as resolved
Author
Owner

Ich muss gleich nochmal was überprüfen, weil mir gerade eingefallen ist, dass ggf. das doppelte hinzufügen von spielen dazu führen kann, das mehrere gruppen oder spieler zu einem spiel gehören

Ich muss gleich nochmal was überprüfen, weil mir gerade eingefallen ist, dass ggf. das doppelte hinzufügen von spielen dazu führen kann, das mehrere gruppen oder spieler zu einem spiel gehören
sneeex added
PR
In Review
1
and removed
PR
Ready for Review
2
labels 2025-11-26 19:29:48 +00:00
flixcoo changed title from Fehlende Methoden für Games Datenbank inplementieren to WIP: Fehlende Methoden für Games Datenbank inplementieren 2025-11-26 19:40:24 +00:00
flixcoo removed the
PR
In Review
1
label 2025-11-28 12:21:32 +00:00
flixcoo added 3 commits 2025-11-28 13:00:33 +00:00
removed comment
All checks were successful
Pull Request Pipeline / test (pull_request) Successful in 2m29s
Pull Request Pipeline / lint (pull_request) Successful in 2m51s
d2d6852f31
flixcoo added 1 commit 2025-11-28 13:00:44 +00:00
removed comment
All checks were successful
Pull Request Pipeline / test (pull_request) Successful in 2m23s
Pull Request Pipeline / lint (pull_request) Successful in 2m31s
71b2f30d29
flixcoo changed title from WIP: Fehlende Methoden für Games Datenbank inplementieren to Fehlende Methoden für Games Datenbank inplementieren 2025-11-28 13:00:58 +00:00
flixcoo added the
PR
Ready for Review
2
label 2025-11-28 13:01:02 +00:00
flixcoo requested review from sneeex 2025-11-28 13:01:03 +00:00
flixcoo requested review from gelbeinhalb 2025-11-28 13:01:09 +00:00
flixcoo added a new dependency 2025-12-02 15:41:02 +00:00
gelbeinhalb requested changes 2025-12-02 22:47:39 +00:00
@@ -0,0 +21,4 @@
}
class _CreateGameViewState extends State<CreateGameView> {
/// Reference to the app database
Owner

Warum so viele useless Kommentare? ChatGPT?

Warum so viele useless Kommentare? ChatGPT?
Owner

Ja war wo anders auch so, finde das auch zu viel, er meinte beim anderen mal aber zum verständnis und so

Ja war wo anders auch so, finde das auch zu viel, er meinte beim anderen mal aber zum verständnis und so
Owner

also ich check das ja an sich, wenn das denn nur halt überall so wäre

finde es gibt auf jeden fall parts in dem code die schwerer zu verstehen sind als das und garkeine kommentare haben

also ich check das ja an sich, wenn das denn nur halt überall so wäre finde es gibt auf jeden fall parts in dem code die schwerer zu verstehen sind als das und garkeine kommentare haben
Author
Owner

Finde das irgendwie geiler wenn jede variable da oben ne beschreibung hat, wenn man über sie hovert auch (mit den ///), also finde das sinnvoller

Finde das irgendwie geiler wenn jede variable da oben ne beschreibung hat, wenn man über sie hovert auch (mit den `///`), also finde das sinnvoller
Owner

Warum dann aber nicht überall? oder kommt das im refactor?

Warum dann aber nicht überall? oder kommt das im refactor?
Author
Owner

Ja würde ich gerne machen, auch als vorlage für alle kommenden Variablen, Methoden & Klassen

Ja würde ich gerne machen, auch als vorlage für alle kommenden Variablen, Methoden & Klassen
sneeex marked this conversation as resolved
flixcoo requested review from gelbeinhalb 2025-12-04 16:29:34 +00:00
flixcoo added 1 commit 2025-12-05 17:22:38 +00:00
Merge branch 'development' into feature/74-fehlende-methoden-für-games-datenbank-inplementieren
Some checks failed
Pull Request Pipeline / test (pull_request) Successful in 2m19s
Pull Request Pipeline / lint (pull_request) Failing after 2m22s
b719a6662b
# Conflicts:
#	lib/presentation/views/main_menu/game_history_view.dart
flixcoo added 2 commits 2025-12-05 17:24:11 +00:00
Import formatting
All checks were successful
Pull Request Pipeline / test (pull_request) Successful in 2m16s
Pull Request Pipeline / lint (pull_request) Successful in 2m18s
3169eebd14
sneeex approved these changes 2025-12-05 17:49:18 +00:00
flixcoo merged commit cd9780871f into development 2025-12-05 17:54:13 +00:00
flixcoo deleted branch feature/74-fehlende-methoden-für-games-datenbank-inplementieren 2025-12-05 17:54:14 +00:00
gelbeinhalb declined to review 2025-12-06 08:03:39 +00:00
Owner

ups hahaha

ups hahaha
Owner

wollte approven auf handy und hab das falsche gedrückt 😅

aber ist ja eh schon gemerged

wollte approven auf handy und hab das falsche gedrückt 😅 aber ist ja eh schon gemerged
Sign in to join this conversation.
No Reviewers
3 Participants
Notifications
Due Date
No due date set.
Blocks
#78 Game zu Match umbenennen
liquid-development/game-tracker
Depends on
#20 GameHistoryView anpassen
liquid-development/game-tracker
Reference: liquid-development/game-tracker#76