public async Task <IActionResult> AddCartItemAsync(int userId, int cartId, Cart_Items_Entity cartItem) { if (!_shopCartService.checkIfShopCartitemExist(userId, cartId, cartItem.BookId)) { await _shopCartService.AddCartItemAsync(userId, cartId, cartItem); var result = await _shopCartService.GetShopCartByIdAsync(userId, cartId); var location = _linkGanarator.GetPathByAction("GetShopCartByIdAsync", "ShopCart", new { userId, cartId }); return(Created(location, result)); } else { return(BadRequest("this item already exists in user's shopping cart")); } }
public async Task <Cart_Items_Entity> EditCartItemAsync(int userId, int cartId, int itemId, Cart_Items_Entity cartItem) { var shopCartModel = await _context.Shopping_Carts .FirstOrDefaultAsync(m => m.User.UserId == userId && m.CartId == cartId && m.IsOrder == false); var cartItemModel = await _context.Cart_Items.Include(e => e.Shop_Carts) .FirstOrDefaultAsync(e => e.ItemId == itemId && e.CartId == shopCartModel.CartId); var newModel = Mapping.Mapper.Map(cartItem, cartItemModel); await _context.SaveChangesAsync(); var result = Mapping.Mapper.Map <Cart_Items_Entity>(newModel); //result.SupplierId = supplierId; return(result); }
public async Task <Cart_Items_Entity> AddCartItemAsync(int userId, int cartId, Cart_Items_Entity cartItem) { var shopCartModel = await _context.Shopping_Carts.FirstOrDefaultAsync(m => m.User.UserId == userId && m.CartId == cartId && m.IsOrder == false); var newCartItem = Mapping.Mapper.Map <Cart_items>(cartItem); await _context.Cart_Items.AddAsync(newCartItem); await _context.SaveChangesAsync(); newCartItem.Shop_Carts = shopCartModel; await _context.SaveChangesAsync(); var result = await _context.Cart_Items.Include(e => e.Shop_Carts) .FirstOrDefaultAsync(e => e.ItemId == newCartItem.ItemId); return(Mapping.Mapper.Map <Cart_Items_Entity>(result)); }
public async Task <ActionResult <Cart_Items_Entity> > EditCartItemAsync(int userId, int cartId, int itemId, Cart_Items_Entity cartItem) { //if (_userRolesService.CheckIfNewUserRoleExist(userRole)) //{ var model = await _shopCartService.EditCartItemAsync(userId, cartId, itemId, cartItem); //var result = _mapper.Map<CatalogsEntity>(catalogs); var location = _linkGanarator.GetPathByAction("GetShopCartByIdAsync", "ShopCart", new { userId, cartId }); return(model); }