/// <summary> /// metoda, ktora pobiera dane z formularza po jego zatwierdzeniu i wybiera oraz przekazuje do widoku produkty z produktow z danego katalogu produktow, te ktore odpowiadaja opcjom zaznaczonym w formularzu, gdy nic z formularza nie jest odznaczone, przekazuje wszystkie dane produktow z katalogu produktu, ponadto przekazuje dane do formularza na podstawie daych produktow znajdujacych sie w wybranym katalogu /// </summary> /// <param name="index">parametr zawierający informacje o tym z ktorego katalogu produkty chcemy wyswietlac</param> public ActionResult jedenKatalog(int index) { var value1 = Request["xd"]; var value2 = Request["marki"]; var value3 = Request["sort"]; var value4 = Request["cena"]; ViewBag.Niepoprawne = false; float wybranaCena; Formularz f = new Formularz(value2, value1, value3, value4); String[] wybraneMarki = f.dajMarki(); String[] wybraneRodzaje = f.dajRodzaje(); string fullPath = Request.MapPath(@"~/zserializowane/produkty.xml"); List <Produkt> produkty2 = Dane.dajProdukty(fullPath); List <Produkt> produkty3 = f.wybierzMarki(produkty2); List <Produkt> produkty = f.wybierzRodzaje(produkty3); if (float.TryParse(value4, out wybranaCena)) { produkty = produkty.FindAll(x => x.cena <= wybranaCena); } else if (value4 != null && value4 != "") { ViewBag.Niepoprawne = true; } string fullPath2 = Request.MapPath(@"~/zserializowane/katalogi.xml"); List <KatalogProduktow> katalogi = Dane.dajKatalogi(fullPath2); var paramTuple = WyborKatalogu.produktyZKatalogu(katalogi, produkty2, index); var paramTuple2 = WyborKatalogu.produktyZKatalogu(katalogi, produkty, index); List <Produkt> listaWgSortowania = paramTuple2.Item1; ViewBag.MyTuple = new Tuple <List <Produkt>, String>(f.sortuj(listaWgSortowania), paramTuple.Item2); var marki = WyborParamterow.wybierzMarki(paramTuple.Item1); ViewBag.Marki = marki; var rodzaje = WyborParamterow.wybierzRodzaje(paramTuple.Item1); ViewBag.Rodzaje = rodzaje; ViewBag.Idk = index; ViewBag.Info = f.dajInfo(); return(View()); }
public void TestWyboruMarek() { var p1 = new Produkt(1, 1, "Czajnik elektryczny Kassel", 139.99f, "Kassel", 3, 2, 1, "/zdjecia/czajnik_elektryczny_kassel_sza.png", " Pojemność: 1.7 l \n Moc: 2200 W \n Wykonanie: metal, tworzywo sztuczne \n Element grzejny: grzałka płytowa \n Kolor: srebrny / szary"); var p2 = new Produkt(1, 2, "Czajnik elektryczny Philips", 119.99f, "Philips", 2, 1, 1, "/zdjecia/pobraneXD.png", " Pojemność: 1.5 l \n Moc: 2000 W \n Wykonanie: tworzywo sztuczne \n Element grzejny: grzałka płytowa \n Kolor: srebrny / bordo / czarny"); var p3 = new Produkt(1, 5, "Czajnik elektryczny Łucznik", 39.99f, "Łucznik", 5, 3, 2, "/zdjecia/ucznik_wk_1800.png", " Pojemność: 1.9 l \n Moc: 2300 W \n Wykonanie: metal, tworzywo sztuczne \n Element grzejny: grzałka płytowa \n Kolor: srebrny / czarny"); List <Produkt> listaP = new List <Produkt>(); listaP.Add(p1); listaP.Add(p2); listaP.Add(p3); Assert.AreEqual(WyborParamterow.wybierzMarki(listaP)[0], "Kassel"); Assert.AreEqual(WyborParamterow.wybierzMarki(listaP)[1], "Philips"); Assert.AreEqual(WyborParamterow.wybierzMarki(listaP)[2], "Łucznik"); Assert.AreEqual(WyborParamterow.wybierzMarki(listaP).Count, 3); }
public void TestWyboruRodzaji() { var p1 = new Produkt(1, 1, "Czajnik elektryczny Kassel", 139.99f, "Kassel", 3, 2, 1, "/zdjecia/czajnik_elektryczny_kassel_sza.png", " Pojemność: 1.7 l \n Moc: 2200 W \n Wykonanie: metal, tworzywo sztuczne \n Element grzejny: grzałka płytowa \n Kolor: srebrny / szary"); var p2 = new Produkt(1, 2, "Czajnik elektryczny Philips", 119.99f, "Philips", 2, 1, 1, "/zdjecia/pobraneXD.png", " Pojemność: 1.5 l \n Moc: 2000 W \n Wykonanie: tworzywo sztuczne \n Element grzejny: grzałka płytowa \n Kolor: srebrny / bordo / czarny"); var p3 = new Produkt(1, 5, "Czajnik elektryczny Łucznik", 39.99f, "Łucznik", 5, 3, 2, "/zdjecia/ucznik_wk_1800.png", " Pojemność: 1.9 l \n Moc: 2300 W \n Wykonanie: metal, tworzywo sztuczne \n Element grzejny: grzałka płytowa \n Kolor: srebrny / czarny"); var p4 = new Produkt(1, 6, "Czajnik elektryczny Ariete", 159.99f, "Ariete", 2, 1, 1, "/zdjecia/ariete_286905_vintage_niebiesk.png", " Pojemność: 1.2 l \n Moc: 2400 W \n Wykonanie: metal, tworzywo sztuczne \n Element grzejny: grzałka płytowa \n Kolor: srebrny / niebieski / kremowy"); var p5 = new Produkt(1, 7, "Ekspres do kawy Philips", 2159.99f, "Philips", 1, 1, 0, "/zdjecia/pobrane__3_.png", " Typ ekspresu: automatyczny \n Dostępne napoje: Americano, Cappuccino, Cortado, Espresso, Espresso Macchiato, Flat White, Gorąca woda, Kawa z mlekiem, Latte Macchiato, Spienione mleko \n Ciśnienie / Moc: 19 barów / 1500 W"); List <Produkt> listaP = new List <Produkt>(); listaP.Add(p1); listaP.Add(p2); listaP.Add(p3); listaP.Add(p4); listaP.Add(p5); Assert.AreEqual(WyborParamterow.wybierzRodzaje(listaP)[0], "Czajnik elektryczny "); Assert.AreEqual(WyborParamterow.wybierzRodzaje(listaP)[1], "Ekspres do kawy "); Assert.AreEqual(WyborParamterow.wybierzRodzaje(listaP).Count, 2); }
public void TestWyboruMarekGraniczny() { List <Produkt> listaP = new List <Produkt>(); Assert.AreEqual(WyborParamterow.wybierzMarki(listaP).Count, 0); }
public void TestWyboruRodzajiGraniczny() { List <Produkt> listaP = new List <Produkt>(); Assert.AreEqual(WyborParamterow.wybierzRodzaje(listaP).Count, 0); }