/// <summary> /// метод пересчитывает вычисляемое поле модели /// </summary> public void CalculateDiscountsExisting(FastObservableCollection <Dish> dishes) { dishes.ForEach(dish => { // устанавливаем логическое значение dish.IsDiscounted = _unitOfWork.DiscountActions.GetAll().ToList().Exists(da => da.DishId == dish.Id); }); }
public void CalculateRealPrices() { var discounts = _unitOfWork.DiscountActions.GetAll(); _dishes.ForEach(dish => { var currentDiscount = discounts.First(d => d.DishId == dish.Id); var defaultPrice = _unitOfWork.Dishes.GetById(dish.Id).Price; // DiscountSum в диапазоне 5...90 var coeff = 1 + currentDiscount?.DiscountSum / 100.0 ?? 1.0; // сумма с учетом скидки dish.OrderedPrice = (int)(defaultPrice * coeff); }); }
public void ResetValues() { _tables.ForEach(t => t.Availability = true); }