Exemple #1
0
        public void AddErtekesites(int AruID, DateTime selectedDate, decimal arumennyiseg)
        {
            var reszlet = new ErtekesitesReszlet
            {
                AruID        = AruID,
                AruMennyiseg = arumennyiseg
            };

            _context.SaveChanges();
            var ertid = _context.ErtekesitesReszletek.Where(p => p.AruID == AruID).Select(p => p.ErtekesitesID).FirstOrDefault();
            var date  = _context.Ertekesitesek.Where(p => p.ErtekesitesID == ertid).Select(p => p.ErtekesitesDatum).FirstOrDefault();

            date = selectedDate;
            _context.SaveChanges();
            var keszlet = _context.AruKeszletek.Where(p => p.AruID == AruID).Select(p => p.Raktarkeszlet).FirstOrDefault();

            keszlet = keszlet - arumennyiseg;
            _context.SaveChanges();
        }
        public ActionResult Checkout(Cart cartline, string selectedDate)
        {
            if (selectedDate == null)
            {
                selectedDate = DateTime.Today.ToShortDateString();
            }
            DateTime date = Convert.ToDateTime(selectedDate);

            if (ModelState.IsValid)
            {
                Ertekesites ertekesites = new Ertekesites
                {
                    ErtekesitesDatum = date
                };
                db.Ertekesitesek.Add(ertekesites);
                db.SaveChanges();
                try
                {
                    if (cartline == null)
                    {
                        ModelState.AddModelError("", "Nincs mit feltölteni.");
                        return(View(new CartIndexViewModel()));
                    }
                    foreach (var item in cartline.Lines.ToList())
                    {
                        if (item.AruMennyiseg < 1)
                        {
                            ModelState.AddModelError("", "Nincs mit feltölteni.");
                            return(View(new CartIndexViewModel()));
                        }
                        else
                        {
                            var keszlet = db.AruKeszletek
                                          .Where(i => i.AruID == item.Product.AruID)
                                          .Single();
                            if (item.AruMennyiseg > keszlet.Raktarkeszlet)
                            {
                                ModelState.AddModelError("", "Sajnáljuk Nincs elegendő áru készleten.");
                                return(View(new CartIndexViewModel()));
                            }
                            if (TryUpdateModel(keszlet, "", new string[] { "Raktarkeszlet" }))
                            {
                                keszlet.Raktarkeszlet = keszlet.Raktarkeszlet - item.AruMennyiseg;
                                db.SaveChanges();
                            }
                            ErtekesitesReszlet reszletek = new ErtekesitesReszlet();
                            reszletek.AruID        = item.Product.AruID;
                            reszletek.AruMennyiseg = item.AruMennyiseg;
                            db.ErtekesitesReszletek.Add(reszletek);
                            reszletek.ErtekesitesID = ertekesites.ErtekesitesID;
                            db.SaveChanges();
                        }
                    }
                    cartline.Clear();
                    return(RedirectToAction("Index", "NapiAdatok"));
                }
                catch (Exception)
                {
                    ModelState.AddModelError("", "Sajnáljuk Nincs elegendő áru készleten.");
                }
            }
            return(View(new CartIndexViewModel()));
        }