public void AddToCart(ICoffee orderedCofee) { var isAvailable = cartRepository.IsCartItemAvailable(shoppingCartId, orderedCofee.Id); ICart cartItem; if (!isAvailable) { cartItem = cartFactory.CreateCart(); cartItem.CoffeeId = orderedCofee.Id; cartItem.CoffeeDescription = orderedCofee.FullDescription; cartItem.CoffeeCost = orderedCofee.Cost(); cartItem.ShoppingCartId = this.shoppingCartId; cartItem.Count = 1; cartRepository.Add(cartItem); } else { // Pls refactor cartItem = cartRepository.GetCartItemByCoffeeId(shoppingCartId, orderedCofee.Id); cartItem.Count++; cartRepository.Update(cartItem); } }
public FinalOrderViewModel(ICoffee coffee) { if (coffee == null) { throw new ArgumentNullException(); } this.coffee = coffee; this.FullDescription = coffee.FullDescription; this.Price = coffee.Cost(); }
public double Cost() { return(_coffee.Cost() + _price); }