public IActionResult Create([Bind("VoertuigArtikelNummer,VoertuigTitel,Chassisnummer,Prijs,Kleur,Brandstof,Kilometerstand," + "Bouwjaar,FiguurURL,Registratie,GarantieTijd,COTwee,Versnelling,CC,Vermogen,Deuren,Zitplaatsen," + "Binnenbekleding,Binnenkleur,Koetswerk, SelectedMerk, SelectedModel, SelectedCategorie, SelectedFaktuur, SelectedKlant")] VoertuigEditViewModel voertuigCreated) { ; string VolRegistratie = voertuigCreated.Registratie; string last4Char = VolRegistratie.Substring(VolRegistratie.Length - 4, 4); if (last4Char != voertuigCreated.Bouwjaar.ToString()) { ModelState.AddModelError("bouwjaarValidationError", "Bouwjaar verschilt met Registratie"); } VoertuigenRepository repo; if (ModelState.IsValid) { repo = new VoertuigenRepository(_context); bool saved = repo.SaveVoertuig(voertuigCreated); if (saved) { TempData["SuccessMessage"] = $"Het voertuig {voertuigCreated.VoertuigArtikelNummer} is succesvol toegevoegd."; return(RedirectToAction(nameof(Index))); } } repo = new VoertuigenRepository(_context); voertuigCreated = repo.CreateVoertuig(); return(View(voertuigCreated)); }
public VoertuigEditViewModel EditVoertuig(long?id) { var mRepo = new MerkenRepository(_context); var tRepo = new ModellenRepository(_context); var cRepo = new CategorieRepository(_context); var fRepo = new FakturenRepository(_context); var kRepo = new KlantenRepository(_context); Voertuig voertuigMod = new Voertuig(); voertuigMod = _context.Voertuigen .Include(v => v.Merk) .Include(v => v.MerkType) .Include(v => v.VoertuigCategorie) .Include(v => v.Klant) .Include(v => v.Faktuur) //.OrderBy(v => v.VoertuigArtikelNummer.Length) //.ThenBy(v => v.VoertuigArtikelNummer) .SingleOrDefault(m => m.VoertuigId == id); var voertuigE = new VoertuigEditViewModel() { VoertuigId = id, VoertuigArtikelNummer = voertuigMod.VoertuigArtikelNummer, SelectedMerk = voertuigMod.MerkId.ToString(), SelectedModel = voertuigMod.ModelId.ToString(), VoertuigTitel = voertuigMod.VoertuigTitel, SelectedCategorie = voertuigMod.VoertuigCatId.ToString(), Prijs = voertuigMod.Prijs, Nieuw = voertuigMod.Nieuw, Kilometerstand = voertuigMod.Kilometerstand, Registratie = voertuigMod.Registratie, Bouwjaar = voertuigMod.Bouwjaar, Brandstof = voertuigMod.Brandstof, Kleur = voertuigMod.Kleur, Koetswerk = voertuigMod.Koetswerk, GarantieTijd = voertuigMod.GarantieTijd, Versnelling = voertuigMod.Versnelling, Vermogen = voertuigMod.Vermogen, COTwee = voertuigMod.COTwee, CC = voertuigMod.CC, Zitplaatsen = voertuigMod.Zitplaatsen, Deuren = voertuigMod.Deuren, Binnenkleur = voertuigMod.Binnenkleur, Binnenbekleding = voertuigMod.Binnenbekleding, FiguurURL = voertuigMod.FiguurURL, SelectedFaktuur = voertuigMod.FaktuurNr.ToString(), //Bestaan nog geen fakturen SelectedKlant = voertuigMod.KlantId.ToString(), Merken = mRepo.GetMerken(), Modellen = tRepo.GetModellen(voertuigMod.MerkId.ToString()), Categorieen = cRepo.GetCategorieen(), Fakturen = fRepo.GetFakturen(), Klanten = kRepo.GetKlanten() }; return(voertuigE); }
public bool SaveEditVoertuig(long id, VoertuigEditViewModel voertuigedit) { //Verplicht, anders null-exception!! var mRepo = new MerkenRepository(_context); var tRepo = new ModellenRepository(_context); var cRepo = new CategorieRepository(_context); var fRepo = new FakturenRepository(_context); var kRepo = new KlantenRepository(_context); if (voertuigedit != null) { { if (voertuigedit.VoertuigArtikelNummer != string.Empty) { var voertuigUpdate = new Voertuig() { VoertuigId = id, VoertuigArtikelNummer = voertuigedit.VoertuigArtikelNummer, VoertuigTitel = voertuigedit.VoertuigTitel, Prijs = voertuigedit.Prijs, Nieuw = voertuigedit.Nieuw, Kilometerstand = voertuigedit.Kilometerstand, Registratie = voertuigedit.Registratie, Bouwjaar = voertuigedit.Bouwjaar, Brandstof = voertuigedit.Brandstof, Kleur = voertuigedit.Kleur, Koetswerk = voertuigedit.Koetswerk, GarantieTijd = voertuigedit.GarantieTijd, Versnelling = voertuigedit.Versnelling, Vermogen = voertuigedit.Vermogen, COTwee = voertuigedit.COTwee, CC = voertuigedit.CC, Zitplaatsen = voertuigedit.Zitplaatsen, Deuren = voertuigedit.Deuren, Binnenkleur = voertuigedit.Binnenkleur, Binnenbekleding = voertuigedit.Binnenbekleding, FiguurURL = voertuigedit.FiguurURL, Merk = _context.Merken.SingleOrDefault(c => c.MerkId == Convert.ToInt64(voertuigedit.SelectedMerk)), MerkType = _context.Types.SingleOrDefault(c => c.MerkTypeId == Convert.ToInt64(voertuigedit.SelectedModel)), VoertuigCategorie = _context.VoertuigCategorieen.SingleOrDefault(c => c.VoertuigCatId == Convert.ToInt64(voertuigedit.SelectedCategorie)), Klant = _context.Klanten.SingleOrDefault(c => c.KlantId == Convert.ToInt64(voertuigedit.SelectedKlant)), Faktuur = _context.Fakturen.SingleOrDefault(c => c.FaktuurNr == Convert.ToInt64(voertuigedit.SelectedFaktuur)), }; _context.Voertuigen.Update(voertuigUpdate); _context.SaveChanges(); return(true); } } } //Return false if voertuigedit == null or voertuigArtikelNummer is empty return(false); }
public VoertuigEditViewModel CreateVoertuig() { var mRepo = new MerkenRepository(_context); var tRepo = new ModellenRepository(_context); var cRepo = new CategorieRepository(_context); var fRepo = new FakturenRepository(_context); var kRepo = new KlantenRepository(_context); var mxLV = _context.Voertuigen .Where(v => v.VoertuigArtikelNummer.Contains("v")) .OrderBy(v => v.VoertuigArtikelNummer.Length) .ThenBy(v => v.VoertuigArtikelNummer) .Max(v => Convert.ToInt16(v.VoertuigArtikelNummer.Substring(1)) + 1); var mxPW = _context.Voertuigen .Where(v => !v.VoertuigArtikelNummer.Contains("v")) //.OrderBy(v => v.VoertuigArtikelNummer.Length) //.ThenBy(v => v.VoertuigArtikelNummer) .Max(v => Convert.ToInt16(v.VoertuigArtikelNummer) + 1); var voertuig = new VoertuigEditViewModel() { MaxLVNr = $"V{mxLV.ToString()}", MaxPWNr = $"{mxPW.ToString()}", VoertuigArtikelNummer = $"--Kies PW: {mxPW.ToString()} / LV: V{mxLV.ToString()}--", Bouwjaar = Convert.ToInt16(DateTime.Now.Year), Registratie = "../20..", Deuren = 4, Zitplaatsen = 4, Vermogen = "... pk(.. kW)", CC = 1000, GarantieTijd = "12/24 maanden", FiguurURL = $@"~/images/vtgn/fronts/..._FRONT.jpg", COTwee = "... gr", Merken = mRepo.GetMerken(), Modellen = tRepo.GetModellen(), Categorieen = cRepo.GetCategorieen(), Fakturen = fRepo.GetFakturen(), Klanten = kRepo.GetKlanten() }; return(voertuig); }
public IActionResult Edit(long id, [Bind("VoertuigId,VoertuigArtikelNummer,VoertuigTitel,Chassisnummer,Prijs,Kleur," + "Brandstof,Kilometerstand,Bouwjaar,FiguurURL,Registratie,GarantieTijd,COTwee,Versnelling,CC,Vermogen,Deuren,Zitplaatsen," + "Binnenbekleding,Binnenkleur,Koetswerk, SelectedMerk, SelectedModel, SelectedCategorie, SelectedFaktuur, SelectedKlant")] VoertuigEditViewModel voertuigModified) { string VolRegistratie = voertuigModified.Registratie; string last4Char = VolRegistratie.Substring(VolRegistratie.Length - 4, 4); if (last4Char != voertuigModified.Bouwjaar.ToString()) { ModelState.AddModelError("bouwjaarValidationError", "Bouwjaar verschilt met Registratie"); } VoertuigenRepository repo; if (id != voertuigModified.VoertuigId) { return(NotFound()); } //if (ModelState.IsValid) //{ // try // { // _context.Update(voertuig); // await _context.SaveChangesAsync(); // } // catch (DbUpdateConcurrencyException) // { //if (!VoertuigExists(voertuig.VoertuigId)) // { // return NotFound(); // } // else // { // throw; // } // } // return RedirectToAction(nameof(Index)); if (ModelState.IsValid) { //try //{ repo = new VoertuigenRepository(_context); bool saved = repo.SaveEditVoertuig(id, voertuigModified); if (saved) { TempData["SuccessMessage"] = $"Het voertuig {voertuigModified.VoertuigArtikelNummer} is succesvol gewijzigd."; return(RedirectToAction(nameof(Index))); } //} //catch (DbUpdateConcurrencyException) //{ // if (!VoertuigExists(voertuigModified.VoertuigId)) // { // return NotFound(); // } // else // { // throw; // } //} } return(RedirectToAction(nameof(Index))); }