public IActionResult Jurk(int?id) { if (id == null) { return(NotFound()); } List <Jurk> jurken = new List <Jurk>(); // Haal de jurk Jurk jurk = _context.Jurk.Include(x => x.artikel.Jurken).Include(x => x.kleur).Include(x => x.merk).Include(x => x.artikel).Include(x => x.neklijn).Include(x => x.silhouette).Include(x => x.stijl).Where(j => j.JurkID == id).FirstOrDefault(); if (jurk == null) { return(NotFound()); } jurken.Add(jurk); // Haal vervolgens de jurken onder hetzelfde artikel om de andere kleuren te laten zien. List <Jurk> related = _context.Jurk.Include(x => x.artikel.Jurken).Include(x => x.kleur).Include(x => x.merk).Include(x => x.artikel).Include(x => x.neklijn).Include(x => x.silhouette).Include(x => x.stijl).Where(j => j.ArtikelID == jurk.ArtikelID && j.JurkID != jurk.JurkID).ToList(); jurken.AddRange(related); return(View(jurken)); }
public IActionResult Index(List <string> merk, int sort, int id) { // Categorieen ViewBag.categorieen = _context.Categorie.ToList <Categorie>(); // Stijlen ViewBag.stijlen = _context.Stijl.ToList <Stijl>(); // Neklijnen ViewBag.neklijnen = _context.Neklijn.ToList <Neklijn>(); // Silhouette ViewBag.silhouette = _context.Silhouette.ToList <Silhouette>(); // Kleuren ViewBag.kleuren = _context.Kleur.ToList <Kleur>(); // Merken ViewBag.merken = _context.Merk.ToList <Merk>(); // Max prijs ViewBag.maxprijs = _context.Jurk.Max(j => j.Prijs); // Als id(categorie) is gezet dan halen we alleen artikelen van die categorie if (id != 0) { ViewBag.artikelen = _context.Artikel.Where(j => j.CategorieID == id).ToList <Artikel>(); } else { ViewBag.artikelen = _context.Artikel.ToList <Artikel>(); } List <Jurk> jurken = new List <Jurk>(); // Haal 1 jurk van elk artikel om te laten zien foreach (Artikel artikel in ViewBag.artikelen) { // Haal jurk op van artikel Jurk jurk = _context.Jurk.Where(j => j.artikel.ArtikelID == artikel.ArtikelID).First <Jurk>(); if (jurk != null) { jurken.Add(jurk); } } ViewBag.jurken = jurken; ViewBag.test = merk.FirstOrDefault <string>(); return(View()); }
public IActionResult Delete(int jurkId) { Jurk deletedJurk = repository.DeleteJurk(jurkId); if (deletedJurk != null) { //TempData["message"] = $"{deletedJurk.Artikelnummer} was deleted"; } return(RedirectToAction("Crud")); }
public Jurk DeleteJurk(int jurkId) { Jurk dbEntry = context.Jurken .FirstOrDefault(p => p.JurkId == jurkId); if (dbEntry != null) { context.Jurken.Remove(dbEntry); context.SaveChanges(); } return(dbEntry); }
private static void AddAfbeelding(Jurk jurk, Pak pak, String sourcepath, HoneyMoonShopContext context) { context.AddRange( new Afbeelding { Jurk = jurk, Pak = null, SourcePath = "/" + sourcepath + "a" }, new Afbeelding { Jurk = jurk, Pak = null, SourcePath = "/" + sourcepath + "b" }, new Afbeelding { Jurk = jurk, Pak = null, SourcePath = "/" + sourcepath + "c" } ); }
public void Geldige_Edit_BeheerController() { var mock = new Mock <IHoneymoonshopRepository>(); BeheerController controller = new BeheerController(mock.Object); Jurk jurk = new Jurk() { Artikelnummer = 9999999, JurkId = 1 }; var result = controller.Edit(jurk); var redirectToActionResult = Assert.IsType <RedirectToActionResult>(result); Assert.Null(redirectToActionResult.ControllerName); Assert.Equal("Crud", redirectToActionResult.ActionName); }
public IActionResult Edit(Jurk jurk) { if (ModelState.IsValid) { repository.SaveJurk(jurk); //TempData["message"] = $"{jurk.Artikelnummer} has been saved"; return(RedirectToAction("Crud")); } else { // there is something wrong with the data values return(View(jurk)); } }
public ViewResult EditCustom(int jurkId) { Jurk jurk = repository.Jurken .FirstOrDefault(p => p.JurkId == jurkId); List <string> alleMerken = repository.Jurken.Select(g => g.Merk).Distinct().ToList(); ViewData["merken"] = alleMerken; List <string> alleStijlen = repository.Jurken.Select(g => g.Stijl).Distinct().ToList(); ViewData["stijlen"] = alleStijlen; List <string> neklijnen = repository.Jurken.Select(g => g.Neklijn).Distinct().ToList(); ViewData["neklijnen"] = neklijnen; List <string> silhouettes = repository.Jurken.Select(g => g.Silhouette).Distinct().ToList(); ViewData["silhouettes"] = silhouettes; return(View(jurk)); }
public async Task <IActionResult> Edit(int id, [Bind("JurkID,ArtikelID,CategorieID,KleurID,MerkID,NeklijnID,Omschrijving,Prijs,SilhouetteID,StijlID")] Jurk jurk) { if (id != jurk.JurkID) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(jurk); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!JurkExists(jurk.JurkID)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Index")); } JurkViewModel jvm = new JurkViewModel(); jvm.jurk = jurk; jvm.artikelen = _context.Artikel.ToList <Artikel>(); jvm.categorieen = _context.Categorie.ToList <Categorie>(); jvm.kleuren = _context.Kleur.ToList <Kleur>(); jvm.merken = _context.Merk.ToList <Merk>(); jvm.neklijnen = _context.Neklijn.ToList <Neklijn>(); jvm.silhouettes = _context.Silhouette.ToList <Silhouette>(); jvm.stijlen = _context.Stijl.ToList <Stijl>(); return(View(jvm)); }
public void SaveJurk(Jurk jurk) { if (jurk.JurkId == 0) { context.Jurken.Add(jurk); } else { Jurk dbEntry = context.Jurken .FirstOrDefault(p => p.JurkId == jurk.JurkId); if (dbEntry != null) { dbEntry.Artikelnummer = jurk.Artikelnummer; dbEntry.Merk = jurk.Merk; dbEntry.Stijl = jurk.Stijl; dbEntry.MinPrijs = jurk.MinPrijs; dbEntry.MaxPrijs = jurk.MaxPrijs; dbEntry.Neklijn = jurk.Neklijn; dbEntry.Silhouette = jurk.Silhouette; } } context.SaveChanges(); }
public void TestDelete() { Jurk jurk = new Jurk() { Artikelnummer = 9999999, JurkId = 1 }; Jurk jurk2 = new Jurk() { Artikelnummer = 11111111, JurkId = 2 }; HoneyMoonShopContext context = new HoneyMoonShopContext(); context.Add(jurk); context.Add(jurk2); var mock = new Mock <IHoneymoonshopRepository>(); mock.Setup(x => x.DeleteJurk(jurk.JurkId)); BeheerController beheer = new BeheerController(mock.Object); beheer.Delete(jurk.JurkId); mock.Verify(f => f.DeleteJurk(jurk.JurkId)); }
public IActionResult Artikelpagina(Jurk curJurk) { using (var context = new HoneyMoonShopContext()) { int artikelNummer = curJurk.Artikelnummer; ViewData["nummer"] = artikelNummer; int maxp = curJurk.MaxPrijs; ViewData["maxi"] = maxp; int minp = curJurk.MinPrijs; ViewData["min"] = minp; string teks = curJurk.Omschrijving; ViewData["Omschrijving"] = teks; String merken = curJurk.Merk; ViewData["merkje"] = merken; String stylo = curJurk.Stijl; ViewData["stylo"] = stylo; String nl = curJurk.Neklijn; ViewData["nek"] = nl; String sil = curJurk.Silhouette; ViewData["silh"] = sil; ViewData["merkje"] = merken; string img1 = "/Images/" + artikelNummer + "a.png"; string img2 = "/Images/" + artikelNummer + "b.png"; string img3 = "/Images/" + artikelNummer + "c.png"; ViewData["pl1"] = img1; ViewData["pl2"] = img2; ViewData["pl3"] = img3; //hieronder laad het de bijbehorende accesoires(random) var alleAccessoires = context.Accessoire.ToList(); var juisteAccessoires = new List <Accessoire>(); List <string> accesoiresPlaatjes = new List <string>(); List <string> accessoirelinks = new List <string>(); List <string> accessoireMerk = new List <string>(); Random rnd = new Random(); int hoogste = alleAccessoires.Count(); for (int i = 0; i < hoogste; i++) { hoogste = alleAccessoires.Count(); int actualRandom = rnd.Next(0, hoogste - 1); juisteAccessoires.Add(alleAccessoires.ElementAt(actualRandom)); alleAccessoires.RemoveAt(actualRandom); accessoirelinks.Add(juisteAccessoires[i].LinkNaarWebshop); accessoireMerk.Add(juisteAccessoires[i].Merk); String plaatje = Convert.ToString(juisteAccessoires.ElementAt(i).AccessoireCode); String afr = "/Images/Accessoire/" + plaatje + ".jpg"; accesoiresPlaatjes.Add(afr); } ViewData["AccessoireLink"] = accessoirelinks; ViewData["AccessoiresNum"] = accesoiresPlaatjes; ViewData["AccessoireMerk"] = accessoireMerk; ViewData["Accessoires"] = juisteAccessoires; //hier laad het random jurken var alleJurken = context.Jurken.ToList(); var juisteJurken = new List <Jurk>(); List <string> jurkNaam = new List <string>(); List <int> jurkNummer = new List <int>(); List <string> plaatjes = new List <string>(); hoogste = alleJurken.Count(); for (int i = 0; i < hoogste; i++) { hoogste = alleJurken.Count(); int actualRandom = rnd.Next(0, hoogste - 1); juisteJurken.Add(alleJurken.ElementAt(actualRandom)); alleJurken.RemoveAt(actualRandom); jurkNaam.Add(juisteJurken[i].Merk); jurkNummer.Add(juisteJurken[i].Artikelnummer); string afr = "/Images/" + jurkNummer[i].ToString() + "a.png"; plaatjes.Add(afr); } ViewData["jurkNamen"] = jurkNaam; ViewData["jurkPlaatjes"] = plaatjes; ViewData["jurkNummer"] = jurkNummer; } return(View()); }
public static void AddJurk(HoneyMoonShopContext context) { Jurk jurk; context.Add( jurk = new Jurk() { Artikelnummer = 12649, Merk = "Ladybird", Omschrijving = "Trouwjurk van het merk Ladybird gemaakt van kant. De top is strapless met een sweetheart lijn. De rok heeft een A-lijn met een sleep.", MinPrijs = 1500, MaxPrijs = 1750, Neklijn = "Strapless", Silhouette = "A-lijn", Stijl = "Kant" }); AddAfbeelding(jurk, null, "12649", context); AddKleur(12649, "ff0000", "Rood", context); context.Add(new Jurk { Artikelnummer = 12810, Merk = "Diane Legrand", Omschrijving = "Trouwjurk van het merk Diane Legrand gemaakt van kant. De top heeft een hoge doorzichtige neklijn en een laag uitgesneden rug, afgewerkt met beading. De rok is wijdvallend met een sleep.", MinPrijs = 1250, MaxPrijs = 1500, Neklijn = "Hoge neklijn", Silhouette = "Princess model", Stijl = "Prinses Bruid" }); AddAfbeelding(jurk, null, "12810", context); AddKleur(12810, "#0ed61c", "Groen", context); context.Add(new Jurk { Artikelnummer = 12746, Merk = "Pronovias", Omschrijving = "Trouwjurk van het merk Pronovias gemaakt van kant. De top is doorzichtig, heeft een hoge neklijn en een laag uitgesneden rug. De rok is wijdvallend met een sleep en is gemaakt van tulle.", MinPrijs = 2250, MaxPrijs = 2500, Neklijn = "Hoge neklijn", Silhouette = "Princess model", Stijl = "Prinses Bruid" }); AddAfbeelding(jurk, null, "12746", context); AddKleur(12746, "7a3030", "Bruin", context); context.Add(new Jurk { Artikelnummer = 12695, Merk = "Maggie Sottero", Omschrijving = "Trouwjurk van het merk Maggie Sottero gemaakt van organza. De hals is strapless met een sweetheart lijn. De top is afgewerkt met kant. De rok is wijdvallend met een sleep en is verwerkt in ruches.", MinPrijs = 2000, MaxPrijs = 2250, Neklijn = "Strapless", Silhouette = "Princess model", Stijl = "Kant" }); AddAfbeelding(jurk, null, "12695", context); AddKleur(12695, "#FAC9C4", "Roze", context); context.Add(new Jurk { Artikelnummer = 12925, Merk = "Eddy K.", Omschrijving = "Trouwjurk van het merk Eddy K. gemaakt van kant. De top is strapless met een lichte sweetheart lijn. De rok heeft een fishtail model met een sleep.", MinPrijs = 1750, MaxPrijs = 2000, Neklijn = "Strapless", Silhouette = "Fishtail", Stijl = "Kant" }); AddAfbeelding(jurk, null, "12925", context); AddKleur(12925, "#1313c1", "blauw", context); context.Add(new Jurk { Artikelnummer = 12627, Merk = "Ladybird", Omschrijving = "Trouwjurk van het merk Ladybird gemaakt van organza. De top heeft doorzichtige schouderbanden en een laag uitgesneden rug, beide afgewerkt met gekleurde kanten applicaties. De taille wordt geaccentueerd door een gekleurde riem, drapperie en kanten applicaties. De jurk heeft een A-lijn met sleep en kan gepast worden in de sand kleur.", MinPrijs = 1250, MaxPrijs = 1500, Neklijn = "Schouderbandjes", Silhouette = "A-lijn", Stijl = "Kleurrijke Bruid" }); AddAfbeelding(jurk, null, "12627", context); AddKleur(12627, "#fff", "wit", context); }
public IActionResult Filter(List <int> merk, int sort, int id, List <int> stijl, List <int> neklijn, List <int> silhouette, List <int> kleur, int max, int min, int aantaltonen, int pagina) { // Categorieen ViewBag.categorieen = _context.Categorie.ToList <Categorie>(); // Stijlen ViewBag.stijlen = _context.Stijl.ToList <Stijl>(); // Neklijnen ViewBag.neklijnen = _context.Neklijn.ToList <Neklijn>(); // Silhouette ViewBag.silhouette = _context.Silhouette.ToList <Silhouette>(); // Kleuren ViewBag.kleuren = _context.Kleur.ToList <Kleur>(); // Merken ViewBag.merken = _context.Merk.ToList <Merk>(); // Max prijs ViewBag.maxprijs = _context.Jurk.Max(j => j.Prijs); List <Artikel> artikelen; // Als id(categorie) is gezet dan halen we alleen artikelen van die categorie if (id != 0) { artikelen = _context.Artikel.Include(j => j.Jurken).Where(j => j.CategorieID == id).ToList(); } else { artikelen = _context.Artikel.Include(j => j.Jurken).ToList <Artikel>(); } // Artikel moet wel een jurk hebben. artikelen = artikelen.Where(j => j.Jurken.Count > 0).ToList(); // totaal aantal artikelen voor aantal paginas. int aantaljurken = artikelen.Count(); ViewBag.aantaljurken = aantaljurken; // aantal skippen als er een pagina is if (pagina > 1) { artikelen = artikelen.Skip((pagina - 1) * aantaltonen).ToList(); } // Aantal tonen artikelen = artikelen.Take(aantaltonen).ToList(); // aantal paginas berekenen(naar boven afronden) double aantalpaginas = Math.Ceiling((double)aantaljurken / aantaltonen); ViewData["aantalpaginas"] = aantalpaginas; ViewBag.pagina = pagina; ViewBag.aantalPaginas = aantalpaginas; // Voeg aan viewbag toe ViewBag.artikelen = artikelen; List <Jurk> jurken = new List <Jurk>(); // Haal 1 jurk van elk artikel om te laten zien foreach (Artikel artikel in ViewBag.artikelen) { var query = _context.Jurk.Where(j => j.artikel.ArtikelID == artikel.ArtikelID); // voeg meerdere condities toe als er gefilterd wordt. // Merk filter if (merk.Count() > 0) { query = query.Where(j => merk.Contains(j.merk.MerkID)); } // Stijl jurk filter if (stijl.Count() > 0) { query = query.Where(j => stijl.Contains(j.stijl.StijlID)); } //Neklijn filter if (neklijn.Count() > 0) { query = query.Where(j => neklijn.Contains(j.neklijn.NeklijnID)); } //silhouette filter if (silhouette.Count() > 0) { query = query.Where(j => silhouette.Contains(j.silhouette.SilhouetteID)); } // kleur filter if (kleur.Count() > 0) { query = query.Where(j => kleur.Contains(j.kleur.KleurID)); } // kleur filter if (min > 0) { query = query.Where(j => j.Prijs >= min); } // kleur filter if (max > 0) { query = query.Where(j => j.Prijs <= max); } Jurk jurk = query.FirstOrDefault <Jurk>(); if (jurk != null) { jurken.Add(jurk); } } // Sorteren if (sort != 0) { switch (sort) { // prijs hoog naar laag case 1: jurken = jurken.OrderByDescending(j => j.Prijs).ToList(); break; // prijs laag naar hoog case 2: jurken = jurken.OrderBy(j => j.Prijs).ToList(); break; } } ViewBag.jurken = jurken; ViewBag.pagina = pagina; DressfinderIndex dfi = new DressfinderIndex(); ViewBag.aantaltonen = aantaltonen; dfi.aantaltonen = new List <int>() { 6, 12, 24, 36 };; return(View(dfi)); }
public IActionResult Index(int id, int sort) { ViewBag.extrajs = "~/js/dressfinder.js"; // Categorieen ViewBag.categorieen = _context.Categorie.ToList <Categorie>(); // Stijlen ViewBag.stijlen = _context.Stijl.ToList <Stijl>(); // Neklijnen ViewBag.neklijnen = _context.Neklijn.ToList <Neklijn>(); // Silhouette ViewBag.silhouette = _context.Silhouette.ToList <Silhouette>(); // Kleuren ViewBag.kleuren = _context.Kleur.ToList <Kleur>(); // Merken ViewBag.merken = _context.Merk.ToList <Merk>(); // Max prijs ViewBag.maxprijs = _context.Jurk.Max(j => j.Prijs); List <Artikel> artikelen; // Als id(categorie) is gezet dan halen we alleen artikelen van die categorie if (id != 0) { ViewBag.categorie = id; artikelen = _context.Artikel.Include(j => j.Jurken).Where(j => j.CategorieID == id).ToList <Artikel>(); } else { artikelen = _context.Artikel.Include(j => j.Jurken).ToList <Artikel>(); } // Artikel moet wel een jurk hebben. artikelen = artikelen.Where(j => j.Jurken.Count > 0).ToList(); // totaal aantal artikelen voor aantal paginas. int aantaljurken = artikelen.Count(); int aantaltonen = 24; // Aantal tonen artikelen = artikelen.Take(aantaltonen).ToList(); // aantal paginas berekenen(naar boven afronden) double aantalpaginas = Math.Ceiling((double)aantaljurken / aantaltonen); ViewBag.pagina = 1; ViewBag.aantalPaginas = aantalpaginas; List <Jurk> jurken = new List <Jurk>(); // Haal 1 jurk van elk artikel om te laten zien foreach (Artikel artikel in artikelen) { Jurk jurk = _context.Jurk.Where(j => j.artikel.ArtikelID == artikel.ArtikelID).FirstOrDefault <Jurk>(); if (jurk != null) { jurken.Add(jurk); } } // Sorteren if (sort != 0) { switch (sort) { // prijs hoog naar laag case 1: jurken = jurken.OrderByDescending(j => j.Prijs).ToList(); break; // prijs laag naar hoog case 2: jurken = jurken.OrderBy(j => j.Prijs).ToList(); break; } } ViewBag.jurken = jurken; ViewBag.artikelen = artikelen; DressfinderIndex dfi = new DressfinderIndex(); ViewBag.aantaltonen = 24; dfi.aantaltonen = new List <int>() { 6, 12, 24, 36 };; return(View(dfi)); }