From af0ea16cb20739cf7b81598352b8093c14595fff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=95=D0=B3=D0=BE=D1=80=20=D0=9F=D1=8B=D0=B6=D0=BE=D0=B2?= Date: Sun, 15 Dec 2024 02:28:11 +0400 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=BE=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=BE=D1=82=D1=87=D0=B5=D1=82=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ITServiceManager/Reports/ChartReport.cs | 28 +++---------------- .../ITServiceManager/Reports/DocReport.cs | 6 ++-- .../ITServiceManager/Reports/TableReport.cs | 5 +--- 3 files changed, 8 insertions(+), 31 deletions(-) diff --git a/ITServiceManager/ITServiceManager/Reports/ChartReport.cs b/ITServiceManager/ITServiceManager/Reports/ChartReport.cs index 132b6b4..aae5599 100644 --- a/ITServiceManager/ITServiceManager/Reports/ChartReport.cs +++ b/ITServiceManager/ITServiceManager/Reports/ChartReport.cs @@ -1,6 +1,4 @@ -using ITServiceManager.Entities; -using ITServiceManager.Repositories; -using ITServiceManager.Repositories.Implementations; +using ITServiceManager.Repositories; using Microsoft.Extensions.Logging; namespace ITServiceManager.Reports; @@ -35,43 +33,25 @@ public class ChartReport } } - //private List<(string Caption, double Value)> GetData(DateTime dateTime) - //{ - // return _orderRepository - // .ReadOrders() // Получаем все заказы - // .Where(order => order.Date.Date == dateTime.Date) // Фильтруем по дате заказа - // .SelectMany(order => order.OrderService) // Разворачиваем список услуг в заказах - // .GroupBy(service => service.ServiceId, (key, group) => new { ServiceId = key, Count = group.Sum(service => service.Quantity) }) // Группируем по ID услуги и суммируем количество - // .Select(group => - // { - // var service = _serviceRepository.ReadServiceById(group.ServiceId); // Получаем информацию о услуге по ID - // return (service.ServiceType.ToString(), (double)group.Count); // Возвращаем название услуги и ее количество - // }) - // .ToList(); - //} - private List<(string Caption, double Value)> GetData(DateTime dateTime) { - // Получаем заказы за указанную дату var orders = _orderRepository .ReadOrders() - .Where(order => order.Date.Date == dateTime.Date) // Фильтруем заказы по дате + .Where(order => order.Date.Date == dateTime.Date) .ToList(); - // Группируем заказы по CompanyId и вычисляем общую сумму затрат var groupedOrders = orders .GroupBy(order => order.CompanyId) .Select(group => new { CompanyId = group.Key, - TotalSpent = group.Sum(order => (double)order.Price) // Суммируем стоимость заказов + TotalSpent = group.Sum(order => (double)order.Price) }); - // Получаем названия компаний и формируем данные для диаграммы return groupedOrders .Select(group => { - var company = _companyRepository.ReadCompanyById(group.CompanyId); // Получаем информацию о компании + var company = _companyRepository.ReadCompanyById(group.CompanyId); return (Caption: company.Name, Value: group.TotalSpent); }) .ToList(); diff --git a/ITServiceManager/ITServiceManager/Reports/DocReport.cs b/ITServiceManager/ITServiceManager/Reports/DocReport.cs index 144fc9a..137e32e 100644 --- a/ITServiceManager/ITServiceManager/Reports/DocReport.cs +++ b/ITServiceManager/ITServiceManager/Reports/DocReport.cs @@ -30,7 +30,7 @@ public class DocReport } if (includeServices) { - builder.AddParagraph("Услуги").AddTable([2400, 2400], GetServices()); + builder.AddParagraph("Услуги").AddTable([2400, 2400, 2400], GetServices()); } if (includeEmployees) { @@ -69,10 +69,10 @@ public class DocReport private List GetServices() { return [ - ["Тип услуги", "Описание"], + ["Название услуги", "Тип услуги", "Описание"], .. _serviceRepository .ReadServices() - .Select(x => new string[] { x.ServiceType.ToString(), x.Description }), + .Select(x => new string[] {x.ServiceName, x.ServiceType.ToString(), x.Description }), ]; } } diff --git a/ITServiceManager/ITServiceManager/Reports/TableReport.cs b/ITServiceManager/ITServiceManager/Reports/TableReport.cs index 3344364..7377706 100644 --- a/ITServiceManager/ITServiceManager/Reports/TableReport.cs +++ b/ITServiceManager/ITServiceManager/Reports/TableReport.cs @@ -1,7 +1,4 @@ - -using ITServiceManager.Entities; -using ITServiceManager.Repositories; -using ITServiceManager.Repositories.Implementations; +using ITServiceManager.Repositories; using Microsoft.Extensions.Logging; namespace ITServiceManager.Reports;