diff --git a/FamilyBudget/FamilyBudget/Reports/ChartReport.cs b/FamilyBudget/FamilyBudget/Reports/ChartReport.cs index 417d708..e7ba9ab 100644 --- a/FamilyBudget/FamilyBudget/Reports/ChartReport.cs +++ b/FamilyBudget/FamilyBudget/Reports/ChartReport.cs @@ -29,7 +29,7 @@ namespace FamilyBudget.Reports { new PdfBuilder(filePath) .AddHeader("Расходы") - .AddPieChart("Выбранные категории", GetData(expenseId, dateTime)) + .AddPieChart($"Траты за {dateTime:dd MMMM yyyy}", GetData(expenseId, dateTime)) .Build(); return true; } @@ -42,13 +42,12 @@ namespace FamilyBudget.Reports private List<(string Caption, double Value)> GetData(int expenseId, DateTime dateTime) { var data = _expenseBudget - .ReadExpenseBudgets() - .Where(x => x.Date.Date == dateTime.Date) + .ReadExpenseBudgets(dateFrom: dateTime.Date, dateTo: dateTime.Date.AddDays(1), BudgetExpenseId: expenseId) .GroupBy(x => x.FamilyMemberId, (key, group) => new { - Id = key, + FullName = group.FirstOrDefault()?.FullName ?? "Unknown", Count = group.Sum(x => x.FamilyMember_Expenses.FirstOrDefault(x => x.ExpenseBudgetCategoryID == expenseId)?.Sum ?? 0) }) - .Select(x => (x.Id.ToString(), (double)x.Count)) + .Select(x => (x.FullName.ToString(), (double)x.Count)) .ToList(); return data; diff --git a/FamilyBudget/FamilyBudget/Reports/PdfBuilder.cs b/FamilyBudget/FamilyBudget/Reports/PdfBuilder.cs index 3c047cc..0fa658b 100644 --- a/FamilyBudget/FamilyBudget/Reports/PdfBuilder.cs +++ b/FamilyBudget/FamilyBudget/Reports/PdfBuilder.cs @@ -35,11 +35,10 @@ namespace FamilyBudget.Reports return this; } - // Подрезаем длинные подписи и фильтруем слишком малые значения data = data - .Where(x => x.Value > 0.01) // Исключить слишком маленькие значения + .Where(x => x.Value > 0.01) .Select(x => ( - Caption: x.Caption.Length > 10 ? x.Caption.Substring(0, 10) + "..." : x.Caption, + Caption: x.Caption, Value: x.Value )).ToList();