Beispiel #1
0
        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>();
    }
Beispiel #5
0
        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);
            }
        }
Beispiel #6
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>();
    }
Beispiel #7
0
        // 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));
        }
Beispiel #8
0
        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;
            }
        }
Beispiel #10
0
 void Awake()
 {
     statsRef = transform.parent.GetComponent <Statistiques>();
 }
Beispiel #11
0
 private static void SetCaract(PlayerMobile from)
 {
     Statistiques.Reset(from);
 }
Beispiel #12
0
        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;
                }
            }
        }
Beispiel #13
0
        //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);*/
        }
Beispiel #14
0
        private void metroStats_Click(object sender, EventArgs e)
        {
            Statistiques stat = new Statistiques();

            stat.ShowDialog();
        }
Beispiel #15
0
        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));
        }
Beispiel #16
0
        //[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));
        }
Beispiel #17
0
        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);
        }