public void RemoveProductFromOrder()
        {
            if (MessageBox.Show("Do you want to delete?", "Confirmation", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                DataGridView dgvItemOfOrder = form.getDgvItemOfOrder();
                //Get number of selected grow
                Int32 selectedRowCount = dgvItemOfOrder.Rows.GetRowCount(DataGridViewElementStates.Selected);
                if (selectedRowCount > 0)
                {
                    for (int i = 0; i < selectedRowCount; i++)
                    {
                        //get selected row
                        String row    = dgvItemOfOrder.SelectedRows[i].Index.ToString();
                        int    rowInt = int.Parse(row);

                        //get product from list product
                        CartItemDTO item = listProductOrder[rowInt];
                        listProductOrder.Remove(item);

                        //remove list
                        if (listProductOrder.Count == 0)
                        {
                            listProductOrder = null;
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Select product you want to remove", "Notification");
                }
            }
        }
Пример #2
0
        public ActionResult AddToCart(int id)
        {
            if (Session["kullanici"] != null)
            {
                //MyCart myCart = new MyCart(); bu kullanım bana sürekli yeni sepetler oluşturur.
                MyCart cart = Session["cart"] as MyCart;

                CartItemDTO cartItem     = new CartItemDTO();
                var         eklenenAlbum = albumService.Get(id);
                cartItem.ID     = eklenenAlbum.ID;
                cartItem.Name   = eklenenAlbum.Title;
                cartItem.Price  = eklenenAlbum.Discontinued ? eklenenAlbum.Price * 0.90m : eklenenAlbum.Price;
                cartItem.Amount = 1;

                cart.Add(cartItem);
                Session["cart"] = cart;
            }
            else
            {
                throw new Exception();
            }



            return(PartialView("_CartButton"));
        }
Пример #3
0
 public CartDTO UpdateCart(CartItemDTO cart)
 {
     using (var dbContext = new OMHRDModel())
     {
         var cartItem = dbContext.Cart_T.FirstOrDefault(x => x.ProductId == cart.ProductId && x.UserId == cart.UserId && x.SizeId == cart.SizeId && (!x.ColorId.HasValue || x.ColorId.Value == cart.ColorId.Value));
         if (cartItem != null)
         {
             cartItem.Quantity = cart.IsQuantityForAddition ? cartItem.Quantity + cart.Quantity : cart.Quantity;
             dbContext.SaveChanges();
         }
         else
         {
             cartItem = new Cart_T()
             {
                 ProductId = cart.ProductId,
                 ColorId   = cart.ColorId,
                 SizeId    = cart.SizeId,
                 Quantity  = cart.Quantity,
                 UserId    = cart.UserId
             };
             dbContext.Cart_T.Add(cartItem);
             dbContext.SaveChanges();
         }
         return(GetCartTotal(cart.UserId));
     }
 }
Пример #4
0
        public IHttpActionResult PostCartItem(CartItemDTO cartItem)
        {
            var cartcheck =
                (from Cart in db.Carts
                 where Cart.Id > 0
                 select Cart).FirstOrDefault();

            if (cartcheck != null)  //If cart Id exist
            {
                cartItem.CartId = cartcheck.Id;
            }
            else //if no cart.Id exist
            {
                var newCart = new Cart();
                db.Carts.Add(newCart);
                cartItem.CartId = newCart.Id;
            }

            CartItem p = ToEntity(cartItem);

            db.CartItems.Add(p);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = cartItem.Id }, cartItem));
        }
