public void Apply(ItemAddedToBasket @event, long _)
        {
            var itemAlreadyInBasket = _items.ContainsKey(@event.ProductId);

            if (itemAlreadyInBasket)
            {
                AddQuantityToItemInBasket(@event);
            }
            else
            {
                AddNewItemToBasket(@event);
            }
        }
 private void AddQuantityToItemInBasket(ItemAddedToBasket @event)
 {
     _items[@event.ProductId] = _items[@event.ProductId].AddQuantity(@event.Quantity);
 }
        private void AddNewItemToBasket(ItemAddedToBasket @event)
        {
            var orderItem = new BasketItem(@event.ProductId, @event.Quantity, @event.ProductTitle, @event.Price);

            _items.Add(orderItem.ProductId, orderItem);
        }