feat(tournament): refine external participant handling in match assignments

- Updated logic to replace null player1 and player2 with external participants, ensuring that the assigned objects do not include the member field.
- Created clean player objects for external participants, maintaining essential attributes while omitting sensitive information.
This commit is contained in:
Torsten Schulz (local)
2025-12-17 08:52:38 +01:00
parent 65acc9e0d5
commit 4b4c48a50f

View File

@@ -1782,12 +1782,31 @@ class TournamentService {
});
// Ersetze null player1/player2 mit externen Teilnehmern
// WICHTIG: Stelle sicher, dass externe Teilnehmer KEIN member-Feld haben
matches.forEach(match => {
if (!match.player1 && externalPlayerMap.has(match.player1Id)) {
match.player1 = externalPlayerMap.get(match.player1Id);
const externalPlayer = externalPlayerMap.get(match.player1Id);
// Erstelle ein sauberes Objekt ohne member-Feld
match.player1 = {
id: externalPlayer.id,
firstName: externalPlayer.firstName,
lastName: externalPlayer.lastName,
club: externalPlayer.club,
gender: externalPlayer.gender,
birthDate: externalPlayer.birthDate
};
}
if (!match.player2 && externalPlayerMap.has(match.player2Id)) {
match.player2 = externalPlayerMap.get(match.player2Id);
const externalPlayer = externalPlayerMap.get(match.player2Id);
// Erstelle ein sauberes Objekt ohne member-Feld
match.player2 = {
id: externalPlayer.id,
firstName: externalPlayer.firstName,
lastName: externalPlayer.lastName,
club: externalPlayer.club,
gender: externalPlayer.gender,
birthDate: externalPlayer.birthDate
};
}
});
}