private void Refresh() { Income.Clear(); Outcome.Clear(); UnpaidIncome.Clear(); UnpaidOutcome.Clear(); var queryTransactions = ContextManager.Context.dTransactions.Where( p => p.Date >= _filterFrom && p.Date <= _filterTo && p.Description != "Внутренний перевод"); foreach (var transaction in queryTransactions) { if (transaction.Sum > 0) { Income.Add(transaction); } else { Outcome.Add(transaction); } } var querySales = ContextManager.Context.Sales.Where( p => p.Date >= _filterFrom && p.Date <= _filterTo && p.Paid == false); foreach (var sale in querySales) { double sum = sale.SaleDetailsCoffee.Sum(detailCoffee => detailCoffee.Price * detailCoffee.Quantity) + sale.SaleDetailsProducts.Sum(detailProduct => detailProduct.Price * detailProduct.Quantity); UnpaidIncome.Add(new unpaidOperation { Date = sale.Date, Sum = sum, Description = "Неоплаченная продажа " + sale.Recipient.Name + " от " + sale.Date + " числа" }); } var queryPurchases = ContextManager.Context.CoffeePurchases.Where( p => p.Date >= _filterFrom && p.Date <= _filterTo && p.Paid == false); foreach (var purchase in queryPurchases) { double sum = purchase.CoffeePurchaseDetails.Sum(detailCoffee => detailCoffee.Price * detailCoffee.Quantity); UnpaidOutcome.Add(new unpaidOperation { Date = purchase.Date, Sum = -sum, Description = "Неоплаченная закупка кофе от " + purchase.Date + " числа" }); } }