/// <summary> /// Constructeur. /// </summary> /// <param name="tm">Tournoi concerné</param> public TournoiDetailsModel(TournoiModel tm) { m_tournoi = tm; m_quartFinales = m_tournoi.Matchs.Where(m => m.PhaseTournoi == EPhaseTournoiModel.QuartFinale).ToList(); m_demiFinales = m_tournoi.Matchs.Where(m => m.PhaseTournoi == EPhaseTournoiModel.DemiFinale).ToList(); if (m_demiFinales.Count <= 0) m_demiFinales = null; m_finale = m_tournoi.Matchs.Where(m => m.PhaseTournoi == EPhaseTournoiModel.Finale).SingleOrDefault(); }
public BetModel(TournoiModel tournoi) { IDTournoi = tournoi.ID; List<JediModel> tmp = new List<JediModel>(); // Liste des jedis concourrants foreach (MatchModel m in tournoi.Matchs) { tmp.Add(m.Jedi1); tmp.Add(m.Jedi2); } // Unique occurrence de chacun d'eux m_availableJedis = tmp.DistinctBy(j => j.ID).ToList(); }
/// <summary> /// Constructeur. /// </summary> /// <param name="tournoi">Tournoi à éditer.</param> /// <param name="mModels">Liste des matchs disponibles.</param> public TournoiEditModel(TournoiModel tournoi, List<MatchModel> mModels) : base(mModels) { m_tournoi = tournoi; Nom = m_tournoi.Nom; // Affecte les sélections List<MatchModel> quartFinale = m_tournoi.Matchs.Where(m => m.PhaseTournoi == EPhaseTournoiModel.QuartFinale).ToList(); if (quartFinale.Count >= 4) { SelectedMatch1 = quartFinale[0]; SelectedMatch2 = quartFinale[1]; SelectedMatch3 = quartFinale[2]; SelectedMatch4 = quartFinale[3]; } }
public PreparedBetTournoiModel(TournoiModel tournoi, string username, int mise, int idBetJedi) : base(tournoi) { JediWebServiceClient webService = new JediWebServiceClient(); CustomUserManager manager = new CustomUserManager(webService); // L'utilisateur gagne son pari if (m_matchs[6].IdVainqueur == idBetJedi) { manager.UpdateUserPointsByAmount(username, 2 * mise); // Double sa mise } // L'utilisateur perd son pari else { manager.UpdateUserPointsByAmount(username, -mise); } webService.Close(); }
/// <summary> /// Constructeur. /// </summary> /// <param name="tournoi">Tournoi à traiter.</param> public PreparedTournoiModel(TournoiModel tournoi) { m_tournoi = tournoi; m_matchs = new List<MatchModel>(); JediWebServiceClient webService = new JediWebServiceClient(); int winnerID = -1; // Ajoute et calcul les 4 premiers matchs (Quart de finale) m_matchs.AddRange(m_tournoi.Matchs.Where(m => m.PhaseTournoi == EPhaseTournoiModel.QuartFinale)); foreach (MatchModel m in m_matchs) { winnerID = webService.ComputeMatchResult(MatchAdapter.fromMatchModel(m)); ; m.IdVainqueur = winnerID; } // Calcul des 2 matchs (Demi finale) for (int i = 0 ; i < 2; i++) { MatchModel mm = AffectMatchMainData(m_matchs[2 * i], m_matchs[2 * i + 1], null); mm.PhaseTournoi = EPhaseTournoiModel.DemiFinale; // Fait jouer le match winnerID = webService.ComputeMatchResult(MatchAdapter.fromMatchModel(mm)); ; mm.IdVainqueur = winnerID; m_matchs.Add(mm); } // Calcul du dernier match (Finale) MatchModel mFinale = AffectMatchMainData(m_matchs[4], m_matchs[5], null); mFinale.PhaseTournoi = EPhaseTournoiModel.Finale; // Fait jouer le match winnerID = webService.ComputeMatchResult(MatchAdapter.fromMatchModel(mFinale)); ; mFinale.IdVainqueur = winnerID; m_matchs.Add(mFinale); }