示例#1
0
 public void SaveOrderWare(OrderWare orderware, Cart cart)
 {
     if (orderware.ID == 0)
     {
         context.OrderWares.Add(orderware);
     }
     else
     {
         OrderWare dbEntry = context.OrderWares.Find(orderware.ID);
         if (dbEntry != null)
         {
             //dbEntry.OrderId = orderware.OrderId;
             //dbEntry.UserId = orderware.UserId;
             //dbEntry.WareId = orderware.WareId;
             foreach (var item in cart.Lines)
             {
                 dbEntry.OrderId = orderware.OrderId;
                 dbEntry.UserId  = orderware.UserId;
                 dbEntry.WareId  = item.Ware.ID;
                 context.SaveChanges();
             }
         }
     }
     context.SaveChanges();
 }
示例#2
0
        public ViewResult Checkout(Cart cart, ShippingDetails shippingDetails)
        {
            string userLogin = User.Identity.Name;
            User   user      = userrepos.Users.FirstOrDefault(u => u.Login == userLogin);

            if (cart.Lines.Count() == 0)
            {
                ModelState.AddModelError("", "Извините, ваша корзина пуста!");
            }

            if (ModelState.IsValid)
            {
                if (user != null)
                {
                    DateTime dt    = DateTime.Now;
                    Order    order = new Order
                    {
                        Date  = dt,
                        User1 = user.Login,
                        Sum   = cart.ComputeTotalValue()
                    };
                    orderrepos.SaveOrder(order);

                    OrderWare ow;

                    foreach (var item in cart.Lines)
                    {
                        ow         = new OrderWare();
                        ow.OrderId = order.Id;
                        ow.UserId  = user.ID;
                        ow.WareId  = item.Ware.ID;
                        orwarrepos.SaveOrderWare(ow, cart);
                    }
                }
                //foreach (var item in cart.Lines)
                //{
                //    dbEntry.OrderId = orderware.OrderId;
                //    dbEntry.UserId = orderware.UserId;
                //    dbEntry.WareId = item.Ware.ID;
                //    context.SaveChanges();
                //}


                //orwarrepos.SaveOrderWare(ow, cart);

                orderProcessor.ProcessOrder(cart, shippingDetails);

                cart.Clear();
                return(View("Completed"));
            }
            else
            {
                return(View(shippingDetails));
            }
        }