Esempio n. 1
0
        //public ActionResult Edit(Produkt produkt)
        public ActionResult Edit([Bind(Include = "Id,UzytkownikId,Catering,K_Nazwa,Cena_Netto,Cena_Brutto,Opis,Data_dodania,Dostepny,Promocja,ProducentId,Magazyn,Magazyn.Prog,Magazyn.Polka_Nazwa,Magazyn.Ilosc,Produkt_Promocja,Produkt_Promocja.Nowa_Cena_Netto,Produkt_Promocja.Nowa_Cena_Brutto,Szczegoly_Produkt,Szczegoly_Produkt.Opis,Szczegoly_Produkt.Ilosc_Netto,Szczegoly_Produkt.Rodzaj,Szczegoly_Produkt.Dodatkowe_Dane,Szczegoly_Produkt.Stawka_Vat")] Produkt produkt, int?KategoriaId, HttpPostedFileBase image = null)
        {
            var produkt_do_wyswietlenia = produkt;
            var list = new List <int>();

            if (KategoriaId != null || KategoriaId > 1)
            {
                var kategorie = _repo.Find_Kategoria((int)KategoriaId);
                list.Add((int)KategoriaId);
                var a = 0;
                while (a < 4)
                {
                    a++;
                    list.Add((int)kategorie.RodzicId);
                    kategorie = kategorie.Rodzic;
                    if (kategorie.RodzicId == null)
                    {
                        break;
                    }
                }
                if (list.Count() != 3)
                {
                    ModelState.AddModelError("Kategoria", "Proszę wybrac ostatni poziom kategori.");
                }
            }
            if (ModelState.IsValid)
            {
                if (image != null)
                {
                    //  MemoryStream memoryStream = new MemoryStream();
                    //  var a1 = Image.FromStream(image.InputStream);
                    //  var a = new Bitmap(a1,3000,3000);
                    //  a.Save(memoryStream, ImageFormat.Jpeg);
                    //  Plik plik = new Plik
                    //  {
                    //      Id = produkt.Id,
                    //      ImageMimeType = image.ContentType,
                    //      ImageData = memoryStream.ToArray()
                    //  };
                    //  produkt.Plik = plik;

                    //  _repo.Aktualizuj_Zdjecie(plik);
                    //  //produkt.Plik.ImageMimeType = image.ContentType;
                    //  //produkt.Plik.ImageData = new byte[image.ContentLength];
                    ////  image.InputStream.Read(produkt.Plik.ImageData, 0, image.ContentLength);
                    Plik plik = new Plik
                    {
                        Id            = produkt.Id,
                        ImageMimeType = image.ContentType,
                        ImageData     = new byte[image.ContentLength]
                    };
                    //produkt.Plik = plik;

                    image.InputStream.Read(plik.ImageData, 0, image.ContentLength);
                    _repo.Aktualizuj_Zdjecie(plik);
                }


                try
                {
                    #region kij wie co
                    //var a= _repo.PobierzProdukt(produkt.Id);
                    //produkt.Potrzebny_produkt = a.Potrzebny_produkt;
                    //produkt.Magazyn = a.Magazyn;
                    //produkt.Produkt_Promocja = a.Produkt_Promocja;
                    //produkt.Uzytkownik = a.Uzytkownik;
                    //produkt.Kupiony_Produkt = a.Kupiony_Produkt;
                    //a.Nazwa = "Pedałl";



                    //var a = db.Magazyn.Find(produkt.Id);
                    //a.Polka_Nazwa = "kkk";
                    //Magazyn magazyn = new Magazyn
                    //{
                    //    Id = produkt.Id,
                    //    Polka_Nazwa = "kaszmar",
                    //    Ilosc = (int)5

                    //};
                    // _repo.Aktualizuj(produkt);
                    //_repo.Aktualizuj2(a);
                    #endregion
                    Magazyn magazyn = new Magazyn {
                        Id = produkt.Id, Polka_Nazwa = produkt.Magazyn.Polka_Nazwa, Ilosc = produkt.Magazyn.Ilosc
                    };
                    Produkt_Promocja produkt_promocja = new Produkt_Promocja {
                        Id = produkt.Id, Nowa_Cena_Netto = produkt.Produkt_Promocja.Nowa_Cena_Netto, Nowa_Cena_Brutto = produkt.Produkt_Promocja.Nowa_Cena_Brutto
                    };
                    Szczegoly_Produkt Szczegoly_produkt = new Szczegoly_Produkt {
                        Id = produkt.Id, Opis = produkt.Szczegoly_Produkt.Opis, Ilosc_Netto = produkt.Szczegoly_Produkt.Ilosc_Netto, Rodzaj = produkt.Szczegoly_Produkt.Rodzaj, Dodatkowe_Dane = produkt.Szczegoly_Produkt.Dodatkowe_Dane, Stawka_Vat = produkt.Szczegoly_Produkt.Stawka_Vat
                    };
                    produkt.Data_aktualizacji = DateTime.Now;
                    produkt.Magazyn           = null;
                    produkt.Produkt_Promocja  = null;
                    produkt.Szczegoly_Produkt = null;
                    if (list.Count() > 2)
                    {
                        _repo.UsunKategorie_Produkt(produkt.Id);
                        foreach (int ax in list)
                        {
                            var kategoriaprodukt = new Kategoria_Produkt {
                                ProduktId = produkt.Id, KategoriaId = ax
                            };
                            _repo.DodajKategorie_Produkt(kategoriaprodukt);
                        }
                    }

                    _repo.Aktualizuj_Produkt(produkt);
                    _repo.Aktualizuj_Magazyn(magazyn);
                    _repo.Aktualizuj_Produkt_Promocja(produkt_promocja);
                    _repo.Aktualizuj_Szczegoly_Produkt(Szczegoly_produkt);
                    _repo.SaveChanges();
                    if (image == null)
                    {
                        produkt_do_wyswietlenia.Plik = _repo.Pobierz_zdjecie(produkt_do_wyswietlenia.Id);
                    }
                }
                catch
                {
                    ViewBag.Blad        = true;
                    ViewBag.Kategoria   = _repo.pobierz_Kategorie().ToList();
                    ViewBag.ProducentId = _repo.pobierz_Producentow(produkt.ProducentId);
                    return(View(produkt_do_wyswietlenia));
                }
                ViewBag.Blad        = false;
                ViewBag.Kategoria   = _repo.pobierz_Kategorie().ToList();
                ViewBag.ProducentId = _repo.pobierz_Producentow(produkt.ProducentId);
                return(View(produkt_do_wyswietlenia));
            }
            ViewBag.Kategoria   = _repo.pobierz_Kategorie().ToList();
            ViewBag.ProducentId = _repo.pobierz_Producentow(produkt.ProducentId);
            return(View(produkt_do_wyswietlenia));
        }
Esempio n. 2
0
 public void Aktualizuj_Szczegoly_Produkt(Szczegoly_Produkt Szczegoly_Produkt)
 {
     _db.Entry(Szczegoly_Produkt).State = EntityState.Modified;
 }