Пример #5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="CartItemDTO"></param>
        /// <returns></returns>
        public CartItemDTO Create(CartItemDTO CartItemDTO)
        {
            const string sqlStatement = "INSERT INTO dbo.CartItemDTO ([FirstName], [LastName], [CategoryId], [CountryId], [Description], [TotalProducts], [Rowid], [CreatedOn], [CreatedBy], [ChangedOn], [ChangedBy]) " +
                                        "VALUES(@FirstName, @LastName, @CategoryId, @CountryId, @Descritpion, @TotalProducts, @Rowid, @CreatedOn, @CreatedBy, @ChangedOn, @ChangedBy); SELECT SCOPE_IDENTITY();";

            var db = DatabaseFactory.CreateDatabase(ConnectionName);

            using (var cmd = db.GetSqlStringCommand(sqlStatement))
            {
                //db.AddInParameter(cmd, "@FirstName", DbType.String, CartItemDTO.FirstName);
                //db.AddInParameter(cmd, "@LastName", DbType.String, CartItemDTO.LastName);
                //db.AddInParameter(cmd, "@CategoryId", DbType.Int32, CartItemDTO.CategoryId);
                //db.AddInParameter(cmd, "@CountryId", DbType.Int32, CartItemDTO.CountryId);
                //db.AddInParameter(cmd, "@Descritpion", DbType.String, CartItemDTO.Description);
                //db.AddInParameter(cmd, "@TotalProducts", DbType.Int32, CartItemDTO.TotalProducts);
                //db.AddInParameter(cmd, "@Rowid", DbType.Guid, CartItemDTO.Rowid);
                //db.AddInParameter(cmd, "@CreatedOn", DbType.DateTime2, CartItemDTO.CreatedOn);
                //db.AddInParameter(cmd, "@CreatedBy", DbType.Int32, CartItemDTO.CreatedBy);
                //db.AddInParameter(cmd, "@ChangedOn", DbType.DateTime2, CartItemDTO.ChangedOn);
                //db.AddInParameter(cmd, "@ChangedBy", DbType.Int32, CartItemDTO.ChangedBy);
                //// Obtener el valor de la primary key.
                //CartItemDTO.Id = Convert.ToInt32(db.ExecuteScalar(cmd));
            }

            return(CartItemDTO);
        }
Пример #6
0
        public IHttpActionResult PutCartItem(int id, CartItemDTO modified)
        {
            if (!CartItemExists(id))
            {
                return NotFound();
            }

            CartItem CartI = (from x in db.CartItems
                               where x.Id == id
                               select x).First();

            CartI.Id = modified.Id;
            CartI.CartId = modified.CartId;
            CartI.ProductId = modified.ProductId;
            CartI.Total = modified.Total;
            CartI.Quantity = modified.Quantity;

//            db.Entry(cartItem).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
            }

            return StatusCode(HttpStatusCode.NoContent);
        }
Пример #7
0
        public async Task CreateCartItem_AddsNewProductToCartItemsTable()
        {
            //Arrange
            var myDbContextMoq = new DbContextMock <ShoppingCartContext>(myDummyOptions);

            //Create list of CartItems that contains only two Products
            myDbContextMoq.CreateDbSetMock(x => x.CartItems, new[]
            {
                new CartItem {
                    ProductId = 1, Price = 3, Quantity = 2
                },
                new CartItem {
                    ProductId = 2, Price = 2, Quantity = 5
                }
            });

            //We want to add third product to our list of CartItems
            //Since CreateCartItem() method accepts type CartItemDTO we use that type here for our new CartItem
            CartItemDTO testDataDTO = new CartItemDTO()
            {
                ProductId = 3,
                Price     = 21,
                Quantity  = 1
            };

            CartItemService service = new CartItemService(myDbContextMoq.Object);

            //Act
            await service.CreateCartItem(testDataDTO);//call CreateCartItem() function and pass the testDataDTO

            //Assert
            //The size of the CartItems list increases to 3 because CreateCartItem() method added testDataDTO
            Assert.Equal(3, myDbContextMoq.Object.CartItems.Count());
        }
Пример #8
0
        public static CartItemDTO NewCartItem(Product product, AddToCartDTO model)
        {
            decimal additionalPrices = 0;

            if (model.DemandTypes.Count != 0)
            {
                var productDemands = product.ProductDemands;
                foreach (var demandType in model.DemandTypes)
                {
                    additionalPrices += demandType.ChoosedDemandPrice;
                }
            }
            product.Price += additionalPrices;

            product.ProductDemands = null;
            CartItemDTO cartModel = new CartItemDTO
            {
                DemandTypes = model.DemandTypes,
                ProductId   = product.Id,
                Product     = product,
                Quantity    = model.Quantity,
                UnitPrice   = product.Price,
                Note        = model.Note,
                ImageName   = product.ProductImages.FirstOrDefault().ImageName
            };

            cartModel.ApplyDiscount(product.DiscountRate);
            return(cartModel);
        }
