public async Task <IActionResult> CreateOrderDetail(OrderDetailsCreateRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            var result = await _orderApiClient.CreateOrderDetail(request);

            if (result == 1)
            {
                TempData["result"] = "Thêm mới đơn hàng thành công";
                return(RedirectToAction("Index"));
            }

            ModelState.AddModelError("", "Thêm đơn hàng thất bại");
            return(View(request));
        }
Exemple #2
0
        public async Task <IActionResult> Payment(OrderCreateRequest request)
        {
            List <CategoryViewModel> categoryList = await _categoryApiClient.GetList();

            ViewBag.CategoryList = categoryList;

            cart = SessionExtensions.Get <List <CartItems> >(HttpContext.Session, "cart");
            var list = new List <CartItems>();

            if (cart != null)
            {
                list = cart;
            }
            ViewBag.Cart = list;

            decimal total = 0;

            foreach (var item in list)
            {
                total += (item.Price * item.Quantity);
            }
            ViewBag.total = total;

            if (!ModelState.IsValid)
            {
                return(View(request));
            }

            var id = await _orderApiClient.CreateOrder(request);

            cart = SessionExtensions.Get <List <CartItems> >(HttpContext.Session, "cart");
            var orderDetail = new OrderDetailsCreateRequest();

            foreach (var item in cart)
            {
                orderDetail.OrderId   = id;
                orderDetail.ProductId = item.Id;
                orderDetail.Price     = item.Price;
                orderDetail.Quantity  = item.Quantity;
                await _orderApiClient.CreateOrderDetail(orderDetail);
            }
            return(RedirectToAction("Success"));
        }