public void AddOrUpdate(DisplayProduct displayProduct) { if (!_displayProducts.ContainsKey(displayProduct.ProductNumber) && _displayProducts.Count >= _maxProductCount) { throw new InvalidOperationException("Products count is over maximum."); } _displayProducts.AddOrUpdate(displayProduct.ProductNumber, displayProduct, (key, value) => displayProduct); }
public void SetDisplayProduct(DisplayProduct displayProduct) { var minPostableMoney = _deposit.PostableMoney.Min(); if (displayProduct.DisplayPrice.Value % minPostableMoney.Value != 0 || displayProduct.DisplayPrice.Value < minPostableMoney.Value || displayProduct.DisplayPrice.Value < 10 || displayProduct.DisplayPrice.Value > 300) { throw new InvalidOperationException("Can't set the price."); } _displayProducts.AddOrUpdate(displayProduct); }