public Zamowienie UtworzZamowienie(Zamowienie noweZamowienie, string userId)
        {
            var koszyk = PobierzKoszyk();

            noweZamowienie.DataDodania = DateTime.Now;
            noweZamowienie.UserId      = userId;

            db.Zamowienia.Add(noweZamowienie);

            if (noweZamowienie.PozycjeZamowienia == null)
            {
                noweZamowienie.PozycjeZamowienia = new List <PozycjaZamowienia>();
            }

            decimal koszykWartosc = 0;

            //Iteracja po wszystkich elementach w koszyku
            foreach (var koszykElement in koszyk)
            {
                var nowaPozycjaZamowienia = new PozycjaZamowienia()
                {
                    ZwierzeId  = koszykElement.Zwierze.ZwierzeId,
                    Ilosc      = koszykElement.Ilosc,
                    CenaZakupu = koszykElement.Zwierze.CenaZwierza
                };

                koszykWartosc += (koszykElement.Ilosc * koszykElement.Zwierze.CenaZwierza);
                noweZamowienie.PozycjeZamowienia.Add(nowaPozycjaZamowienia);
            }

            noweZamowienie.WartoscZamowienia = koszykWartosc;
            db.SaveChanges();

            return(noweZamowienie);
        }
Esempio n. 2
0
        public ActionResult ListaWystawionychZwierzakow(Zwierze pozycjaZamowienia)
        {
            if (Request.IsAjaxRequest())
            {
                db.Entry(pozycjaZamowienia).State = EntityState.Modified;
                try
                {
                    db.SaveChanges();
                }
                catch (DbEntityValidationException e)
                {
                    foreach (var eve in e.EntityValidationErrors)
                    {
                        Debug.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                        eve.Entry.Entity.GetType().Name, eve.Entry.State);
                        foreach (var ve in eve.ValidationErrors)
                        {
                            Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                            ve.PropertyName, ve.ErrorMessage);
                        }
                    }
                    throw;
                }
            }


            //Check if current user is admin
            bool IsAdmin = User.IsInRole("Admin");

            ViewBag.UserIsAdmin = IsAdmin;

            var           WszystkieZwierzeta = db.Zwierzeta.ToList();
            List <string> wojewodztwa        = new List <string>();

            WszystkieZwierzeta.ForEach(a =>
            {
                if (!a.Wojewodztwo.Equals(String.Empty))
                {
                    wojewodztwa.Add(a.Wojewodztwo);
                }
            });

            ViewBag.Wojewodztwa = wojewodztwa.Distinct();
            ViewBag.Gatunki     = db.Gatunki.ToList().Select(a => a.NazwaGatunku);



            List <Zwierze> WystawioneZwierzeta;

            //Dla administratorów zwracamy wszystkie zamowienia
            if (IsAdmin)
            {
                WystawioneZwierzeta = db.Zwierzeta.ToList();
            }
            else
            {
                var user = UserManager.FindById(User.Identity.GetUserId());
                WystawioneZwierzeta = db.Zwierzeta.Where(a => a.UserId == user.Id).ToList();
            }

            var vm = new List <WystawioneZwierzetaViewModel>();

            WystawioneZwierzeta.ForEach(a =>
            {
                vm.Add(new WystawioneZwierzetaViewModel()
                {
                    WystawioneZwierzeta = a,
                    Zdjecia             = db.Zdjecie.Where(b => b.ZwierzeId == a.ZwierzeId).ToList()
                });
            });



            return(View(vm));
        }