public ActionResult AjouterSavoir(SavoirFaire savoir, int compId) { ViewBag.Competance = _dbContext.Competances.SingleOrDefault(c => c.Id == compId); var competance = _dbContext.Competances.SingleOrDefault(c => c.Id == compId); if (ModelState.IsValid) { //adding "savoirfaire" if (_dbContext.Competances.SingleOrDefault(c => c.Id == compId).SavoirFaires.Any(sf => sf.nomSavoir.Equals(savoir.nomSavoir, StringComparison.InvariantCultureIgnoreCase))) { ModelState.AddModelError("Erreur_nomSavoir", "Ce savoir éxiste déja dans cette compétance"); return(View()); } else { _dbContext.Competances.SingleOrDefault(c => c.Id == compId).SavoirFaires.Add(savoir); } //adding "etats" for the new "savoirfaire" List <Periode> periodes = _dbContext.Periodes.ToList(); List <Etat> etats = new List <Etat>(); foreach (var periode in periodes) { Etat et = new Etat() { Periode = periode, SavoireFaire = savoir }; _dbContext.Etats.Add(et); } _dbContext.SaveChanges(); } return(View()); }
public ActionResult AjouterNote(int discipline, int eval, int eleve, int sf, int noteValue) { Eleve e = _dbContext.Eleves.SingleOrDefault(a => a.Id == eleve); var note = e.Notes.SingleOrDefault(n => n.SavoirFaire.Id == sf); if (note == null) { SavoirFaire savoir = _dbContext.SavoirFaires.SingleOrDefault(s => s.Id == sf); Note n = new Note() { note = noteValue, SavoirFaire = savoir, }; _dbContext.Eleves.SingleOrDefault(el => el.Id == e.Id).Notes.Add(n); ModelState.AddModelError("done", "Note ajoutée."); } else { note.note = noteValue; ModelState.AddModelError("done", "Note modifiée."); } _dbContext.SaveChanges(); var niveau = _dbContext.Disciplines.SingleOrDefault(d => d.Id == discipline).Niveau.Id; return(Redirect("/Enseignant/Evaluations/Details/" + eval + "/" + niveau)); }