public void Fill(string partijid, ZetelObject zo) { this.PartijID = partijid.Trim().ToUpper(); this.AantalZetels = zo.AantalZetels; this.VanDatum = zo.VanDatum; this.TotDatum = zo.TotDatum; }
public ActionResult Edit(PartijenVM partijenVM) { string title = "Bewerken"; string level = ""; string msg = ""; if (ModelState.IsValid) { partijenVM.CheckZetels(); if (partijenVM.ZetelError) { level = partijenVM.MessageSection.Error; msg = "ERROR - periodes overlappen of periodes hebben einddatum die voor de begindatum ligt"; partijenVM.MessageSection.SetMessage(title, level, msg); if (!((partijenVM.ZetelLijst[0].VanDatum == DateTime.MinValue) && (partijenVM.ZetelLijst[0].TotDatum == DateTime.MinValue))) { // add null entry ZetelObject extra = new ZetelObject { AantalZetels = 0, VanDatum = DateTime.MinValue, TotDatum = DateTime.MinValue, IncludeIfSelected = false }; partijenVM.ZetelLijst.Add(extra); } ModelState.Clear(); return(View(partijenVM)); } //var zetels = from o in db.PartijZetels // where o.PartijID == partijenVM.partij.PartijID // select o; //foreach (var zd in zetels) //{ // db.PartijZetels.Remove(zd); // db.SaveChanges(); //} db.PartijZetels.RemoveRange(db.PartijZetels.Where(c => c.PartijID == partijenVM.partij.PartijID.Trim())); db.SaveChanges(); Partijen partijen = new Partijen(); partijen.Fill(partijenVM); db.Partijen.Attach(partijen); db.Entry(partijen).State = EntityState.Modified; db.SaveChanges(); foreach (ZetelObject zo in partijenVM.ZetelLijst) { PartijZetels pz = new PartijZetels(); pz.Fill(partijenVM.partij.PartijID, zo); db.PartijZetels.Add(pz); } db.SaveChanges(); TempData["BCmessage"] = "Partij " + partijenVM.partij.PartijID.Trim() + " is gewijzigd"; TempData["BCerrorlevel"] = partijenVM.MessageSection.Info; return(RedirectToAction("Details", new { PartijID = partijenVM.partij.PartijID })); } level = partijenVM.MessageSection.Error; msg = "ERROR - Partij " + partijenVM.partij.PartijID.Trim() + " is NIET gewijzigd"; partijenVM.MessageSection.SetMessage(title, level, msg); return(View(partijenVM)); }
// GET: Partijen/Edit/5 public ActionResult Edit(string PartijID) { PartijenVM partijenVM = new PartijenVM(); string title = "Bewerken"; string level = partijenVM.MessageSection.Info; string msg = "Bewerk deze partij en selecteer OPSLAAN"; if (PartijID == null) { TempData["BCmessage"] = "Specificeer een geldige Onderwerp ID!"; TempData["BCerrorlevel"] = partijenVM.MessageSection.Error; return(RedirectToAction("Error")); } Partijen partij = db.Partijen.Find(PartijID); if (partij == null) { TempData["BCmessage"] = "Partij ID " + PartijID.Trim() + " is niet gevonden"; TempData["BCerrorlevel"] = partijenVM.MessageSection.Error; return(RedirectToAction("Error")); } var query1 = from p in db.Partijen where p.PartijID == PartijID join s in db.Stemmingen on p.PartijID equals s.PartijID into ljoin1 from lj1 in ljoin1.DefaultIfEmpty() join w in db.Wetten on lj1.WetID equals w.WetID into ljoin2 from lj2 in ljoin2.DefaultIfEmpty() select new StemObject { PartijID = p.PartijID, Voor = lj1 == null ? 0 : lj1.Voor, Tegen = lj1 == null ? 0 : lj1.Tegen, Blanco = lj1 == null ? 0 : lj1.Blanco, WetID = lj1 == null ? "<geen>" : lj1.WetID, WetNaam = lj2 == null ? "nvt" : lj2.WetNaam, WetOmschrijving = lj2 == null ? "nvt" : lj2.WetOmschrijving, WetLink = lj2 == null ? "nvt" : lj2.WetLink } ; List <StemObject> stemlijst = query1.ToList(); var query2 = from p in db.Partijen where p.PartijID == PartijID join z in db.PartijZetels on p.PartijID equals z.PartijID into ljoin1 from lj1 in ljoin1.DefaultIfEmpty() select new ZetelObject { PartijID = p.PartijID, AantalZetels = lj1 == null ? 0 : lj1.AantalZetels, VanDatum = lj1 == null ? DateTime.MinValue : lj1.VanDatum, TotDatum = lj1 == null ? DateTime.MinValue : lj1.TotDatum, IncludeIfSelected = true, InError = lj1 == null ? ZetelObject.Na : " ", ErrorMsg = lj1 == null ? "Na aanvinken kan deze entry worden toegevoegd" : " " } ; List <ZetelObject> zetellijst = query2.ToList(); if (!((zetellijst[0].VanDatum == DateTime.MinValue) && (zetellijst[0].TotDatum == DateTime.MinValue))) { // add null entry ZetelObject extra = new ZetelObject { AantalZetels = 0, VanDatum = DateTime.MinValue, TotDatum = DateTime.MinValue, IncludeIfSelected = true, ErrorMsg = "Na aanvinken kan deze entry worden toegevoegd", InError = ZetelObject.Na, PartijID = PartijID }; zetellijst.Add(extra); } partijenVM.Fill(partij, stemlijst, zetellijst); partijenVM.MessageSection.SetMessage(title, level, msg); return(View(partijenVM)); }