Example #1
0
        public ActionResult Statistiques()
        {
            StatistiquesVM svm = new StatistiquesVM();

            svm.Top5MembreGenereuxSemaine  = unitOfWork.ObjetRepository.getTopMembres(TimeSpace.SEMAINE);
            svm.Top5MembreGenereuxMois     = unitOfWork.ObjetRepository.getTopMembres(TimeSpace.MOIS);
            svm.Top5CategorieSemaineBest   = unitOfWork.ObjetRepository.getTopCategories(TimeSpace.SEMAINE, true);
            svm.Top5CategorieSemaineLeast  = unitOfWork.ObjetRepository.getTopCategories(TimeSpace.SEMAINE, false);
            svm.Top5CategorieMoisBest      = unitOfWork.ObjetRepository.getTopCategories(TimeSpace.MOIS, true);
            svm.Top5CategorieMoisLeast     = unitOfWork.ObjetRepository.getTopCategories(TimeSpace.MOIS, false);
            svm.Top5MembresApreciesMois    = unitOfWork.ObjetRepository.getTopMembresAprecies(TimeSpace.MOIS);
            svm.Top5MembresApreciesSemaine = unitOfWork.ObjetRepository.getTopMembresAprecies(TimeSpace.SEMAINE);
            return(View(svm));
        }
        public Statistiques()
        {
            InitializeComponent();

            DataContext = new StatistiquesVM();
        }
Example #3
0
        public ActionResult PATHOLOGIES(PathologieVM pathologie)
        {
            if (ModelState.IsValid)
            {
                using (IDAL dal = new Dal())
                {
                    //Recuperer tous les dossiers basés sur le sexe
                    //Filtrer avec la tranche d'age
                    //ObtenirTousLesDiagnostic de chacun de ses dossiers par maladie
                    List <DOSSIER> listeDossiers = null;

                    if (pathologie.Genre == 0 || pathologie.Genre == 1)
                    {
                        listeDossiers = dal.ObtenirTousLesDossiers(false).Where(d => d.Patient.Sexe == pathologie.Genre).ToList();
                    }
                    else
                    {
                        listeDossiers = dal.ObtenirTousLesDossiers(false);
                    }

                    if (listeDossiers != null)
                    {
                        List <DOSSIER> EchantillonDossier = new List <DOSSIER>();
                        foreach (var d in listeDossiers)
                        {
                            if ((dal.CalculAge(d.Patient.DateNaissance) <= pathologie.Tranche.sup) && (dal.CalculAge(d.Patient.DateNaissance) >= pathologie.Tranche.inf))
                            {
                                EchantillonDossier.Add(d);
                            }
                        }
                        if (EchantillonDossier.Count > 0)
                        {
                            List <StatistiquesVM> Resultat = new List <StatistiquesVM>();
                            StatistiquesVM        stat     = new StatistiquesVM();
                            foreach (var p in pathologie.MaladiesId)
                            {
                                if (!p.Equals(String.Empty))
                                {
                                    stat.Label  = CRYPTAGE.StringHelpers.Decrypt(dal.ObtenirMaladieParId(p).Intitule);
                                    stat.Taille = 0;
                                    List <DIAGNOSTIC> tempListe = null, tempListeM = new List <DIAGNOSTIC>();
                                    foreach (var e in EchantillonDossier)
                                    {
                                        tempListe = dal.RecupererTousLesDiagnosticDossier(e);
                                        if (tempListe != null)
                                        {
                                            tempListe = tempListe.Where(d => d.Maladie != null && d.DateDiagnostic >= pathologie.Periode.inf && d.DateDiagnostic <= pathologie.Periode.sup).ToList();
                                        }

                                        if (tempListe != null)
                                        {
                                            tempListeM = tempListe
                                                         .Where(m => (m.Maladie.MaladieID == p))
                                                         .ToList();

                                            stat.Taille += tempListeM.Count();
                                        }
                                    }

                                    Resultat.Add(stat);
                                    stat = new StatistiquesVM();
                                }
                            }
                            List <DataPoint> dataPoints = new List <DataPoint>();
                            foreach (var r in Resultat)
                            {
                                dataPoints.Add(new DataPoint(r.Label, r.Taille));
                            }

                            ViewBag.DataPoints = JsonConvert.SerializeObject(dataPoints);
                            return(View("StatsPathologies"));
                        }
                    }
                    return(View("Error"));
                }
            }
            else
            {
                return(RedirectToAction("PATHOLOGIES"));
            }
        }
Example #4
0
        public ActionResult MATERNITE(MaterniteVM preferences)
        {
            using (IDAL dal = new Dal())
            {
                if (ModelState.IsValid)
                {
                    List <LIAISONDOSSIERGROUPECIBLE> MembresGC      = new List <LIAISONDOSSIERGROUPECIBLE>();
                    List <StatistiquesVM>            StatistiquesVM = new List <StatistiquesVM>();
                    StatistiquesVM stat = new StatistiquesVM();

                    foreach (var g in preferences.GroupeId)
                    {
                        MembresGC.AddRange(dal.ObtenirToutesLesLiaisonsDunGroupeParId(g, 1));
                    }
                    if (MembresGC.Count > 0)
                    {
                        List <GROSSESSE> grossesse = new List <GROSSESSE>();

                        foreach (var m in MembresGC)
                        {
                            grossesse.AddRange(dal.ObtenirInfosGrossesseParLiaison(m.LiaisonDossierGroupeCibleID));
                        }
                        if (grossesse.Count > 0)
                        {
                            foreach (var t in preferences.ResultatId)
                            {
                                if (t != -77)
                                {
                                    stat.Taille = 0;
                                    foreach (var gr in grossesse)
                                    {
                                        if (gr.Resultat == t)
                                        {
                                            stat.Taille += 1;
                                        }
                                    }
                                    for (int j = 0; j < preferences.cle.Length; j++)
                                    {
                                        if (preferences.cle[j] == t)
                                        {
                                            stat.Label = preferences.Intitule[j];
                                        }
                                    }

                                    StatistiquesVM.Add(stat);
                                }
                                stat = new StatistiquesVM();
                            }
                        }
                    }
                    List <DataPoint> dataPoints = new List <DataPoint>();
                    foreach (var r in StatistiquesVM)
                    {
                        dataPoints.Add(new DataPoint(r.Label, r.Taille));
                    }

                    ViewBag.DataPoints = JsonConvert.SerializeObject(dataPoints);
                    return(View("StatsMaternite"));
                }

                return(View("ConsulterMaternite", preferences));
            }
        }