// GET: KatalogProduktow /// <summary>metoda przekazujaca do odpowiedniego widoku dane o katalogach produktow umieszczonych w zserializowanym pliku i uruchamiajaca odpowiedni widok</summary> public ActionResult KatalogProduktow() { string fullPath = Request.MapPath(@"~/zserializowane/katalogi.xml"); ViewBag.Katalogi = Dane.dajKatalogi(fullPath); return(View()); }
/// <summary> /// metoda ktora powoduje przekazanie odpowiedniemu widokowi dane o pozycjach koszyka znajdujacych sie w koszyku zalogowanej osoby, dane kosztow popszczegolnych pozycji koszyka, kosztow wszystkich pozycji koszyka oraz dane o tym, czy ilosc danego produktu w koszyku poprawnie ulegla zwiekszeniu /// </summary> /// <param name="mess"> /// parametr zawierajacy informacje o tym czy ilosc produktu w koszyku zostala poprawnie zwiekszona czy tez nie, przyjmuje wartosc null gdy ilosc produktu w koszyku nie probowala byc zwiekszona /// </param> public ActionResult Koszyk(String mess) { string fullPath = Request.MapPath(@"~/zserializowane/pozycjeKoszykow.xml"); string fullPath3 = Request.MapPath(@"~/zserializowane/produkty.xml"); string fullPath4 = Request.MapPath(@"~/zserializowane/katalogi.xml"); List <PozycjaKoszyka> pozycjeKoszykow = Dane.dajPozycje(1, fullPath); List <Produkt> produkty = Dane.dajProdukty(fullPath3); List <KatalogProduktow> katalogi = Dane.dajKatalogi(fullPath4); List <KatalogProduktow> katalogiZKoszyka = new List <KatalogProduktow>(); List <Produkt> produktyZKoszyka = new List <Produkt>(); List <float> cenyZKoszyka = new List <float>(); float sumaCen = 0; foreach (PozycjaKoszyka p in pozycjeKoszykow) { Produkt pr = produkty.Find(x => x.idProduktu == p.ProduktIdProduktu); KatalogProduktow kp = katalogi.Find(x => x.idKatalogu == pr.katalogProduktowIdKatalogu); float calkCena = p.ilosc * pr.cena; produktyZKoszyka.Add(pr); katalogiZKoszyka.Add(kp); cenyZKoszyka.Add(calkCena); sumaCen += calkCena; } ViewBag.Pozycje = pozycjeKoszykow; ViewBag.ProduktyPozycji = produktyZKoszyka; ViewBag.KatalogiPozycji = katalogiZKoszyka; ViewBag.CenyPozycji = cenyZKoszyka; ViewBag.Koszt = sumaCen; ViewBag.NoteFromBasket = mess; return(View()); }
/// <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()); }