예제 #1
0
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            OrdreDuJour OrdreDuJour = _db.OrdreDuJour.Find(id);
            List <SujetPointPrincipal> sujetPointPrincipal = new List <SujetPointPrincipal>();

            if (OrdreDuJour == null)
            {
                return(HttpNotFound());
            }

            foreach (var item in _db.SujetPointPrincipal)
            {
                if (item.IdOrdreDuJour == id)
                {
                    sujetPointPrincipal.Add(item);
                }
            }

            OrdreDuJourViewModel ordreDuJourViewModelCreerOdj = new OrdreDuJourViewModel();

            ordreDuJourViewModelCreerOdj.OrdreDuJour         = OrdreDuJour;
            ordreDuJourViewModelCreerOdj.SujetPointPrincipal = sujetPointPrincipal;
            return(View(ordreDuJourViewModelCreerOdj));
        }
예제 #2
0
        public ActionResult Create(OrdreDuJourViewModel ordreDuJourViewModel)
        {
            if (!regexHeure(ordreDuJourViewModel.OrdreDuJour))
            {
                this.AddToastMessage("Erreur dans l'entrée de l'heure", "Veuillez entrez le bon format d'heure",
                                     ToastType.Error);
                return(RedirectToAction("Create", "OrdreDuJour"));
            }

            if (!ChkDate(ordreDuJourViewModel))
            {
                this.AddToastMessage("Erreur dans l'entrée de la date", "Veuillez entrez une date ultérieure",
                                     ToastType.Error);
                return(RedirectToAction("Create", "OrdreDuJour"));
            }

            if (!ModelState.IsValid)
            {
                return(View(ordreDuJourViewModel));
            }

            InsererOrdreDuJourDansLaBaseDeDonnee(ordreDuJourViewModel);

            this.AddToastMessage("Création d'un ordre du jour", "La création a été effectuée",
                                 ToastType.Success);
            return(RedirectToAction("Index"));
        }
예제 #3
0
        public OrdreDuJourViewModel CreateLieu()
        {
            var lieuRepo = new LieuRepository();

            var allLieu = new OrdreDuJourViewModel()
            {
                ListLieux = lieuRepo.GetLieu()
            };

            return(allLieu);
        }
예제 #4
0
        private void PopulateSousPointDansOrdreDuJour(OrdreDuJourViewModel httpBundle, OrdreDuJour ordreDuJour)
        {
            var indexDuSujetSousPoint = 0;

            foreach (int positionDuSujetPointPrincipal in httpBundle.ListeIdSousPointCache)
            {
                var sujetPointPrincipal = ordreDuJour.SujetPointPrincipal.ElementAt(positionDuSujetPointPrincipal);
                var sujetSousPoint      = httpBundle.ListeSousPoint[indexDuSujetSousPoint];
                indexDuSujetSousPoint++;

                InsertSujetSousPoint(sujetSousPoint, sujetPointPrincipal.IdPointPrincipal);
            }
        }
예제 #5
0
        private static bool ChkDate(OrdreDuJourViewModel ordreDuJourViewModelCreerOdj)
        {
            var validDate = true;

            var date         = ordreDuJourViewModelCreerOdj.OrdreDuJour.DateOdJ;
            var dateCourante = DateTime.Today;

            if (date < dateCourante)
            {
                validDate = false;
            }

            return(validDate);
        }
예제 #6
0
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            OrdreDuJour OrdreDuJour = _db.OrdreDuJour.Find(id);
            List <SujetPointPrincipal> sujetPointPrincipal = new List <SujetPointPrincipal>();
            List <SousPointSujet>      listeSousPoint      = new List <SousPointSujet>();

            if (OrdreDuJour == null)
            {
                return(HttpNotFound());
            }

            foreach (var item in _db.SujetPointPrincipal)
            {
                if (item.IdOrdreDuJour == id)
                {
                    sujetPointPrincipal.Add(item);
                }
            }
            foreach (var item in sujetPointPrincipal)
            {
                List <SousPointSujet> listeSousPointQuery = GetSousPoint(item.IdPointPrincipal);
                if (listeSousPointQuery != null)
                {
                    foreach (var sp in listeSousPointQuery)
                    {
                        listeSousPoint.Add(sp);
                    }
                }
            }

            OrdreDuJourViewModel ordreDuJourViewModelCreerOdj = new OrdreDuJourViewModel();

            ordreDuJourViewModelCreerOdj.OrdreDuJour         = OrdreDuJour;
            ordreDuJourViewModelCreerOdj.SujetPointPrincipal = sujetPointPrincipal;
            ordreDuJourViewModelCreerOdj.ListeSousPointSujet = listeSousPoint;
            return(View(ordreDuJourViewModelCreerOdj));
        }
