Example #1
0
 public void Add(Orders model)
 {
     if (model == null)
     {
         throw new ArgumentNullException(nameof(model));
     }
     model.CustomerID = "ALFKI";
     model.EmployeeID = 1;
     _orderRepo.Add(model);
 }
Example #2
0
        public ActionResult Checkout()
        {
            if (Session["UserID"] != null && Session["UserType"].ToString().ToLower() == "user")
            {
                if (Session["fromCheckout"] != null && Session["fromCheckout"].ToString() != "yes")
                {
                    return(RedirectToAction("Login", "Home"));
                }


                List <MealModel> cart = (List <MealModel>)Session["CartItems"];

                Order ord = new Order();
                ord.Date      = DateTime.Now;
                ord.IsDeleted = false;


                ord.QRCodePath = genQR();
                ViewBag.QR     = ord.QRCodePath;


                ord.TotalPrice    = 0;
                ord.EstimatedTime = DateTime.Now;
                int delay = 0;
                foreach (MealModel m in cart)
                {
                    ord.TotalPrice += m.Quantity * m.Price;
                    if (m.Quantity > mRepo.GetByID(m.ID).Stock)
                    {
                        delay++;
                    }
                }

                ord.EstimatedTime = DateTime.Now.AddMinutes(delay * 5);
                ord.UserID        = Int32.Parse(Session["UserID"].ToString());
                ord.VoucherID     = null;

                oRepo.Add(ord);

                foreach (MealModel m in cart)
                {
                    OrderProduct op = new OrderProduct();
                    op.IsDeleted = false;
                    op.MealID    = m.ID;
                    op.OrderID   = ord.ID;
                    op.Quantity  = m.Quantity;
                    opRepo.Add(op);
                }

                return(View());
            }
            return(RedirectToAction("Login", "Home", new { area = "" }));
        }
Example #3
0
        public async Task <IActionResult> NewOrderClient(OrderForAddDto order)
        {
            var orderForAdd = mapper.Map <Orders>(order);

            orderForAdd.OrderStatus = CustomEnums.OrderStatus.Created;

            orderRepo.Add(orderForAdd);

            if (await orderRepo.SaveAll())
            {
                await bus.Publish(new OrderCreatedEvent());

                return(CreatedAtAction("GetOrder", new { orderId = orderForAdd.OrderId }, order));
            }
            return(BadRequest("Could not add order"));
        }
Example #4
0
        public async Task CreateOrder(Order order)
        {
            _orderRepo.CreatOrder(order);
            await _orderRepo.Add(order);

            await _orderRepo.SaveAsync();

            var shoppingCartItems = _shoppingCartRepo.GetShoppingCartItems();

            foreach (var shoppingCartItem in shoppingCartItems)
            {
                var orderDetail = new OrderDetail
                {
                    Amount  = shoppingCartItem.Amount,
                    Price   = shoppingCartItem.Candy.Price,
                    CandyId = shoppingCartItem.Candy.CandyId,
                    OrderId = order.OrderId
                };
                await _orderDetailRepo.Add(orderDetail);
            }

            await _orderDetailRepo.SaveAsync();
        }