public ClassementUC() { ListStats = new Statistiques(); InitializeComponent(); lvStats.ItemsSource = ListStats.Stats; }
public List <StatistiquesModel> ListeStatistiques(string UID_R) { Region region = db.Regions.Where(r => r.UID == UID_R).FirstOrDefault(); var resuls = db.RegionStatistiques.Where(s => s.UID_R == UID_R).OrderByDescending(o => o.Date_Ins).ToList(); if (resuls.Count > 0) { foreach (var stat in resuls) { StatistiquesModel lst = new StatistiquesModel() { UID = stat.UID, Cas_Confirmer = (int)stat.Cas_Confirmer | 0, Cas_Mort = (int)stat.Cas_Mort | 0, Cas_Retablis = (int)stat.Cas_Retablis | 0, Total_Cas_Confirmer = (int)db.RegionStatistiques.Where(r => r.UID_R == UID_R && r.Date_Ins.Value <= stat.Date_Ins.Value).Sum(r => r.Cas_Confirmer) | 0, Total_Cas_Mort = (int)db.RegionStatistiques.Where(r => r.UID_R == UID_R && r.Date_Ins.Value <= stat.Date_Ins.Value).Sum(r => r.Cas_Mort) | 0, Total_Cas_Retablis = (int)db.RegionStatistiques.Where(r => r.UID_R == UID_R && r.Date_Ins.Value <= stat.Date_Ins.Value).Sum(r => r.Cas_Retablis) | 0, Date_Ins = ConvertDate.ConverDate((DateTime)stat.Date_Ins) }; Statistiques.Add(lst); } } else { Statistiques.Clear(); Statistiques.Add(new StatistiquesModel()); } return(Statistiques.OrderByDescending(x => x.Date_Ins).ToList()); }
private void displayStats(Statistiques stats) { this.label_nb_songs_val.Text = stats.chansons.ToString(); this.label_nb_users_val.Text = stats.utilisateurs.ToString(); this.label_nb_removed_val.Text = stats.elemines.ToString(); this.label_temps_val.Text = stats.temps; }
private Sauvegarde _sauvegarde; //référence au scriptableObejct permettant la sauvegarde // assigne les référence aux variables et créer un instance de Sauvegarde private void Start() { _teddy = GameObject.Find("Teddy"); _teddyScript = _teddy.GetComponent <joueur>(); _statScript = _teddy.GetComponent <Statistiques>(); _gestionnaireCombat = GameObject.Find("Manager jeu").GetComponent <gestionnaireCombat>(); _ventilation = GameObject.Find("Conduit.001").GetComponent <conduitScript>(); _sauvegarde = ScriptableObject.CreateInstance <Sauvegarde>(); }
public FicheCaracteristiqueGump(PlayerMobile from) : base(from, "Caractéristiques", 560, 622, 3) { int x = XBase; int y = YBase; int line = 0; int scale = 25; int space = 80; int lineStart = line; int StatTotal = from.RawStr + from.RawDex + from.RawInt; int attente = from.StatCap - StatTotal; AddSection(x, y + line * scale, 539, 60, "Caractéristiques", "Les caractéristiques influencent les attributs (vitalité, stamina & mana) ainsi que le système de combat et de magie. Un bonus est appliqué lorsqu'une caractéristique atteint le chiffre de 100. Vous regagnez les points indisponibles à chaque niveau.", new string[] { "<basefont color=#5A4A31>Disponible: | Indisponible: " + attente.ToString() + "<basefont>" }); line += 6; AddButton(x, (y + line * scale) + 20, 1436, 1436, 3, GumpButtonType.Reply, 0); AddTooltip(3001037); AddSection(x + 110, y + line * scale, 426, 60, "Force", "Augmente le poids maximum pouvant être porté, la regénération de la vie, les dégâts physiques et le maximum de points de vitalité. Bonus: +25 Vitalité, +25 Stones max.", new string[] { "<basefont color=#5A4A31> Force: " + from.RawStr + "<basefont>" }); if (Statistiques.CanRaise(from, StatType.Str)) { AddButton(x + 130, 105 + y + line * scale, 9770, 9770, 13, GumpButtonType.Reply, 0); } if (Statistiques.CanLower(from, StatType.Str)) { AddButton(x + 130 + 20, 105 + y + line * scale, 9771, 9771, 14, GumpButtonType.Reply, 0); } line += 5; AddButton(x, (y + line * scale) + 20, 1437, 1437, 3, GumpButtonType.Reply, 0); AddTooltip(3001037); AddSection(x + 110, y + line * scale, 426, 60, "Dexterité", "Augmente la regénération de la stamina, la vitesse de frappe, la vitesse de lancer de sort et le maximum de points de stamina. Bonus: +25 Stamina", new string[] { "<basefont color=#5A4A31> Dexterite: " + from.RawDex + "<basefont>" }); if (Statistiques.CanRaise(from, StatType.Dex)) { AddButton(x + 130, 105 + y + line * scale, 9770, 9770, 17, GumpButtonType.Reply, 0); } if (Statistiques.CanLower(from, StatType.Dex)) { AddButton(x + 130 + 20, 105 + y + line * scale, 9771, 9771, 18, GumpButtonType.Reply, 0); } line += 5; AddButton(x, (y + line * scale) + 20, 1438, 1438, 3, GumpButtonType.Reply, 0); AddTooltip(3001037); AddSection(x + 110, y + line * scale, 426, 60, "Intelligence", "Augmente la regénération de la mana, la puissance des sorts et le maximum de points de mana. Bonus: +25 Mana", new string[] { "<basefont color=#5A4A31> Intelligence: " + from.RawInt + "<basefont>" }); if (Statistiques.CanRaise(from, StatType.Int)) { AddButton(x + 130, 105 + y + line * scale, 9770, 9770, 21, GumpButtonType.Reply, 0); } if (Statistiques.CanLower(from, StatType.Int)) { AddButton(x + 130 + 20, 105 + y + line * scale, 9771, 9771, 22, GumpButtonType.Reply, 0); } }
private Statistiques statsRef; //référence au script de stats // évênnement de départ private void Start() { Teddy = GameObject.Find("Teddy"); _evennement.Experience = experience; _evennement.Nom = gameObject.name; pointsVie = pointsVieMax; //si on est pas le boss on fait la référence if (!estPoulet) { _renderer = transform.GetChild(0).gameObject; } //si on est unique alors pas besoin de spawner, un seul suffit :P if (estUnique == true) { spawner = null; } statsRef = Teddy.GetComponent <Statistiques>(); AS = Camera.main.GetComponent <AudioSource>(); }
// Ajouter une entrée « Statistiques » dans le menu principal de l’application, qui appellera une action de même nom dans le contrôleur des tâches public async Task <IActionResult> Statistiques() { var taches = await _context.Tache.ToListAsync(); var stats = new Statistiques(); stats.NbTachesTerminees = taches.Where(p => p.Terminee == true).Count(); stats.NbTachesEnCours = taches.Where(p => p.Terminee == false).Count(); stats.NbTachesRetard = taches.Where(p => p.DateEcheance < DateTime.Now).Count(); foreach (var item in taches) { TimeSpan datediff = (TimeSpan)(item.DateEcheance - item.DateCreation); stats.MoyenneTpsTaches = stats.MoyenneTpsTaches + datediff.Days; } stats.MoyenneTpsTaches = stats.MoyenneTpsTaches / taches.Count(); // Créer une nouvelle vue « Statistiques » pour le contrôleur des tâches et faire en sorte qu’elle affiche les informations ci-dessus dans de simples libellés return(View("Statistiques", stats)); }
public void TestCotisations() { Connection connexion = new Connection(); Club club = new Club("Test", "Test.com", "20 rue des Tests", "92140", "Test", "06 66 66 66 66", "*****@*****.**", 1); club.id = 15; Adhérents adhérents = new Adhérents("Test", "Test", new DateTime(1998, 8, 8), "Test", "92140", "Test"); adhérents.idClub = club.id; adhérents.cotisation = 250; Statistiques stats = new Statistiques(); List <int> liste = new List <int>(); List <Adhérents> listeA = new List <Adhérents>(); liste.Add(adhérents.cotisation); listeA.Add(adhérents); int[] tab = stats.CotisationElevee(club, liste); Assert.False(tab[0] != 250, "Le test de la plus haute cotisation a échoué."); Assert.False(listeA[tab[1]] != adhérents, "Le test sur le compteur a échoué."); }
private void updateStats() { ResponseServer response = service.getStatistics(); switch (response.status) { case 200: Statistiques stats = UtilJson.parseJsonsStatistics(response.message); displayStats(stats); break; case 401: this.label_nb_songs_val.Text = response.message; this.label_nb_users_val.Text = response.message; this.label_nb_removed_val.Text = response.message; this.label_temps_val.Text = response.message; break; default: break; } }
void Awake() { statsRef = transform.parent.GetComponent <Statistiques>(); }
private static void SetCaract(PlayerMobile from) { Statistiques.Reset(from); }
protected override void OnTick() { PlayerMobile pm = m as PlayerMobile; Item item = pm.FindItemOnLayer(Layer.Shirt); Item hair = pm.FindItemOnLayer(Layer.Hair); Item facialhair = pm.FindItemOnLayer(Layer.FacialHair); if (pm.MortEngine.MortVivant) { switch (pm.MortEngine.MortEvo) { case MortEvo.Aucune: if (pm.MortEngine.AmeLastFed.AddDays(7) < DateTime.Now) { pm.MortEngine.AmeLastFed = DateTime.Now; if (item is RaceSkin) { item.Hue = 0; } pm.HueMod = 0; pm.SendMessage("Puisque vous ne vous êtes pas nourri de l'âme d'un vivant depuis 7 jours, votre corps se déteriore."); //pm.MortEngine.MortRace = pm.Races; //pm.Races = Race.MortVivant; pm.MortEngine.MortEvo = MortEvo.Decomposition; //Competences.Reset(pm); Statistiques.Reset(pm); } break; case MortEvo.Decomposition: if (pm.MortEngine.AmeLastFed.AddDays(14) < DateTime.Now) { pm.MortEngine.AmeLastFed = DateTime.Now; if (item is RaceSkin) { item.Delete(); } pm.SendMessage("Puisque vous ne vous êtes pas nourri de l'âme d'un vivant depuis 14 jours, votre corps se déteriore à nouveau."); pm.MortEngine.MortEvo = MortEvo.Zombie; ZombieGump zombieGump = new ZombieGump(); EquipItem(pm, zombieGump, pm.Hue); } break; case MortEvo.Zombie: if (pm.MortEngine.AmeLastFed.AddDays(28) < DateTime.Now) { pm.MortEngine.AmeLastFed = DateTime.Now; if (item is MortRaceGump) { item.Delete(); } if (hair != null) { hair.Delete(); } if (facialhair != null) { facialhair.Delete(); } pm.SendMessage("Puisque vous ne vous êtes pas nourri de l'âme d'un vivant depuis 28 jours, votre corps se déteriore à nouveau."); pm.SendMessage("Avertissement: La prochaine transformation qui aura lieu dans 28 jours sera définitive. Nourrissez-vous de l'âme d'un vivant d'ici là."); pm.MortEngine.MortEvo = MortEvo.Squelette; SqueletteGump squeletteGump = new SqueletteGump(); EquipItem(pm, squeletteGump, 0); } break; case MortEvo.Squelette: if (pm.MortEngine.AmeLastFed.AddDays(56) < DateTime.Now) { pm.MortEngine.AmeLastFed = DateTime.Now; if (item is MortRaceGump) { item.Delete(); } if (hair != null) { hair.Delete(); } if (facialhair != null) { facialhair.Delete(); } pm.SendMessage("Puisque vous ne vous êtes pas nourri de l'âme d'un vivant depuis 56 jours, votre corps se transforme en cette chose définitivement."); pm.MortEngine.MortEvo = MortEvo.Ombre; OmbreGump ombreGump = new OmbreGump(); EquipItem(pm, ombreGump, 0); } break; case MortEvo.Ombre: Stop(); break; } } }
//Statistiques private void pictureBox11_Click(object sender, EventArgs e) { int i = 0; DateTime today = DateTime.Today; TODAYDATE.Text = today.ToString("yyyy-MM-dd"); // TODAYDATE.Text = DateTime.Now.ToLongDateString(); UserLine.Hide(); UnitesLine.Hide(); VentesLine.Hide(); StatLine.Show(); DisLine.Hide(); AchatsLine.Hide(); ProduitLine.Hide(); Statistiques.BringToFront(); //==> TOP 5 PRODUCTS SqlCommand cmd = con.CreateCommand(); cmd.CommandType = CommandType.Text; cmd.CommandText = "select top(5) product, SUM(Total) from Commande GROUP BY product order by SUM(Total) desc"; cmd.ExecuteNonQuery(); DataTable dt9 = new DataTable(); SqlDataAdapter da9 = new SqlDataAdapter(cmd); da9.Fill(dt9); dataGridView5.DataSource = dt9; //==> NUMBER OF ORDERS DONE TODAY SqlCommand cmd1 = con.CreateCommand(); cmd1.CommandType = CommandType.Text; cmd1.CommandText = "SELECT COUNT( DISTINCT id), COUNT(DISTINCT product), COUNT( DISTINCT order_id), SUM(Total) FROM Commande WHERE ComDate ='" + TODAYDATE.Text + "'"; cmd1.ExecuteNonQuery(); DataTable dt11 = new DataTable(); SqlDataAdapter da11 = new SqlDataAdapter(cmd1); da11.Fill(dt11); // dataGridView6.DataSource = dt11; NumCommande.Text = dt11.Rows[0][0].ToString(); NumProducts.Text = dt11.Rows[0][1].ToString(); ClientsToday.Text = dt11.Rows[0][2].ToString(); TotalAmountToday.Text = dt11.Rows[0][3].ToString(); //==> NUMBER OF CLIENTS AND PRODUCTS MONTH SqlCommand cmd2 = con.CreateCommand(); cmd2.CommandType = CommandType.Text; cmd2.CommandText = "SELECT COUNT(DISTINCT product), COUNT( DISTINCT order_id) FROM Commande WHERE month(ComDate) ='" + DateTime.Now.Month + "'"; cmd2.ExecuteNonQuery(); DataTable dt3 = new DataTable(); SqlDataAdapter da3 = new SqlDataAdapter(cmd2); da3.Fill(dt3); NumProdMonth.Text = dt3.Rows[0][0].ToString(); NumClientMonth.Text = dt3.Rows[0][1].ToString(); //==> Linear Chart datatable /* SqlCommand cmd3 = con.CreateCommand(); * cmd3.CommandType = CommandType.Text; * cmd3.CommandText = "select Distinct ComDate, SUM(Total) from Commande group by ComDate"; * cmd3.ExecuteNonQuery(); * DataTable dt4 = new DataTable(); * SqlDataAdapter da4 = new SqlDataAdapter(cmd3); * da4.Fill(dt4);*/ /*chart2.DataSource = v_SalesTableAdapter; * * * * chart2.Series["Series1"].XValueMember= "ComDate"; * chart2.Series["Series1"].YValueMembers =" Total"; * * * chart2.DataBind();*/ //==> /* SqlCommand cmd2 = con.CreateCommand(); * cmd2.CommandType = CommandType.Text; * cmd2.CommandText = "SELECT COUNT(product) FROM Commande WHERE ComDate ='" + TODAYDATE.Text + "'"; * cmd2.ExecuteNonQuery(); * DataTable dt10 = new DataTable(); * SqlDataAdapter da10 = new SqlDataAdapter(cmd2); * da11.Fill(dt10); * // dataGridView6.DataSource = dt10;*/ // NumCommande.Text = dataGridView6.Rows[0].Cells[0].Value.ToString(); MonthNow1.Text = DateTime.Now.ToString("MMMM"); MonthNow2.Text = DateTime.Now.ToString("MMMM"); //==> CHART /* SqlCommand cmd4 = con.CreateCommand(); * cmd4.CommandType = CommandType.Text; * cmd4.CommandText = "SELECT Total FROM Commande "; * cmd4.ExecuteNonQuery(); * DataTable dt4 = new DataTable(); * SqlDataAdapter da4 = new SqlDataAdapter(cmd4); * da4.Fill(dt4);*/ }
private void metroStats_Click(object sender, EventArgs e) { Statistiques stat = new Statistiques(); stat.ShowDialog(); }
public ActionResult Gestion(int?page, GestionViewModel gestionViewModel, int?tab, int?vientDePagination) { if (TempData["gestionViewModelPOST"] != null) { gestionViewModel = TempData["gestionViewModelPOST"] as GestionViewModel; } if (vientDePagination != null) { if (TempData["gestionViewModelAncien"] != null) { gestionViewModel = TempData["gestionViewModelAncien"] as GestionViewModel; } } //Si on a fait un submit ou une chose autre que la pagination, on remet les pages à 0! else { page = null; } //On crée le gestion ViewModel s'il n'existe pas if (gestionViewModel == null) { gestionViewModel = new GestionViewModel(); } if (tab != null) { gestionViewModel.noTabSelected = (int)tab; } else if (gestionViewModel.noTabSelected == null) { gestionViewModel.noTabSelected = 1; } //Membres if (gestionViewModel.noTabSelected == 1) { int nbMembresParPage = 50; /*(m.compteSupprimeParAdmin == null && m.dateSuppressionDuCompte == null)*/ IQueryable <Membre> listeDeMembres = Statistiques.ListeMembres(gestionViewModel.membresPremiumUniquement, gestionViewModel.ageMin, gestionViewModel.ageMax, gestionViewModel.noProvince, gestionViewModel.noVille, gestionViewModel.afficherMembresDesactiver); gestionViewModel.nbMembresTotalTrouves = listeDeMembres.Count(); GestionPagination(page, nbMembresParPage, (int)gestionViewModel.nbMembresTotalTrouves); ViewBag.premiumUniquement = new List <SelectListItem> { new SelectListItem { Text = "Premium", Value = true.ToString() }, new SelectListItem { Text = "Gratuits", Value = false.ToString() }, }; if (gestionViewModel.triMembrePar == "age") { listeDeMembres = listeDeMembres.OrderByDescending(m => m.dateNaissance).ThenBy(m => m.noMembre); } else if (gestionViewModel.triMembrePar == "sexe") { listeDeMembres = listeDeMembres.OrderByDescending(m => m.homme).ThenBy(m => m.noMembre); } else if (gestionViewModel.triMembrePar == "dateInscription") { listeDeMembres = listeDeMembres.OrderByDescending(m => m.dateInscription).ThenBy(m => m.noMembre); } else if (gestionViewModel.triMembrePar == "derniereConnexion") { listeDeMembres = listeDeMembres.OrderByDescending(m => m.listeConnexions.OrderByDescending(x => x.dateConnexion).Select(x => (DateTime?)x.dateConnexion).FirstOrDefault() ).ThenBy(m => m.noMembre); } else { listeDeMembres = listeDeMembres.OrderBy(m => m.noMembre); } ViewBag.province = new SelectList(db.Provinces, "noProvince", "nomProvince", gestionViewModel.noProvince); gestionViewModel.lesMembres = listeDeMembres .Skip((int)(ViewBag.currentPage - 1) * nbMembresParPage) .Take(nbMembresParPage) .Include(a => a.listeRaisonsSurSite) .Include(a => a.listeConnexions) .ToList(); } //Signalement else if (gestionViewModel.noTabSelected == 2) { List <Signalement> signalementsAChangerDEtat = db.Signalements.Where(m => m.etatSignalementActuel.nomEtatSignalement == "En suivi" && m.dateSuiviNecessaire <= DateTime.Now).ToList(); if (signalementsAChangerDEtat.Count > 0) { foreach (Signalement s in signalementsAChangerDEtat) { s.etatSignalementActuel = db.EtatSignalements.Where(m => m.nomEtatSignalement == "À traiter").FirstOrDefault(); } db.SaveChanges(); } int nbSignalementParPage = 50; IQueryable <Signalement> listeSignalement = Statistiques.ListeSignalement(gestionViewModel.noEtatSignalementRecherche); gestionViewModel.nbSignalementTotalTrouves = listeSignalement.Count(); GestionPagination(page, nbSignalementParPage, (int)gestionViewModel.nbSignalementTotalTrouves); /*ViewBag.premiumUniquement = new List<SelectListItem> * { * new SelectListItem { Text = "Premium", Value = true.ToString() }, * new SelectListItem { Text = "Gratuits", Value = false.ToString() }, * };*/ ViewBag.listeEtatSignalementPlainte = db.EtatSignalements; gestionViewModel.lesSignalement = listeSignalement.OrderBy(m => m.noEtatSignalementActuel).ThenByDescending(m => m.dateSignalement).ThenBy(m => m.noSignalement) .Skip((int)(ViewBag.currentPage - 1) * nbSignalementParPage) .Take(nbSignalementParPage) .Include(m => m.lesCommentairesSurCeSignalement) .ToList(); foreach (Signalement s in gestionViewModel.lesSignalement) { CommentaireSignalement nouveauCommentaire = new CommentaireSignalement(); nouveauCommentaire.compteAdminEnvoyeur = db.CompteAdmins.Where(m => m.nomCompte == User.Identity.Name).FirstOrDefault(); nouveauCommentaire.dateCommentaire = DateTime.MinValue; nouveauCommentaire.noCompteAdminEnvoyeur = nouveauCommentaire.compteAdminEnvoyeur.noCompteAdmin; nouveauCommentaire.signalementLie = s; nouveauCommentaire.noSignalementLie = s.noSignalement; s.lesCommentairesSurCeSignalement.Add(nouveauCommentaire); } gestionViewModel.nbSignalementTotalNouveau = Statistiques.NbSignalementsRecu(false, true); gestionViewModel.nbSignalementTotalRecuSite = Statistiques.NbSignalementsRecu(false, false); gestionViewModel.nbSignalementTotalTraites = Statistiques.NbSignalementsRecu(true, false); } //Abonnement else { int nbAbonnementsParPage = 25; gestionViewModel.nbAbonnements1Mois = Statistiques.NbAbonnement(1, gestionViewModel.anneeDebut, gestionViewModel.moisDebut, gestionViewModel.jourDebut, gestionViewModel.anneeFin, gestionViewModel.moisFin, gestionViewModel.jourFin); gestionViewModel.nbAbonnements6Mois = Statistiques.NbAbonnement(6, gestionViewModel.anneeDebut, gestionViewModel.moisDebut, gestionViewModel.jourDebut, gestionViewModel.anneeFin, gestionViewModel.moisFin, gestionViewModel.jourFin); gestionViewModel.nbAbonnements12Mois = Statistiques.NbAbonnement(12, gestionViewModel.anneeDebut, gestionViewModel.moisDebut, gestionViewModel.jourDebut, gestionViewModel.anneeFin, gestionViewModel.moisFin, gestionViewModel.jourFin); gestionViewModel.nbDesabonnementTotal = Statistiques.NbDesabonnement(gestionViewModel.anneeDebut, gestionViewModel.moisDebut, gestionViewModel.jourDebut, gestionViewModel.anneeFin, gestionViewModel.moisFin, gestionViewModel.jourFin); gestionViewModel.revenuTotal = Statistiques.Revenu(null, gestionViewModel.anneeDebut, gestionViewModel.moisDebut, gestionViewModel.jourDebut, gestionViewModel.anneeFin, gestionViewModel.moisFin, gestionViewModel.jourFin); gestionViewModel.TPSTotal = Statistiques.RevenuTPS(null, gestionViewModel.anneeDebut, gestionViewModel.moisDebut, gestionViewModel.jourDebut, gestionViewModel.anneeFin, gestionViewModel.moisFin, gestionViewModel.jourFin); gestionViewModel.TVQTotal = Statistiques.RevenuTVQ(null, gestionViewModel.anneeDebut, gestionViewModel.moisDebut, gestionViewModel.jourDebut, gestionViewModel.anneeFin, gestionViewModel.moisFin, gestionViewModel.jourFin); IQueryable <Abonnement> listeDesAbonnementQuery = Statistiques.LesAbonnements(gestionViewModel.anneeDebut, gestionViewModel.moisDebut, gestionViewModel.jourDebut, gestionViewModel.anneeFin, gestionViewModel.moisFin, gestionViewModel.jourFin); GestionPagination(page, nbAbonnementsParPage, listeDesAbonnementQuery.Count()); gestionViewModel.listeDesAbonnements = listeDesAbonnementQuery.OrderByDescending(m => m.datePaiement).ThenBy(m => m.noAbonnement) .Skip((int)(ViewBag.currentPage - 1) * nbAbonnementsParPage) .Take(nbAbonnementsParPage) .Include(m => m.provinceFacturation) .ToList(); int?anneeLaPlusLoin = db.Abonnements.OrderBy(m => m.datePaiement).Select(m => m.datePaiement).FirstOrDefault().Year; int?anneeLaPlusProche = db.Abonnements.OrderByDescending(m => m.datePaiement).Select(m => m.datePaiement).FirstOrDefault().Year; setupViewBagMoisEtAnnee(gestionViewModel.moisDebut, gestionViewModel.moisFin, gestionViewModel.anneeDebut, gestionViewModel.anneeFin, anneeLaPlusLoin, anneeLaPlusProche); } TempData["gestionViewModelAncien"] = gestionViewModel; return(View("Gestion", gestionViewModel)); }
//[HttpGet] public ActionResult Statistique(int?page, StatistiqueViewModel statistiqueViewModel, int?tab, int?vientDePagination) { if (TempData["statistiqueViewModelPOST"] != null) { statistiqueViewModel = TempData["statistiqueViewModelPOST"] as StatistiqueViewModel; } if (vientDePagination != null) { statistiqueViewModel = TempData["statistiqueViewModelAncien"] as StatistiqueViewModel; } //Si on a fait un submit ou une chose autre que la pagination, on remet les pages à 0! else { page = null; } //On crée le gestion ViewModel s'il n'existe pas if (statistiqueViewModel == null) { statistiqueViewModel = new StatistiqueViewModel(); } if (tab != null) { statistiqueViewModel.noTabSelected = (int)tab; } else if (statistiqueViewModel.noTabSelected == null) { statistiqueViewModel.noTabSelected = 1; } //Visites if (statistiqueViewModel.noTabSelected == 1) { int?anneeLaPlusLoin = db.Connexions.OrderBy(m => m.dateConnexion).Select(m => m.dateConnexion).FirstOrDefault().Year; int?anneeLaPlusProche = db.Connexions.OrderByDescending(m => m.dateConnexion).Select(m => m.dateConnexion).FirstOrDefault().Year; setupViewBagMoisEtAnnee(statistiqueViewModel.moisDebut, statistiqueViewModel.moisFin, statistiqueViewModel.anneeDebut, statistiqueViewModel.anneeFin, anneeLaPlusLoin, anneeLaPlusProche); statistiqueViewModel.nbVisitesGratuits = Statistiques.NbConnexion(statistiqueViewModel.anneeDebut, statistiqueViewModel.moisDebut, statistiqueViewModel.jourDebut, statistiqueViewModel.anneeFin, statistiqueViewModel.moisFin, statistiqueViewModel.jourFin, false); statistiqueViewModel.nbVisitesPremium = Statistiques.NbConnexion(statistiqueViewModel.anneeDebut, statistiqueViewModel.moisDebut, statistiqueViewModel.jourDebut, statistiqueViewModel.anneeFin, statistiqueViewModel.moisFin, statistiqueViewModel.jourFin, true); statistiqueViewModel.nbVisitesVisiteurs = Statistiques.NbConnexion(statistiqueViewModel.anneeDebut, statistiqueViewModel.moisDebut, statistiqueViewModel.jourDebut, statistiqueViewModel.anneeFin, statistiqueViewModel.moisFin, statistiqueViewModel.jourFin, null); } //Messagerie else if (statistiqueViewModel.noTabSelected == 2) { int?anneeLaPlusLoinMessage = db.Messages.OrderBy(m => m.dateEnvoi).Select(m => m.dateEnvoi).FirstOrDefault().Year; int?anneeLaPlusProcheMessage = db.Messages.OrderByDescending(m => m.dateEnvoi).Select(m => m.dateEnvoi).FirstOrDefault().Year; int?anneeLaPlusLoinCadeaux = db.Gifts.OrderBy(m => m.dateEnvoi).Select(m => m.dateEnvoi).FirstOrDefault().Year; int?anneeLaPlusProcheCadeaux = db.Gifts.OrderByDescending(m => m.dateEnvoi).Select(m => m.dateEnvoi).FirstOrDefault().Year; int?anneeLaPlusLoin = null; int?anneeLaPlusProche = null; if (anneeLaPlusLoinCadeaux == 1) { anneeLaPlusLoinCadeaux = null; } if (anneeLaPlusLoinMessage == 1) { anneeLaPlusLoinMessage = null; } if (anneeLaPlusProcheCadeaux == 1) { anneeLaPlusProcheCadeaux = null; } if (anneeLaPlusProcheMessage == 1) { anneeLaPlusProcheMessage = null; } if (anneeLaPlusLoinCadeaux != null && anneeLaPlusLoinMessage != null) { anneeLaPlusLoin = (anneeLaPlusLoinCadeaux > anneeLaPlusLoinMessage ? anneeLaPlusLoinMessage : anneeLaPlusLoinCadeaux); } else if (anneeLaPlusLoinCadeaux == null) { anneeLaPlusLoin = anneeLaPlusLoinMessage; } else if (anneeLaPlusLoinMessage == null) { anneeLaPlusLoin = anneeLaPlusLoinCadeaux; } if (anneeLaPlusProcheCadeaux != null && anneeLaPlusProcheMessage != null) { anneeLaPlusProche = (anneeLaPlusProcheCadeaux < anneeLaPlusProcheMessage ? anneeLaPlusProcheMessage : anneeLaPlusProcheCadeaux); } else if (anneeLaPlusProcheCadeaux == null) { anneeLaPlusProche = anneeLaPlusProcheMessage; } else if (anneeLaPlusProcheMessage == null) { anneeLaPlusProche = anneeLaPlusProcheCadeaux; } setupViewBagMoisEtAnnee(statistiqueViewModel.moisDebut, statistiqueViewModel.moisFin, statistiqueViewModel.anneeDebut, statistiqueViewModel.anneeFin, anneeLaPlusLoin, anneeLaPlusProche); statistiqueViewModel.nbCadeauxEnvoyes = Statistiques.NbMessagesOuCadeaux(statistiqueViewModel.anneeDebut, statistiqueViewModel.moisDebut, statistiqueViewModel.jourDebut, statistiqueViewModel.anneeFin, statistiqueViewModel.moisFin, statistiqueViewModel.jourFin, true); statistiqueViewModel.nbMessagesEnvoyes = Statistiques.NbMessagesOuCadeaux(statistiqueViewModel.anneeDebut, statistiqueViewModel.moisDebut, statistiqueViewModel.jourDebut, statistiqueViewModel.anneeFin, statistiqueViewModel.moisFin, statistiqueViewModel.jourFin, false); } //Activites else { int nbOrganisateursParPage = 25; int?anneeLaPlusLoin = db.Activites.OrderBy(m => m.date).Select(m => m.date).FirstOrDefault().Year; int?anneeLaPlusProche = db.Activites.OrderByDescending(m => m.date).Select(m => m.date).FirstOrDefault().Year; setupViewBagMoisEtAnnee(statistiqueViewModel.moisDebut, statistiqueViewModel.moisFin, statistiqueViewModel.anneeDebut, statistiqueViewModel.anneeFin, anneeLaPlusLoin, anneeLaPlusProche); //Changer null pour false si on veut seulement les activités non-annulés statistiqueViewModel.nbActivitesOrganisesTrouves = Statistiques.NbActiviteEtParticipantsOrganises(false, null, statistiqueViewModel.activitePayante, statistiqueViewModel.noThemeRecherche, statistiqueViewModel.noProvince, statistiqueViewModel.noVille, statistiqueViewModel.anneeDebut, statistiqueViewModel.moisDebut, statistiqueViewModel.jourDebut, statistiqueViewModel.anneeFin, statistiqueViewModel.moisFin, statistiqueViewModel.jourFin); statistiqueViewModel.nbActivitesAnnuleeTrouves = Statistiques.NbActiviteEtParticipantsOrganises(false, true, statistiqueViewModel.activitePayante, statistiqueViewModel.noThemeRecherche, statistiqueViewModel.noProvince, statistiqueViewModel.noVille, statistiqueViewModel.anneeDebut, statistiqueViewModel.moisDebut, statistiqueViewModel.jourDebut, statistiqueViewModel.anneeFin, statistiqueViewModel.moisFin, statistiqueViewModel.jourFin); statistiqueViewModel.nbParticipantsTrouves = Statistiques.NbActiviteEtParticipantsOrganises(true, false, statistiqueViewModel.activitePayante, statistiqueViewModel.noThemeRecherche, statistiqueViewModel.noProvince, statistiqueViewModel.noVille, statistiqueViewModel.anneeDebut, statistiqueViewModel.moisDebut, statistiqueViewModel.jourDebut, statistiqueViewModel.anneeFin, statistiqueViewModel.moisFin, statistiqueViewModel.jourFin); IQueryable <Membre> listeOrganisateurRequete = Statistiques.ListeOrganisateursActivite(null, statistiqueViewModel.activitePayante, statistiqueViewModel.noThemeRecherche, statistiqueViewModel.noProvince, statistiqueViewModel.noVille, statistiqueViewModel.anneeDebut, statistiqueViewModel.moisDebut, statistiqueViewModel.jourDebut, statistiqueViewModel.anneeFin, statistiqueViewModel.moisFin, statistiqueViewModel.jourFin, statistiqueViewModel.afficherMembresDesactiver); GestionPagination(page, nbOrganisateursParPage, listeOrganisateurRequete.Count()); statistiqueViewModel.listeOrganisateurs = listeOrganisateurRequete.OrderBy(m => m.noMembre) .Skip((int)(ViewBag.currentPage - 1) * nbOrganisateursParPage) .Take(nbOrganisateursParPage) .ToList(); ViewBag.payant = new List <SelectListItem> { new SelectListItem() { Text = "Payant", Value = true.ToString() }, new SelectListItem() { Text = "Gratuit", Value = false.ToString() } }; ViewBag.province = new SelectList(db.Provinces, "noProvince", "nomProvince", statistiqueViewModel.noProvince); ViewBag.themes = new SelectList(db.Themes, "noTheme", "theme", statistiqueViewModel.noThemeRecherche); } TempData["statistiqueViewModelAncien"] = statistiqueViewModel; return(View("Statistique", statistiqueViewModel)); }
public void Update_Suppartie(SNAP_DATABASE Contexte_database, string nom_partie, Statistiques Stats_SNAP) { //récupérer la liste des joueurs présents à l apartie. var nom_joueur_liste = Contexte_database.Database.SqlQuery <string>("SELECT Joueurs_ID FROM Entity_Occurence WHERE Partie_ID ='" + nom_partie + "'").ToList(); for (int i = 0; i < nom_joueur_liste.Count; i++) { //Récupération des stats effectuer lors de la partie var nb_kill_partie = Contexte_database.Database.SqlQuery <int?>("SELECT Nombre_kill FROM Entity_Occurence WHERE Joueurs_ID ='" + nom_joueur_liste[i] + "' AND Partie_ID ='" + nom_partie + "'"); var nb_death_partie = Contexte_database.Database.SqlQuery <int?>("SELECT Nombre_death FROM Entity_Occurence WHERE Joueurs_ID ='" + nom_joueur_liste[i] + "' AND Partie_ID ='" + nom_partie + "'"); var nb_assist_partie = Contexte_database.Database.SqlQuery <int?>("SELECT Nombre_assist FROM Entity_Occurence WHERE Joueurs_ID ='" + nom_joueur_liste[i] + "' AND Partie_ID ='" + nom_partie + "'"); var nb_point_delta = Contexte_database.Database.SqlQuery <int?>("SELECT Delta_point FROM Entity_Occurence WHERE Joueurs_ID ='" + nom_joueur_liste[i] + "' AND Partie_ID ='" + nom_partie + "'"); var Best_player = Contexte_database.Database.SqlQuery <string>("SELECT Best_player FROM Entity_Occurence WHERE Joueurs_ID ='" + nom_joueur_liste[i] + "' AND Partie_ID ='" + nom_partie + "'"); //récupérer les stats avant la suppression de cette partie afin de pouvoir les soustraire. var nb_kill = Contexte_database.Database.SqlQuery <int?>("SELECT Nombre_kill_tot FROM Entity_Joueurs WHERE Surnom ='" + nom_joueur_liste[i] + "'"); var nb_death = Contexte_database.Database.SqlQuery <int?>("SELECT Nombre_death_tot FROM Entity_Joueurs WHERE Surnom ='" + nom_joueur_liste[i] + "'"); var nb_assist = Contexte_database.Database.SqlQuery <int?>("SELECT Nombre_assistance_tot FROM Entity_Joueurs WHERE Surnom ='" + nom_joueur_liste[i] + "'"); var nb_participation = Contexte_database.Database.SqlQuery <int?>("SELECT Nombre_de_participation FROM Entity_Joueurs WHERE Surnom ='" + nom_joueur_liste[i] + "'"); var nb_point_tot = Contexte_database.Database.SqlQuery <int?>("SELECT Nombre_de_point FROM Entity_Joueurs WHERE Surnom ='" + nom_joueur_liste[i] + "'"); var nb_parties_won = Contexte_database.Database.SqlQuery <int?>("SELECT Nb_parties_won FROM Entity_Joueurs WHERE Surnom ='" + nom_joueur_liste[i] + "'"); //calcul des nouvelles stats int?nbkill_tot = nb_kill.ElementAt(0) - nb_kill_partie.ElementAt(0); int?nbdeath_tot = nb_death.ElementAt(0) - nb_death_partie.ElementAt(0); int?nbassist_tot = nb_assist.ElementAt(0) - nb_assist_partie.ElementAt(0); int?nbparticipation_tot = nb_participation.ElementAt(0) - 1; float ratio_tot = 0; if (nbdeath_tot.Value == 0) { ratio_tot = (float)nbkill_tot.Value; } else { ratio_tot = (float)nbkill_tot.Value / (float)nbdeath_tot.Value; ratio_tot = (float)Math.Round(ratio_tot, 1); } int?nbpointtot = nb_point_tot.ElementAt(0) - nb_point_delta.ElementAt(0); int?nbpartiegain = nb_parties_won.ElementAt(0); if (Best_player.ElementAt(0) == "oui") { nbpartiegain = nbpartiegain - 1; } //mise à jour des stats var index_joueur = Contexte_database.Database.SqlQuery <int>("SELECT id FROM Entity_Joueurs WHERE Surnom ='" + nom_joueur_liste[i] + "'").ToList().ElementAt(0); var Joueur_tomodify = Contexte_database.Table_Joueurs.Find(index_joueur); Entity_joueurs updatedUser = Joueur_tomodify; updatedUser.Nombre_kill_tot = nbkill_tot; updatedUser.Nombre_death_tot = nbdeath_tot; updatedUser.Nombre_assistance_tot = nbassist_tot; updatedUser.Ratio_tot = ratio_tot; updatedUser.Nombre_de_participation = nbparticipation_tot; updatedUser.Nombre_de_point = nbpointtot; updatedUser.Nb_parties_won = nbpartiegain; // mise à jour et sauvegarde du contexte. Contexte_database.Entry(Joueur_tomodify).CurrentValues.SetValues(updatedUser); Contexte_database.SaveChanges(); } //appel à la fonction stat permettant de recalculer le classement Stats_SNAP.Classement_joueurs(Contexte_database); }