Пример #9
0
        public async Task UpdateCartItem_EditsTheCartItem_AndAddsTheUpdatedCartItemToCartItemsTable()
        {
            //Arrange
            var myDbContextMoq = new DbContextMock <ShoppingCartContext>(myDummyOptions);

            //Create list of CartItems that contains only two Products
            myDbContextMoq.CreateDbSetMock(x => x.CartItems, new[]
            {
                new CartItem {
                    ProductId = 1, Price = 3, Quantity = 2
                },
                new CartItem {
                    ProductId = 2, Price = 2, Quantity = 5
                }
            });

            CartItemDTO testDataDTO = new CartItemDTO()
            {
                ProductId = 1,
                Price     = 3,
                Quantity  = 4 //we updated the Quantity
            };

            CartItemService service = new CartItemService(myDbContextMoq.Object);

            //Act
            //for example we want to update first CartItem
            await service.UpdateCartItem(testDataDTO);

            CartItem cartItmeToBeUpdated = myDbContextMoq.Object.CartItems.FirstOrDefault(x => x.ProductId == 1);

            //Assert
            //Quantity changed from 2 to 4
            Assert.Equal(4, cartItmeToBeUpdated.Quantity);
        }
Пример #10
0
        public async Task AddItemToCart(int itemId)
        {
            Item item = await _itemRepo.GetById(itemId);

            if (item == null)
            {
                throw new NullReferenceException();
            }

            CartItemDTO cartItem = _mapper.Map <Item, CartItemDTO> (item);

            if (!_s.IsAvailable)
            {
                await _s.LoadAsync().ConfigureAwait(false);
            }

            var cartItems = GetCartItems();

            if (!Exist(cartItem, cartItems))
            {
                cartItems.Add(cartItem);
                _s.SetString(_key, JsonConvert.SerializeObject(cartItems));
                await _s.CommitAsync().ConfigureAwait(false);
            }
        }
