Esempio n. 1
0
        public async Task <ApiResult <string> > AddToCart(CartItemCreateRequest request)
        {
            var json        = JsonConvert.SerializeObject(request);
            var httpContent = new StringContent(json, Encoding.UTF8, "application/json");
            var response    = await _client.PostAsync($"/api/carts/Items", httpContent);

            var result = await response.Content.ReadAsStringAsync();

            if (response.IsSuccessStatusCode)
            {
                return(JsonConvert.DeserializeObject <ApiResultSuccess <string> >(result));
            }
            return(JsonConvert.DeserializeObject <ApiResultErrors <string> >(result));
        }
Esempio n. 2
0
        public async Task <IActionResult> AddToCart(CartItemCreateRequest request)
        {
            if (ModelState.IsValid == false)
            {
                return(BadRequest(ModelState));
            }
            var result = await _cartService.AddToCart(request);

            if (result.IsSuccessed == false)
            {
                return(BadRequest(result));
            }
            return(Ok(result));
        }
        public async Task <ApiResult <bool> > AddToCart(CartItemCreateRequest request)
        {
            var cartItem = await _context.CartProducts.FirstOrDefaultAsync(x => x.CartID == request.CartID && x.ProductID == request.ProductID);

            if (cartItem != null)
            {
                cartItem.Quantity += request.Quantity;
                return(await SaveChangeService.SaveChangeAsyncNotImage(_context));
            }
            else
            {
                var item = new CartProduct
                {
                    CartID    = request.CartID,
                    ProductID = request.ProductID,
                    Quantity  = request.Quantity
                };
                _context.CartProducts.Add(item);
                return(await SaveChangeService.SaveChangeAsyncNotImage(_context));
            }
        }
Esempio n. 4
0
        public async Task <IActionResult> BuyAsync(CartItemCreateRequest request)
        {
            var product = await _productService.GetById(request.ProductID, languageDefauleId);

            if (section != null)
            {
                var add = await _cartService.AddToCart(request);

                if (add.IsSuccessed)
                {
                    SaveToCookie(product.ResultObject, request.Quantity);
                    return(RedirectToAction("index", "cart"));
                }
                return(RedirectToAction("index", "cart"));
            }
            else
            {
                SaveToCookie(product.ResultObject, request.Quantity);
                return(RedirectToAction("index", "cart"));
            }
        }