public void AddToBasket(HttpContextBase httpContext, string productId) { Basket basket = GetBasket(httpContext, true); BasketItems item = basket.BasketItems.FirstOrDefault(i => i.ProductID == productId); if (item == null) { item = new BasketItems() { BasketID = basket.Id, ProductID = productId, Quantity = 1 }; basket.BasketItems.Add(item); } else { item.Quantity = item.Quantity + 1; } basketContext.Commit(); }
private async Task ReCalculateTotalAsync() { Total = 0; if (BasketItems == null) { return; } foreach (var orderItem in BasketItems) { Total += (orderItem.Quantity * orderItem.UnitPrice); } var authToken = _settingsService.AuthAccessToken; var userInfo = await _userService.GetUserInfoAsync(authToken); await _basketService.UpdateBasketAsync(new CustomerBasket { BuyerId = userInfo.UserId, Items = BasketItems.ToList() }, authToken); }
public async Task AddBasketItem(int productID, string username) { try { Basket basket = await _context.Basket .FirstOrDefaultAsync(x => x.UserName == username); Product product = await _context.Product .FirstOrDefaultAsync(x => x.ID == productID); if (BasketExists(productID, username)) { BasketItems item = await _context.BasketItems.FirstOrDefaultAsync(x => x.ID == productID); item.Quantity++; item.LineItemAmount += product.Price; } else { BasketItems basketItem = new BasketItems() { BasketID = basket.ID, ProductID = product.ID, Product = product, Quantity = 1, LineItemAmount = product.Price }; _context.BasketItems.Add(basketItem); } await _context.SaveChangesAsync(); } catch (Exception e) { Console.WriteLine(e); } }
// public async Task <IActionResult> Details(int id, int quantity) { var userID = _userManager.GetUserId(User); BasketItems item = await _basket.GetBasketItem(id, userID); if (item != null) { item.Quantity += quantity; await _basket.UpdateBasketItems(item); } else { item = new BasketItems(); item.ProductID = id; item.Quantity = quantity; item.UserID = userID; await _basket.AddItem(item); } var product = await _product.GetProduct(id); return(View(product)); }
public void DeleteItem() { Console.Clear(); Console.WriteLine("BASKET VIEW"); ShowBasket(); Console.WriteLine(); Console.WriteLine("Please provide the item number for deletion"); Console.WriteLine($"To delete all items, write {BasketItems.Count() + 1}"); int itemToDelete = GeneralStaticClass.ReadIntNumber(); while (BasketItems.Count() + 1 < itemToDelete || itemToDelete < 0) { Console.WriteLine("Invalid choice"); itemToDelete = GeneralStaticClass.ReadIntNumber(); } if (itemToDelete == BasketItems.Count() + 1) { BasketItems.Clear(); } else { BasketItems.RemoveAt(itemToDelete - 1); } }
public async void CreateBasketItemTest() { DbContextOptions <CerealDBContext> options = new DbContextOptionsBuilder <CerealDBContext>() .UseInMemoryDatabase("Baskets") .Options; using (CerealDBContext context = new CerealDBContext(options)) { //CREATE BasketItems basket = new BasketItems(); basket.ID = 1; basket.ProductID = 2; basket.Quantity = 2; basket.UserID = "userid"; basket.Purchased = false; context.BasketItems.Add(basket); await context.SaveChangesAsync(); Assert.Equal(1, basket.ID); } }
public void AddItems(Book book) { BasketItems.Add(book); }
public decimal GetTotalPrice() { return(BasketItems.Sum(o => o.GetTotalPrice())); }
public decimal TotalPrice() => BasketItems.Sum(x => x.Price * x.Quantity);
public void Add(BasketItem basketItem) { BasketItems.Add(basketItem); }
public void LoadBasket(int userid) { BasketItems.Clear(); string page; System.Threading.Thread.Sleep(1000); do { page = helper.GetPageGoods("http://" + helper.loginpage.tbxServer.Text + "/wpbuyings/"); System.Threading.Thread.Sleep(500); } while (page.Length < 10); page = page.Replace("<HEAD>", "\\").Replace("</HEAD>", "\\"). Replace("<BODY>", "\\").Replace("</BODY>", "\\"). Replace("<HTML>", "\\").Replace("</HTML>", "\\"). Replace("<BR>", "\\"); List <BuyingInfo> infos = new List <BuyingInfo>(); string[] lines = page.Split(new char[] { '\r', '\n', '\\' }, StringSplitOptions.RemoveEmptyEntries); foreach (var i in lines) { string[] line = i.Split(new char[] { '|' }, StringSplitOptions.None); BuyingInfo info; try { info = new BuyingInfo() { customerId = int.Parse(line[0]), productId = int.Parse(line[1]), amount = int.Parse(line[2]), }; if (info.customerId == userid) { infos.Add(info); } } catch (Exception) { } } foreach (var i in infos) { string productName = ""; foreach (var j in CompleteData) { if (i.productId.ToString() == j.LineFive) { productName = j.LineOneNoCat; break; } } string productPrice = ""; foreach (var j in CompleteData) { if (i.productId.ToString() == j.LineFive) { productPrice = j.LineTwo; break; } } string uri = ""; foreach (var j in CompleteData) { if (i.productId.ToString() == j.LineFive) { uri = j.ImgUrl; break; } } string lineInfo = i.amount + " шт, $" + productPrice; ItemViewModel item = new ItemViewModel() { LineOne = i.customerId.ToString(), LineTwo = i.productId.ToString(), LineThree = i.amount.ToString(), LineFour = productName, LineFive = productPrice, LineOneNoCat = "", LineCat = "", LineInfo = lineInfo, ImgUrl = uri, }; this.BasketItems.Add(item); } }
public async Task AddItem(BasketItems basketItems) { _context.BasketItems.Add(basketItems); await _context.SaveChangesAsync(); }
private void AddItemToBasketMethod() { BasketItems.Add(CurrentSelectedCatalogItem); DisableAddIfInBasket(); }
public void AddBasketItem(IBasketItem item) { BasketItems.Add((BasketItem)item); }
public decimal Total() { return(Math.Round(BasketItems.Sum(x => x.UnitPrice * x.Quantity), 2)); }
private void RemoveFromBasketCommandExecute(object obj) { BasketItems.Remove(SelectedBasketItem); }
public void ClearBasket() { BasketItems.Clear(); UpdateDiscount(); UpdateTotalPrice(); }
private async Task AddBasketItemAsync(BasketItem item) { BasketItems.Add(item); await ReCalculateTotalAsync(); }
private void AddBasketItem(BasketItem item) { BasketItems.Add(item); ReCalculateTotal(); }
public decimal BasketItemCount() { return(BasketItems.Count()); }
public void ClearBasket() { BasketItems.Clear(); }
private void DisableAddIfInBasket() { IsItemInBasket = !BasketItems.Contains(CurrentSelectedCatalogItem); }
public decimal BasketTotal() { decimal?total = BasketItems.Select(i => (int)i.Quantity * i.Product.Price).Sum(); return(total ?? decimal.Zero); }
public async Task UpdateBasketItems(BasketItems basketItems) { _context.BasketItems.Update(basketItems); await _context.SaveChangesAsync(); }
public BasketItem Find(string name) { return(BasketItems.Find(item => item.ProductName == name)); }