예제 #7
0
        private void InsererOrdreDuJourDansLaBaseDeDonnee(OrdreDuJourViewModel httpBundle)
        {
            var ordreDuJour = httpBundle.OrdreDuJour;

            ordreDuJour.IdModeleOrdreDuJour = _db.ModeleOrdreDuJour.First().IdModele;
            ordreDuJour.SujetPointPrincipal = httpBundle.SujetPointPrincipal;
            _db.OrdreDuJour.Add(ordreDuJour);
            _db.SaveChanges();

            var updatedOrdreDuJour = _db.OrdreDuJour.Find(ordreDuJour.IdOdJ);

            if (updatedOrdreDuJour == null)
            {
                throw new NullReferenceException("L'enregistrement de l'ordre du jour ne se fait pas correctement!");
            }
            if (httpBundle.ListeIdSousPointCache != null)
            {
                PopulateSousPointDansOrdreDuJour(httpBundle, updatedOrdreDuJour);
            }
        }
        public ActionResult RapportOrdreDuJour(int id)
        {
            OrdreDuJourViewModel  model          = new OrdreDuJourViewModel();
            List <SousPointSujet> listeSousPoint = new List <SousPointSujet>();

            model.OrdreDuJour = _db.OrdreDuJour.Find(id);
            foreach (var item in model.OrdreDuJour.SujetPointPrincipal)
            {
                List <SousPointSujet> listeSousPointQuery = GetSousPoint(item.IdPointPrincipal);
                if (listeSousPointQuery.Count != 0)
                {
                    foreach (var souspoint in listeSousPointQuery)
                    {
                        listeSousPoint.Add(souspoint);
                    }
                }
            }
            model.ListeSousPointSujet = listeSousPoint;

            return(new ViewAsPdf("RapportOrdreDuJour", model));
        }
예제 #9
0
        public ActionResult Edit(OrdreDuJourViewModel ordreDuJourViewModelCreerOdj)
        {
            if (ModelState.IsValid)
            {
                int cpt = 0;
                _db.Entry(ordreDuJourViewModelCreerOdj.OrdreDuJour).State    = EntityState.Modified;
                ordreDuJourViewModelCreerOdj.OrdreDuJour.IdModeleOrdreDuJour = _db.ModeleOrdreDuJour.First().IdModele;

                if (ordreDuJourViewModelCreerOdj.SujetPointPrincipal != null)
                {
                    foreach (var item in _db.SujetPointPrincipal)
                    {
                        if (item.IdOrdreDuJour == ordreDuJourViewModelCreerOdj.OrdreDuJour.IdOdJ)
                        {
                            var updatedItem = item;
                            updatedItem.SujetPoint       = ordreDuJourViewModelCreerOdj.SujetPointPrincipal[cpt].SujetPoint;
                            _db.Entry(updatedItem).State = EntityState.Modified;
                            cpt++;
                        }
                    }
                    int position = 0;
                    foreach (var itemSP in ordreDuJourViewModelCreerOdj.ListeIdSousPointCache)
                    {
                        if (itemSP > ordreDuJourViewModelCreerOdj.ListeSousPoint.Count)
                        {
                            SousPointSujet souspoint = (from SousPointSujet in _db.SousPointSujet
                                                        where SousPointSujet.IdSousPoint == itemSP
                                                        select SousPointSujet).First();
                            if (souspoint != null)
                            {
                                souspoint.SujetSousPoint   = ordreDuJourViewModelCreerOdj.ListeSousPoint[position];
                                _db.Entry(souspoint).State = EntityState.Modified;
                            }
                            else
                            {
                                return(HttpNotFound());
                            }
                        }
                        else
                        {
                            bool EmpecheDoublons = true;
                            List <SujetPointPrincipal> listeSujetPointPrincipalQuery = GetPointPrincipal();
                            List <SujetPointPrincipal> listeSujetPointPrincipal      = new List <SujetPointPrincipal>();
                            foreach (var item in listeSujetPointPrincipalQuery)
                            {
                                if (ordreDuJourViewModelCreerOdj.OrdreDuJour.IdOdJ == item.IdOrdreDuJour)
                                {
                                    listeSujetPointPrincipal.Add(item);
                                }
                            }
                            foreach (var item in listeSujetPointPrincipal)
                            {
                                if (EmpecheDoublons)
                                {
                                    InsertSujetSousPoint(ordreDuJourViewModelCreerOdj.ListeSousPoint[position], listeSujetPointPrincipal[ordreDuJourViewModelCreerOdj.ListeIdSousPointCache[position]].IdPointPrincipal);
                                    EmpecheDoublons = false;
                                }
                            }
                        }
                        position++;
                    }
                }
                _db.SaveChanges();
                this.AddToastMessage("Modification d'un ordre du jour", "La modification a été effectuée",
                                     Toast.ToastType.Success);
                return(RedirectToAction("Index"));
            }
            return(View(ordreDuJourViewModelCreerOdj));
        }