Esempio n. 1
0
        public async Task <IActionResult> OnPostAsync()
        {
            if (!ModelState.IsValid)
            {
                return(Page());
            }

            _context.Attach(UE).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!UEExists(UE.ID))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(RedirectToPage("./Index"));
        }
Esempio n. 2
0
        public async Task <IActionResult> OnPostAsync(int?id, string[] selectedUE)
        {
            if (!ModelState.IsValid)
            {
                return(Page());
            }
            var EnseignantAModifier = await _context.Enseignant
                                      .Include(i => i.LesEnseigne)
                                      .ThenInclude(i => i.LUE)
                                      .FirstOrDefaultAsync(s => s.ID == id);

            if (await TryUpdateModelAsync <Enseignant>(
                    EnseignantAModifier,
                    "Enseignant",
                    i => i.Prenom, i => i.Nom))
            {
                UpdateEnseigne(_context, selectedUE, EnseignantAModifier);
                await _context.SaveChangesAsync();

                return(RedirectToPage("./Index"));
            }
            UpdateEnseigne(_context, selectedUE, EnseignantAModifier);
            LoadUECheckBoxData(_context, EnseignantAModifier);
            return(RedirectToPage("./Index"));
        }
Esempio n. 3
0
        // To protect from overposting attacks, please enable the specific properties you want to bind to, for
        // more details see https://aka.ms/RazorPagesCRUD.
        public async Task <IActionResult> OnPostAsync(string[] selectedUE)
        {
            // selectedUE est un tableau de String dont chaque case contient l'IDUE d'une UE cochée.

            // Cette liste est envoyée automatiquement lorsque la page est Post



            if (!ModelState.IsValid)

            {
                return(Page());
            }



            var newEnseignant = new Enseignant();

            if (selectedUE != null)

            {
                newEnseignant.LesEnseigne = new List <Enseigne>();

                foreach (var ue in selectedUE)

                {
                    var newEnseigne = new Enseigne

                    {
                        UEID = int.Parse(ue)
                    };

                    newEnseignant.LesEnseigne.Add(newEnseigne);
                }
            }



            if (await TryUpdateModelAsync <Enseignant>(

                    newEnseignant,

                    "Enseignant",

                    i => i.Nom, i => i.Prenom))

            {
                _context.Enseignant.Add(newEnseignant);

                await _context.SaveChangesAsync();

                return(RedirectToPage("./Index"));
            }

            AddEnseigne(_context, newEnseignant);

            return(RedirectToPage("./Index"));
        }
Esempio n. 4
0
        // To protect from overposting attacks, please enable the specific properties you want to bind to, for
        // more details see https://aka.ms/RazorPagesCRUD.
        public async Task <IActionResult> OnPostAsync()
        {
            if (!ModelState.IsValid)
            {
                return(Page());
            }

            _context.Etudiant.Add(Etudiant);
            await _context.SaveChangesAsync();

            return(RedirectToPage("./Index"));
        }
