Пример #1
0
        /// <summary>
        /// Méthode permettant la consultation des pge par categorie (etape 5)
        /// </summary>
        public ActionResult Categorie(int idProgrammation)
        {
            IEnumerable <ProgrammationDocumentPgeDto> listePGE = this.CalculService.GetAllDocumentPgeByProgrammation(idProgrammation);
            ProgrammationDocumentPGECategorieVm       model    = new ProgrammationDocumentPGECategorieVm();

            model.ListePGE = listePGE;
            return(View(model));
        }
Пример #2
0
        public ActionResult GetDocumentsPgeWithCategories(string idProgrammation)
        {
            if (string.IsNullOrEmpty(idProgrammation))
            {
                throw new ArgumentNullException("l'identifiant de la programmation est null");
            }

            var model = this.CalculService.GetAllDocumentPgeByProgrammation(int.Parse(idProgrammation));

            IList <ProgrammationDocumentPGECategorieVm> listePgeByCategorie = new List <ProgrammationDocumentPGECategorieVm>();

            foreach (var item in model.OrderByDescending(x => x.Categorie).Select(x => x.Categorie).Distinct().ToList())
            {
                switch (item)
                {
                case "CAT 4":
                    ProgrammationDocumentPGECategorieVm docByCat4 = new ProgrammationDocumentPGECategorieVm();
                    docByCat4.CoutByCategorie = model.Where(x => x.Categorie == "CAT 4").Sum(x => x.Budget.GetValueOrDefault());
                    docByCat4.ListePGE        = model.Where(x => x.Categorie == "CAT 4").ToList();

                    listePgeByCategorie.Add(docByCat4);
                    break;

                case "CAT 3":
                    ProgrammationDocumentPGECategorieVm docByCat3 = new ProgrammationDocumentPGECategorieVm();
                    docByCat3.CoutByCategorie = model.Where(x => x.Categorie == "CAT 3").Sum(x => x.Budget.GetValueOrDefault());
                    docByCat3.ListePGE        = model.Where(x => x.Categorie == "CAT 3").ToList();

                    listePgeByCategorie.Add(docByCat3);
                    break;

                case "CAT 2":
                    ProgrammationDocumentPGECategorieVm docByCat2 = new ProgrammationDocumentPGECategorieVm();
                    docByCat2.CoutByCategorie = model.Where(x => x.Categorie == "CAT 2").Sum(x => x.Budget.GetValueOrDefault());
                    docByCat2.ListePGE        = model.Where(x => x.Categorie == "CAT 2").ToList();

                    listePgeByCategorie.Add(docByCat2);
                    break;

                case "CAT 1":
                    ProgrammationDocumentPGECategorieVm docByCat1 = new ProgrammationDocumentPGECategorieVm();
                    docByCat1.CoutByCategorie = model.Where(x => x.Categorie == "CAT 1").Sum(x => x.Budget.GetValueOrDefault());
                    docByCat1.ListePGE        = model.Where(x => x.Categorie == "CAT 1").ToList();

                    listePgeByCategorie.Add(docByCat1);

                    break;
                }
            }

            return(View(listePgeByCategorie));
        }