This commit is contained in:
I1nur 2024-12-24 06:22:29 +04:00
parent 15edafea60
commit 7b71e9de81
2 changed files with 6 additions and 8 deletions

View File

@ -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;

View File

@ -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();