Esempio n. 5
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Cours = await _context.Cours.FindAsync(id);

            if (Cours != null)
            {
                _context.Cours.Remove(Cours);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
Esempio n. 6
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Enseignant = await _context.Enseignant.FindAsync(id);

            if (Enseignant != null)
            {
                _context.Enseignant.Remove(Enseignant);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
Esempio n. 7
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Formation = await _context.Formation.FindAsync(id);

            if (Formation != null)
            {
                _context.Formation.Remove(Formation);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
Esempio n. 8
0
        // id c'est l'ID de l'UE sélectionnée
        //public async Task<IActionResult>OnPostUpdateAsync(int? ueid, String[] noteString, int[] etudiantID)
        public async Task <IActionResult> OnPostUpdateAsync()
        {
            if (!ModelState.IsValid)
            {
                return(Page());
            }
            if (UEIDUPDATE != 0)
            {
                UEID = UEIDUPDATE;
                // Etape 1
                // Une UE a été sélectionnée
                // Remplissage de la list box des UES
                await RemplirListeUEAsync();

                // Si c'est un postback olors
                // les notes ont été modifiées, enregistrement des modifications
                if (etudiantID != null)
                {
                    for (int i = 0; i < etudiantID.Length; i++)
                    {
                        int   etudid    = System.Convert.ToInt32(etudiantID[i]);
                        float noteFloat = (float)System.Convert.ToDouble(noteString[i]);
                        try
                        {
                            Note noteAMettreAJour = _context.Note.Where(n => n.UEID == UEID && n.EtudiantID == etudid).Single();
                            // La note existe déjà, on la met à jour
                            if (noteString[i] != null)
                            {
                                // L'eneignant a modifié une note existante
                                noteAMettreAJour.Valeur = noteFloat;
                            }
                            else
                            {
                                // L'enseignant a supprimé une note existante
                                _context.Note.Remove(noteAMettreAJour);
                            }
                        }
                        catch
                        {
                            if (noteString[i] != null)
                            {
                                // L'enseignant a rajouté une nouvelle note
                                Note newNote = new Note();
                                newNote.EtudiantID = etudid;
                                newNote.UEID       = UEID;
                                newNote.Valeur     = noteFloat;
                                await _context.Note.AddAsync(newNote);
                            }
                            else
                            {
                                // Etudiant sans note. Ne pas ajouter d'enregistrement
                            }
                        }
                        await _context.SaveChangesAsync();
                    }
                }

                // Remplissage de la iste des étudiants de la formation avec le cas échéant leur note.
                ue = _context.UE.Include(i => i.LaFormation).Include(i => i.LesNotes).Where(
                    i => i.ID == UEID).Single();
                LaFormation   = ue.LaFormation;
                TousEtudiants = await _context.Etudiant.Include(i => i.LaFormation).Include(i => i.LesNotes).ThenInclude(i => i.LUe).Where(i => i.FormationID == LaFormation.ID).ToListAsync();;
                NotesDatas    = new List <SaisieNotesData>();
                foreach (Etudiant e in TousEtudiants)
                {
                    SaisieNotesData snd = new SaisieNotesData();
                    snd.LUE       = ue;
                    snd.LEtudiant = e;
                    snd.LaNote    = null;
                    // Récupération de la note si elle existe
                    try
                    {
                        Note LaNote = _context.Note.Where(i => i.UEID == UEID && i.EtudiantID == e.ID).Single();
                        snd.LaNote     = LaNote;
                        snd.NoteString = LaNote.Valeur.ToString();
                    }
                    catch
                    {
                        snd.LaNote            = new Note();
                        snd.LaNote.EtudiantID = e.ID;
                        snd.LaNote.LEtudiant  = e;
                        snd.LaNote.UEID       = ue.ID;
                        snd.LaNote.LUe        = ue;
                        snd.NoteString        = null;
                    }
                    NotesDatas.Add(snd);
                }
            }
            return(Page());
        }
Esempio n. 9
0
        public async Task <IActionResult> OnPostNoteAsync()
        {
            await ChargeEtudiantNotes();

            if (!ModelState.IsValid)
            {
                return(Page());
            }

            // _context.Attach(Etudiant).State = EntityState.Modified;

            /*try
             * {
             *  if (LesNotes.Count()>0) {
             *      foreach(var note in LesNotes)
             *      {
             *          _context.Note.Where(n => n.ID == note.ID).First().Valeur = note.Valeur;
             *      }
             *  }
             *  await _context.SaveChangesAsync();
             * }
             * catch (DbUpdateConcurrencyException)
             * {
             *
             *      throw;
             *
             * }*/

            if (etudiantID.Length >= 0)
            {
                for (int i = 0; i < etudiantID.Length; i++)
                {
                    int NoteInt = System.Convert.ToInt32(NoteValeur[i]);
                    if (NoteValeur[i] == null)
                    {
                        // on supprime la note de la bdd
                        try
                        {
                            _context.Remove(_context.Note.Where(n => n.UEID == UeIDOld && n.EtudiantID == etudiantID[i]).First());
                        }
                        catch
                        {
                        }


                        await _context.SaveChangesAsync();
                    }
                    else
                    {
                        //on modifie
                        Note newNote = new Note {
                            EtudiantID = etudiantID[i],
                            UEID       = UeIDOld,
                            Valeur     = NoteInt
                        };
                        try {
                            Note noteBD = _context.Note.Where(n => n.UEID == newNote.UEID && n.EtudiantID == newNote.EtudiantID).First();
                            noteBD.Valeur = newNote.Valeur;
                            //_context.Entry(noteBD).State = EntityState.Modified;
                        }
                        catch
                        {
                            _context.Note.Add(newNote);
                        }
                        await _context.SaveChangesAsync();
                    }
                }
            }

            return(RedirectToPage("../Index"));
        }