commit
6cfb2056e9
@ -1,9 +1,48 @@
|
||||
|
||||
using CoreLibrary.Joueurs;
|
||||
using MauiSpark.Views;
|
||||
using System.Collections.ObjectModel;
|
||||
namespace MauiSpark.Pages;
|
||||
|
||||
public partial class TableauScore : ContentPage
|
||||
{
|
||||
public TableauScore()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
public TableauScore()
|
||||
{
|
||||
InitializeComponent();
|
||||
SetDefaultClassement();
|
||||
}
|
||||
private void SetDefaultClassement()
|
||||
{
|
||||
CTableauScore.UpdateClassement(CTableauScore.GetClassementNbCoupParPartie);
|
||||
}
|
||||
|
||||
private void QuandNbCoutMoyenButtonClicked(object sender, EventArgs e)
|
||||
{
|
||||
CTableauScore.UpdateClassement(CTableauScore.GetClassementNbCoupParPartie);
|
||||
}
|
||||
|
||||
private void QuandGagneeButtonClicked(object sender, EventArgs e)
|
||||
{
|
||||
CTableauScore.UpdateClassement(CTableauScore.GetClassementPartieGagnee);
|
||||
}
|
||||
|
||||
private void QuandPerduButtonClicked(object sender, EventArgs e)
|
||||
{
|
||||
CTableauScore.UpdateClassement(CTableauScore.GetClassementPartiePerdue);
|
||||
}
|
||||
|
||||
private void QuandEgaliteButtonClicked(object sender, EventArgs e)
|
||||
{
|
||||
CTableauScore.UpdateClassement(CTableauScore.GetClassementPartieEgalite);
|
||||
}
|
||||
|
||||
private void QuandAlphabetHautButtonClicked(object sender, EventArgs e)
|
||||
{
|
||||
CTableauScore.UpdateClassement(CTableauScore.GetClassementAlphabetHaut);
|
||||
}
|
||||
|
||||
private void QuandAlphabetBasButtonClicked(object sender, EventArgs e)
|
||||
{
|
||||
CTableauScore.UpdateClassement(CTableauScore.GetClassementAlphabetBas);
|
||||
}
|
||||
}
|
@ -1,9 +1,191 @@
|
||||
using CoreLibrary.Events;
|
||||
using CoreLibrary.Joueurs;
|
||||
using CoreLibrary.Manager;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.ComponentModel;
|
||||
using System.Runtime.CompilerServices;
|
||||
|
||||
namespace MauiSpark.Views;
|
||||
|
||||
public partial class CTableauScore : ContentView
|
||||
public class JoueurClassementNbCoupParPartie
|
||||
{
|
||||
private Manager manager;
|
||||
private Joueur joueur;
|
||||
|
||||
public Joueur Joueur
|
||||
{
|
||||
get => joueur;
|
||||
private set => joueur = value;
|
||||
}
|
||||
public int Place
|
||||
{
|
||||
get => manager.Joueurs
|
||||
.OrderBy(joueur => joueur.NbCoutTotal/(joueur.NbPartiePerdue+joueur.NbPartieGagnee+joueur.NbPartieEgalite)).ToList()
|
||||
.IndexOf(Joueur) + 1;
|
||||
}
|
||||
|
||||
public int NbCoutMoyen => joueur.NbCoutTotal / (joueur.NbPartiePerdue + joueur.NbPartieGagnee + joueur.NbPartieEgalite);
|
||||
|
||||
public JoueurClassementNbCoupParPartie(Joueur joueur, Manager manager)
|
||||
{
|
||||
this.manager = manager;
|
||||
this.joueur = joueur;
|
||||
}
|
||||
}
|
||||
|
||||
public class JoueurClassementPartieGagnee
|
||||
{
|
||||
private Manager manager;
|
||||
private Joueur joueur;
|
||||
|
||||
public Joueur Joueur
|
||||
{
|
||||
get => joueur;
|
||||
private set => joueur = value;
|
||||
}
|
||||
|
||||
public int Place
|
||||
{
|
||||
get => manager.Joueurs.OrderByDescending(joueur => joueur.NbPartieGagnee).ToList().IndexOf(Joueur) + 1;
|
||||
}
|
||||
|
||||
public int NbCoutMoyen => joueur.NbCoutTotal / (joueur.NbPartiePerdue + joueur.NbPartieGagnee + joueur.NbPartieEgalite);
|
||||
|
||||
public JoueurClassementPartieGagnee(Joueur joueur, Manager manager)
|
||||
{
|
||||
this.manager = manager;
|
||||
this.joueur = joueur;
|
||||
}
|
||||
}
|
||||
|
||||
public class JoueurClassementPartieEgalite
|
||||
{
|
||||
private Manager manager;
|
||||
private Joueur joueur;
|
||||
|
||||
public Joueur Joueur
|
||||
{
|
||||
get => joueur;
|
||||
private set => joueur = value;
|
||||
}
|
||||
|
||||
public int Place
|
||||
{
|
||||
get => manager.Joueurs.OrderByDescending(joueur => joueur.NbPartieEgalite).ToList().IndexOf(joueur)+1;
|
||||
}
|
||||
|
||||
public int NbCoutMoyen => joueur.NbCoutTotal / (joueur.NbPartiePerdue + joueur.NbPartieGagnee + joueur.NbPartieEgalite);
|
||||
|
||||
public JoueurClassementPartieEgalite(Joueur joueur, Manager manager)
|
||||
{
|
||||
this.manager = manager;
|
||||
this.joueur = joueur;
|
||||
}
|
||||
}
|
||||
|
||||
public class JoueurClassementPartiePerdue
|
||||
{
|
||||
public CTableauScore()
|
||||
private Manager manager;
|
||||
private Joueur joueur;
|
||||
|
||||
public Joueur Joueur
|
||||
{
|
||||
get => joueur;
|
||||
private set => joueur = value;
|
||||
}
|
||||
|
||||
public int Place
|
||||
{
|
||||
get => manager.Joueurs.OrderByDescending(joueur => joueur.NbPartiePerdue).ToList().IndexOf(joueur)+1;
|
||||
}
|
||||
|
||||
public int NbCoutMoyen => joueur.NbCoutTotal / (joueur.NbPartiePerdue + joueur.NbPartieGagnee + joueur.NbPartieEgalite);
|
||||
|
||||
public JoueurClassementPartiePerdue(Joueur joueur, Manager manager)
|
||||
{
|
||||
this.manager = manager;
|
||||
this.joueur = joueur;
|
||||
}
|
||||
}
|
||||
|
||||
public class JoueurClassementAlphabet
|
||||
{
|
||||
private Manager manager;
|
||||
private Joueur joueur;
|
||||
|
||||
public Joueur Joueur
|
||||
{
|
||||
get => joueur;
|
||||
private set => joueur = value;
|
||||
}
|
||||
|
||||
public int Place
|
||||
{
|
||||
get => manager.Joueurs
|
||||
.OrderBy(joueur => joueur.NbCoutTotal / (joueur.NbPartiePerdue + joueur.NbPartieGagnee + joueur.NbPartieEgalite)).ToList()
|
||||
.IndexOf(Joueur) + 1;
|
||||
}
|
||||
|
||||
public int NbCoutMoyen => joueur.NbCoutTotal / (joueur.NbPartiePerdue + joueur.NbPartieGagnee + joueur.NbPartieEgalite);
|
||||
|
||||
public JoueurClassementAlphabet(Joueur joueur, Manager manager)
|
||||
{
|
||||
this.manager = manager;
|
||||
this.joueur = joueur;
|
||||
}
|
||||
}
|
||||
|
||||
public partial class CTableauScore : ContentView
|
||||
{
|
||||
public IEnumerable<JoueurClassementNbCoupParPartie> GetClassementNbCoupParPartie()
|
||||
{
|
||||
return MauiProgram.Manager.Joueurs
|
||||
.OrderBy(joueur => joueur.NbCoutTotal / (joueur.NbPartiePerdue + joueur.NbPartieGagnee + joueur.NbPartieEgalite))
|
||||
.Select(joueur => new JoueurClassementNbCoupParPartie(joueur, MauiProgram.Manager));
|
||||
}
|
||||
|
||||
public IEnumerable<JoueurClassementPartieGagnee> GetClassementPartieGagnee()
|
||||
{
|
||||
return MauiProgram.Manager.Joueurs
|
||||
.OrderByDescending(joueur => joueur.NbPartieGagnee)
|
||||
.Select(joueur => new JoueurClassementPartieGagnee(joueur, MauiProgram.Manager));
|
||||
}
|
||||
|
||||
public IEnumerable<JoueurClassementPartieEgalite> GetClassementPartieEgalite()
|
||||
{
|
||||
return MauiProgram.Manager.Joueurs
|
||||
.OrderByDescending(joueur => joueur.NbPartieEgalite)
|
||||
.Select(joueur => new JoueurClassementPartieEgalite(joueur, MauiProgram.Manager));
|
||||
}
|
||||
|
||||
public IEnumerable<JoueurClassementPartiePerdue> GetClassementPartiePerdue()
|
||||
{
|
||||
return MauiProgram.Manager.Joueurs
|
||||
.OrderByDescending(joueur => joueur.NbPartiePerdue)
|
||||
.Select(joueur => new JoueurClassementPartiePerdue(joueur, MauiProgram.Manager));
|
||||
}
|
||||
|
||||
public IEnumerable<JoueurClassementAlphabet> GetClassementAlphabetHaut()
|
||||
{
|
||||
return MauiProgram.Manager.Joueurs
|
||||
.OrderBy(joueur => joueur.Nom)
|
||||
.Select(joueur => new JoueurClassementAlphabet(joueur, MauiProgram.Manager));
|
||||
}
|
||||
public IEnumerable<JoueurClassementAlphabet> GetClassementAlphabetBas()
|
||||
{
|
||||
return MauiProgram.Manager.Joueurs
|
||||
.OrderByDescending(joueur => joueur.Nom)
|
||||
.Select(joueur => new JoueurClassementAlphabet(joueur, MauiProgram.Manager));
|
||||
}
|
||||
|
||||
|
||||
public CTableauScore()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
|
||||
public void UpdateClassement(Func<IEnumerable<object>> getClassement)
|
||||
{
|
||||
BindingContext = getClassement();
|
||||
}
|
||||
}
|
Loading…
Reference in new issue