コード例 #1
0
        public IEnumerable <CartProductViewModel> GetShoppingCart()
        {
            List <CartProductViewModel> cartProductViewModels = new List <CartProductViewModel>();
            var stringObject = _session.GetString("shoppingCart");

            if (string.IsNullOrEmpty(stringObject))
            {
                return(new List <CartProductViewModel>());
            }
            var cartList = JsonConvert.DeserializeObject <List <CartProductViewModel> >(stringObject);

            foreach (var cartItem in cartList)
            {
                CartProductDTO response = IShoppingCart.GetCart(cartItem.StockId);
                cartProductViewModels.Add(new CartProductViewModel()
                {
                    Name     = response.Name,
                    Quantity = cartItem.Quantity,
                    StockId  = response.StockId,
                    Value    = response.Value
                });
            }


            return(cartProductViewModels);
        }
コード例 #2
0
        public CartDTO AddProductToCart(Guid id, [FromBody] JObject value)
        {
            Console.WriteLine(id);
            CartProductDTO productDTO = new CartProductDTO()
            {
                ProductId = (Guid)value["id"]
            };

            return(this._cartService.Add(id, productDTO));
        }
コード例 #3
0
ファイル: Cart.cs プロジェクト: bogdanbudescu/PSSC-2018
        public void Add(CartProductDTO cartProduct)
        {
            if (cartProduct == null)
            {
                throw new ArgumentNullException();
            }

            //DomainEvents.Raise<ProductAddedCart>(new ProductAddedCart() { CartProductDTO = cartProduct });

            this.cartProducts.Add(cartProduct);
        }
コード例 #4
0
        CartProductDTO IShoppingCart.GetCart(int stockId)
        {
            CartProductDTO cartProduct = new CartProductDTO();

            cartProduct.StockId = stockId;
            string command1  = "SELECT Quantity, ProductId FROM [Stock] Where Id = @SId";
            string command2  = "SELECT Name, Value FROM [Products] Where Id = @PId";
            int    productId = 0;

            using (SqlConnection sqlconnection = new SqlConnection(connectionstring))
            {
                sqlconnection.Open();
                using (SqlCommand cmd = new SqlCommand(command1, sqlconnection))
                {
                    cmd.Parameters.Add("@SId", System.Data.SqlDbType.Int).Value = cartProduct.StockId;

                    var reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        cartProduct.Quantity = reader.GetInt32(0);
                        productId            = reader.GetInt32(1);
                    }
                    reader.Close();
                }
                using (SqlCommand cmd = new SqlCommand(command2, sqlconnection))
                {
                    cmd.Parameters.Add("@PId", System.Data.SqlDbType.Int).Value = productId;
                    var reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        cartProduct.Name  = reader.GetString(0);
                        cartProduct.Value = $"€{reader.GetDecimal(1).ToString("N2")}";
                    }
                }
            }
            return(cartProduct);
        }
コード例 #5
0
        public async Task AddCartProductAsync(CartProductDTO p, ClaimsPrincipal User, string userId = null)
        {
            CartProduct mappedCartProduct = _mapper.Map <CartProduct>(p);

            Cart cart = await _getCartAsync(User, userId);

            if (cart == null)
            {
                cart = new Cart {
                    ApplicationUserId = userId ?? User.GetUserId(), CartProducts = new List <CartProduct> {
                        mappedCartProduct
                    }
                };
                await _repo.CreateAsync(cart);
            }
            else
            {
                mappedCartProduct.CartId = cart.Id;
                if (cart.CartProducts.Find(c => c.ProductId == mappedCartProduct.ProductId) == null)
                {
                    await _cartProductRepo.AddCartProductAsync(mappedCartProduct);
                }
            }
        }
コード例 #6
0
 public CartDTO AddCart(Guid customerId, CartProductDTO cartProductDto)
 {
     throw new NotImplementedException();
 }
コード例 #7
0
        public async Task <IActionResult> AddItem(Guid cartId, [FromBody] CartProductDTO product)
        {
            await _cartService.AddAsync(cartId, product.ProductName);

            return(Created($"{cartId}/items", null));
        }