Samlar ihop och visar poäng från databasen

This commit is contained in:
2025-09-20 09:57:47 +02:00
parent 066503da74
commit 1bf42ef7e6
6 changed files with 109 additions and 16 deletions

View File

@ -80,7 +80,8 @@ public class RoundRunningViewModel : ViewModelBase
public ObservableCollection<RoundBuilderElement> Get()
{
BuilderObject.ParticipantName = "Kalle Default";
BuilderObject.ParticipantName = _objectMessage.CurrentGroup.Elements[0].ParticipantName;
BuilderObject.GameRoundId = _objectMessage.CurrentGroup.GameRoundId;
if (_objectMessage.CurrentGroup != null)
{
@ -93,14 +94,14 @@ public class RoundRunningViewModel : ViewModelBase
{
_roundElements.Add(item);
}
FillupResultTable(_objectMessage.CurrentGroup.Elements);
var localElements = _combined.roundBuilderElementsTotalById(_objectMessage.CurrentGroup.GameRoundId);
FillupResultTable(localElements);
}
return RoundElements;
}
private void FillupResultTable(List<RoundBuilderElement> elements)
private void FillupResultTable(IEnumerable<RoundBuilderElement> elements)
{
Random slumper = new Random();
if (_playerColumns != null)
{
_playerColumns.Clear();
@ -109,19 +110,51 @@ public class RoundRunningViewModel : ViewModelBase
{
_playerColumns = new Collection<PlayerColumn>();
}
foreach (var element in elements)
if (elements.Any(g => g.GameRegPoints > 0))
{
var player = new PlayerColumn
{
PlayerName = element.ParticipantName
};
var oldPart = -1;
PlayerColumn player = new PlayerColumn();
for (int i = 0; i < slumper.Next(6); i++)
foreach (var element in elements)
{
player.Values.Add(slumper.Next(1, 10).ToString());
if (element.ParticipantId != oldPart)
{
player = new PlayerColumn
{
PlayerName = element.ParticipantName
};
}
if (element.GameRegPoints > 0)
player.Values.Add(element.GameRegPoints.ToString());
oldPart = element.ParticipantId;
if (!_playerColumns.Contains(player))
{
_playerColumns.Add(player);
}
}
}
else
{
Random slumper = new Random();
_playerColumns.Add(player);
foreach (var element in elements)
{
var player = new PlayerColumn
{
PlayerName = element.ParticipantName
};
for (int i = 0; i < slumper.Next(6); i++)
{
player.Values.Add(slumper.Next(1, 10).ToString());
}
_playerColumns.Add(player);
}
}
}

View File

@ -151,7 +151,8 @@ public class RoundStartingViewModel : ViewModelBase
{
if (_combined != null)
{
var GameRoundSummary = _combined.roundBuilderElements();
// var GameRoundSummary = _combined.roundBuilderElements();
var GameRoundSummary = _combined.roundBuilderElementsDb();
var groupedRounds = GameRoundSummary
.GroupBy(r => r.GameRoundId)