Пример #11
0
        public IHttpActionResult PutCartItem(int id, CartItemDTO modded)
        {
            if (!CartItemExists(id))
            {
                return(NotFound());
            }

            CartItem old = (from p in db.CartItems
                            where p.Id == id
                            select p).FirstOrDefault();

            old.CartId    = modded.CartId;
            old.ProductId = modded.ProductId;
            old.Quantity  = modded.Quantity;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!CartItemExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Пример #12
0
        public ActionResult AddToCart(int id)
        {
            if (Session["UserName"] != null)
            {
                MyCart cart = Session["cart"] as MyCart;

                CartItemDTO cartItem = new CartItemDTO();

                using (SinemaSitesiEntities db = new SinemaSitesiEntities())
                {
                    var data = db.Movie.Where(x => x.ID == id).FirstOrDefault();
                    cartItem.ID     = data.ID;
                    cartItem.Name   = data.Name;
                    cartItem.Price  = data.Price;
                    cartItem.Amount = 1;
                    cart.Add(cartItem);
                    Session["cart"] = cart;
                }
            }
            else
            {
                throw new Exception();
            }

            return(PartialView("_CartButton"));
        }
        public void AddProductToOrder()
        {
            DataGridView dgvProducts = form.getDgvProduct();
            //Get number of selected grow
            Int32 selectedRowCount = dgvProducts.Rows.GetRowCount(DataGridViewElementStates.Selected);

            if (selectedRowCount > 0)
            {
                for (int i = 0; i < selectedRowCount; i++)
                {
                    //get selected row
                    String row    = dgvProducts.SelectedRows[i].Index.ToString();
                    int    rowInt = int.Parse(row);

                    //get product from list product
                    TblProductsDTO product = listProducts[rowInt];

                    //new list product order
                    if (listProductOrder == null)
                    {
                        listProductOrder = new List <CartItemDTO>();
                    }

                    CartItemDTO item = findProductInOrder(product.idProduct);

                    if (item != null)
                    {
                        if (item.quantity < product.quantity)
                        {
                            //increase quantity
                            item.quantity++;
                            //update totalPrice
                            item.totalPrice = item.quantity * item.price;
                        }
                        else
                        {
                            MessageBox.Show("Quantity of item can't more then quantity of product in stock", "Error");
                        }
                    }
                    else
                    {
                        item = new CartItemDTO()
                        {
                            idProduct  = product.idProduct,
                            name       = product.name,
                            price      = product.price,
                            quantity   = 1,
                            totalPrice = product.price * 1
                        };
                        //add product to list product order
                        listProductOrder.Add(item);
                    }
                }
            }
            else
            {
                MessageBox.Show("Select product you want to add", "Notification");
            }
        }
Пример #14
0
        static void Main(string[] args)
        {
            IList <Stocks>     stockItems     = InitiateStock();
            ActivePromotionDTO activeDiscount = InitiateActivePromotion();
            CartItemDTO        cartItems      = GetCartItems();

            logMylogic(stockItems, activeDiscount, ApplyPromotion(stockItems, activeDiscount, cartItems));
        }
Пример #15
0
        public IHttpActionResult PostCartItem(CartItemDTO cartItemInfo)
        {
            CartItem newCartItem = ToEntity(cartItemInfo);

            db.CartItems.Add(newCartItem);
            db.SaveChanges();

            return CreatedAtRoute("DefaultApi", new { id = newCartItem.Id }, newCartItem);
        }
Пример #16
0
 public CartItem MapToCartItem(CartItemDTO parCartItemDTO)
 {
     return(new CartItem
     {
         CartID = parCartItemDTO.CartID,
         ProductID = parCartItemDTO.Product.ProductID,
         Quantity = parCartItemDTO.Quantity
     });
 }
Пример #17
0
 public static CartItem ToCart(this CartItemDTO dto)
 {
     return(new CartItem {
         Id = dto.Id.HasValue ? dto.Id.Value : 0,
         ProductId = dto.Product.Id.Value,
         Quantity = dto.Quantity.Value,
         UserId = dto.UserId
     });
 }
Пример #18
0
        /// <summary>
        /// Add method.
        /// </summary>
        /// <param name="CartItemDTO"></param>
        /// <returns></returns>
        public CartItemDTO Add(CartItemDTO CartItemDTO)
        {
            var CartDAC = new CartDAC();

            CartItemDTO.CreatedBy = CreatedBy;
            CartItemDTO.CreatedOn = CreatedOn;
            CartItemDTO.ChangedBy = ChangedBy;
            CartItemDTO.ChangedOn = ChangedOn;
            return(CartDAC.Create(CartItemDTO));
        }
Пример #19
0
        public IActionResult DeleteCartItem(CartItemDTO cartItemDto)
        {
            //List<ProdcutDesignDTO> prdList = JsonConvert.DeserializeObject<List<ProdcutDesignDTO>>(productDesignList);
            var prr = cartService.DeleteFromCart(cartItemDto.cartItemId, cartItemDto.userId);

            return(Ok(new MessaageCommonResponse()
            {
                message = prr
            }));
        }
Пример #20
0
        /// <summary>
        /// Adds a new product item to cart
        /// </summary>
        public async Task <IHttpActionResult> Post(string id, List <CartItemDTO> existingCartItems)
        {
            if (string.IsNullOrEmpty(id))
            {
                throw new ArgumentException("Product code is mandatory");
            }

            if (existingCartItems == null)
            {
                existingCartItems = new List <CartItemDTO>();
            }

            if (existingCartItems.Where(x => x == null).Any())
            {
                throw new ArgumentException("Cart Item cannot be null");
            }


            CartDTO cart = await _productService.AddProductToCart(id, existingCartItems);

            List <ProductItemDTO> productDTOs = await _productService.FindAllProducts();

            List <DiscountViewModel> listOfDiscounts = CalculateDiscounts(productDTOs, cart);

            ProductSelectionViewModel res = new ProductSelectionViewModel()
            {
                Products = productDTOs.Select(x => new ProductViewModel()
                {
                    Code         = x.Code,
                    Description  = x.Description,
                    Price        = x.Price,
                    AmountInCart = (cart.CartItems.Where(c => c.Product.Code == x.Code).FirstOrDefault() != null ? cart.CartItems.Where(c => c.Product.Code == x.Code).FirstOrDefault().Quantity : 0)
                }).ToList(),
                Total     = cart.Total,
                Discounts = listOfDiscounts,
                Cart      = cart
            };


            foreach (ProductViewModel product in res.Products)
            {
                CartItemDTO cartItem = cart.CartItems.Where(x => x.Product.Code == product.Code).FirstOrDefault();

                if (cartItem != null)
                {
                    product.Available = product.AmountInCart < cartItem.Product.AmountInStock;
                }
                else
                {
                    product.Available = productDTOs.Where(x => x.Code == product.Code).FirstOrDefault().AmountInStock > 0;
                }
            }

            return(Json(res));
        }
Пример #21
0
        private CartItem ToEntity(CartItemDTO cartItem)

        {
            return(new CartItem()
            {
                Id = cartItem.Id,
                CartId = cartItem.CartId,
                ProductId = cartItem.ProductId,
                Quantity = cartItem.Quantity
            });
        }
Пример #22
0
        public async Task <IDataResult <CartDTO> > AddToCart(AddToCartDTO model)
        {
            var key = _httpContextAccessor.HttpContext.Request.Cookies["key"]?.ToString() ?? Guid.NewGuid().ToString();

            string existCart = await _redisManager.GetDb().StringGetAsync(key);

            CartDTO cart;

            if (!string.IsNullOrEmpty(existCart))
            {
                cart = JsonSerializer.Deserialize <CartDTO>(existCart);
            }
            else
            {
                cart = new CartDTO();
            }

            //! Sepette indirim etkinliğini bu satırda kontrol et ve cart'ta ki indirime apply et

            var existCartItem = cart.CartItems.FirstOrDefault(x => x.ProductId == model.ProductId && x.DemandTypes.SequenceEqual(model.DemandTypes));

            if (existCartItem != null)
            {
                cart.CartItems.Remove(existCartItem);
                existCartItem.Quantity += model.Quantity;
                cart.CartItems.Add(existCartItem);
            }
            else
            {
                var product = (await _productService.GetByIdAsync(model.ProductId)).Data;
                product.ProductDemands = null;
                CartItemDTO cartModel = CartHelper.NewCartItem(product, model);
                cart.CartItems.Add(cartModel);
            }

            TimeSpan expireCart = TimeSpan.FromMinutes(1);
            var      status     = await _redisManager.GetDb().StringSetAsync(key, JsonSerializer.Serialize(cart), expireCart);

            if (!status)
            {
                cart = null;
            }
            else
            {
                _httpContextAccessor.HttpContext.Response.Cookies.Append("key", key, new CookieOptions
                {
                    Expires  = DateTime.Now + expireCart,
                    HttpOnly = true,
                    SameSite = SameSiteMode.Lax,
                    Secure   = true
                });
            }
            return(ResultHelper <CartDTO> .DataResultReturn(cart));
        }
Пример #23
0
 private CartItem ToEntity (CartItemDTO ci)
 {
     return new CartItem()
     {
         Id = ci.Id,
         ProductId = ci.ProductId,
         CartId = ci.CartId,
         Total = ci.Total,
         Quantity = ci.Quantity
     };
 }
Пример #24
0
        public bool Exist(CartItemDTO itemToAdded, List <CartItemDTO> cardItems)
        {
            int i, length = cardItems.Count;

            for (i = 0; i < length; i += 1)
            {
                if (cardItems[i].ItemId == itemToAdded.ItemId)
                {
                    return(true);
                }
            }
            return(false);
        }
Пример #25
0
        public async Task AddItemToCart(CartItemDTO item, Guid userId)
        {
            ShoppingCart CurrentCart = await _unit.Carts.GetCartByUserId(userId);

            if (CurrentCart is null)
            {
                CurrentCart = new ShoppingCart(userId);
                await _unit.Carts.CreateCart(CurrentCart);
            }

            CurrentCart.AddItem(_mapper.Map <CartItem>(item));

            _unit.Carts.Update(CurrentCart);
        }
Пример #26
0
        /// <summary>
        /// Get Cart of Customer
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static CartDTO Cart(Guid id)
        {
            try
            {
                var cartjoin = (from customer in db.Customers
                                where customer.Id == id
                                join cl in db.CartLines on customer.Id equals cl.CustomerId
                                join p in db.Products on cl.ProductId equals p.Id
                                join pc in db.ProductCategories on p.CategoryId equals pc.Id
                                select new { cl, p, pc }).ToList();

                CartDTO cartDTO = new CartDTO();
                foreach (var result in cartjoin)
                {
                    List <String> variants = new List <String>();
                    foreach (var v in result.p.ProductVariants)
                    {
                        variants.Add(v.Name);
                    }

                    CartItemDTO cartLineDTO = new CartItemDTO()
                    {
                        Id       = result.cl.Id,
                        Quantity = result.cl.Quantity,
                        Product  = new ProductDTO()
                        {
                            Id                = result.p.Id,
                            Name              = result.p.Name,
                            Price             = result.p.Price,
                            Description       = result.p.Description,
                            ImageURL          = result.p.ImageURL,
                            TotalQuantitySale = result.p.TotalQuantitySale,
                            Category          = new CategoryDTO()
                            {
                                Id   = result.pc.Id,
                                Name = result.pc.Name,
                                TotalSaleQuantity = result.pc.TotalSaleQuantity
                            },
                            Variants = variants
                        }
                    };
                    cartDTO.items.Add(cartLineDTO);
                }
                return(cartDTO);
            }
            catch
            {
                return(null);
            }
        }
Пример #27
0
        public async Task <IDictionary <string, object> > Create(CartItemDTO cartDTO)
        {
            // var user = User.;
            try{
                var cart = cartDTO.ToCart();
                await _cartRepo.Create(cart);

                return(Const.Response.ControlerResponse(Const.StatusCode.OK, "Action complete successfully"));
            }
            catch (Exception e) {
                Console.WriteLine(e.ToString());
                return(Const.Response.ControlerResponse(Const.StatusCode.InternalServerError, e.ToString()));
            }
        }
Пример #28
0
        public ActionResult addCart(CartItemDTO cartItem)
        {
            var carrt = cartItem;
            var cart  = Session["cart"];//get key cart

            // cập nhật số lượng đã bán bảng LoaiSanPham
            var SP = UtilsDatabase.getDaTaBase().SanPhams.Where(o => o.MaSanPham == Convert.ToInt32(cartItem.MaSanPham)).FirstOrDefault();

            if (SP != null)
            {
                var LSP = UtilsDatabase.getDaTaBase().LoaiSanPhams.Where(o => o.MaLoai == Convert.ToInt32(SP.MaLoai)).FirstOrDefault();
                if (LSP != null)
                {
                    LSP.SoLuongDaBan = SP.SoLuongDaBan + cartItem.SoLuong;
                    UpdateModel(SP);
                    UtilsDatabase.getDaTaBase().SubmitChanges();
                }
                UpdateModel(SP);
                UtilsDatabase.getDaTaBase().SubmitChanges();
            }

            if (cart == null)
            {
                List <CartItemDTO> listCart = new List <CartItemDTO>();
                listCart.Add(cartItem);
                string jsonCart = JsonConvert.SerializeObject(listCart);
                Session["cart"] = jsonCart;
            }
            else
            {
                List <CartItemDTO> listCart = JsonConvert.DeserializeObject <List <CartItemDTO> >(cart.ToString());
                bool check = true;
                for (int i = 0; i < listCart.Count; i++)
                {
                    if (listCart[i].MaSanPham == cartItem.MaSanPham)
                    {
                        listCart[i].SoLuong += cartItem.SoLuong;
                        check = false;
                    }
                }
                if (check)
                {
                    listCart.Add(cartItem);
                }
                string jsonCart = JsonConvert.SerializeObject(listCart);
                Session["cart"] = jsonCart;
            }

            return(RedirectToAction("Index", "Home"));
        }
Пример #29
0
        public async Task <IActionResult> AddItemToCart(CartItemDTO item)
        {
            try
            {
                var userId = new Guid(_httpContextAccessor.HttpContext.User.FindFirst(ClaimTypes.NameIdentifier).Value);
                await _cartService.AddItemToCart(item, userId);

                return(Ok(200));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Пример #30
0
        public async Task <CartItemDTO> UpdateCartItem(CartItemDTO cartItem)
        {
            //check if CartItem exists in database (CartItem is a Product Each Product has its related category)

            var existingCartItem = _context.CartItems.Include(i => i.Product).Include(i => i.Product.Category).Single(e => e.ProductId == cartItem.ProductId);

            existingCartItem.Quantity = cartItem.Quantity;

            cartItem.Product = existingCartItem.Product;//To show Product entity in postman

            await _context.SaveChangesAsync();

            return(cartItem);
        }