diff --git a/HardwareShop/HardwareShopBusinessLogic/BusinessLogics/Storekeeper/ReportStorekeeperLogic.cs b/HardwareShop/HardwareShopBusinessLogic/BusinessLogics/Storekeeper/ReportStorekeeperLogic.cs index 15942a6..f514eae 100644 --- a/HardwareShop/HardwareShopBusinessLogic/BusinessLogics/Storekeeper/ReportStorekeeperLogic.cs +++ b/HardwareShop/HardwareShopBusinessLogic/BusinessLogics/Storekeeper/ReportStorekeeperLogic.cs @@ -50,12 +50,12 @@ namespace HardwareShopBusinessLogic.BusinessLogics.Storekeeper } /// Получение сведений по комплектующим за период, /// с указанием в каких товарах и сборках они использовались - public List GetComponents(UserBindingModel user, ReportBindingModel model) + public List GetComponents(ReportBindingModel model) { var result = new List(); var components = _componentStorage.GetFilteredList(new() { - UserId = user.Id, + UserId = model.UserId, DateFrom = model.DateFrom, DateTo = model.DateTo }); diff --git a/HardwareShop/HardwareShopClientApp/Controllers/StorekeeperController.cs b/HardwareShop/HardwareShopClientApp/Controllers/StorekeeperController.cs index c7f00d5..bdc6e80 100644 --- a/HardwareShop/HardwareShopClientApp/Controllers/StorekeeperController.cs +++ b/HardwareShop/HardwareShopClientApp/Controllers/StorekeeperController.cs @@ -418,5 +418,18 @@ namespace HardwareShopStorekeeperApp.Controllers } return View(); } + + [HttpPost] + public List Report([FromBody] ReportBindingModel reportModel) + { + if (APIClient.User == null) + { + throw new Exception("Вы как сюда попали? Сюда вход только авторизованным"); + } + reportModel.UserId = APIClient.User.Id; + List? list = APIClient.PostRequestWithResult + >("api/report/componentsreport", reportModel); + return list!; + } } } diff --git a/HardwareShop/HardwareShopClientApp/Views/Storekeeper/Report.cshtml b/HardwareShop/HardwareShopClientApp/Views/Storekeeper/Report.cshtml index 1a7fd27..44c2ea5 100644 --- a/HardwareShop/HardwareShopClientApp/Views/Storekeeper/Report.cshtml +++ b/HardwareShop/HardwareShopClientApp/Views/Storekeeper/Report.cshtml @@ -4,13 +4,71 @@ Layout = "~/Views/Shared/_LayoutStorekeeper.cshtml"; } -
-
- - - - -
- - -
\ No newline at end of file +
+
+ + + + +
+ + +
+ + + + + + + + + + + +
КомплектующееТовар/СборкаКоличество
+ +@section Scripts +{ + +} \ No newline at end of file diff --git a/HardwareShop/HardwareShopContracts/BindingModels/ReportBindingModel.cs b/HardwareShop/HardwareShopContracts/BindingModels/ReportBindingModel.cs index 2b9f8d4..08b8b88 100644 --- a/HardwareShop/HardwareShopContracts/BindingModels/ReportBindingModel.cs +++ b/HardwareShop/HardwareShopContracts/BindingModels/ReportBindingModel.cs @@ -4,6 +4,8 @@ { public string FileName { get; set; } = string.Empty; + public int UserId { get; set; } + public DateTime? DateFrom { get; set; } public DateTime? DateTo { get; set; } diff --git a/HardwareShop/HardwareShopContracts/BusinessLogicsContracts/IReportStorekeeperLogic.cs b/HardwareShop/HardwareShopContracts/BusinessLogicsContracts/IReportStorekeeperLogic.cs index 7a35f24..f426eb7 100644 --- a/HardwareShop/HardwareShopContracts/BusinessLogicsContracts/IReportStorekeeperLogic.cs +++ b/HardwareShop/HardwareShopContracts/BusinessLogicsContracts/IReportStorekeeperLogic.cs @@ -18,7 +18,7 @@ namespace HardwareShopContracts.BusinessLogicsContracts /// /// /// - List GetComponents(UserBindingModel user, ReportBindingModel model); + List GetComponents(ReportBindingModel model); /// /// Сохранение списка сборок по выбранным товарам в файл-Word diff --git a/HardwareShop/HardwareShopRestApi/Controllers/ReportController.cs b/HardwareShop/HardwareShopRestApi/Controllers/ReportController.cs index a356090..43b6be8 100644 --- a/HardwareShop/HardwareShopRestApi/Controllers/ReportController.cs +++ b/HardwareShop/HardwareShopRestApi/Controllers/ReportController.cs @@ -1,5 +1,6 @@ using HardwareShopContracts.BindingModels; using HardwareShopContracts.BusinessLogicsContracts; +using HardwareShopContracts.ViewModels; using Microsoft.AspNetCore.Mvc; namespace HardwareShopRestApi.Controllers @@ -40,7 +41,22 @@ namespace HardwareShopRestApi.Controllers } catch (Exception ex) { - _logger.LogError(ex, "Ошибка сохранения списка сборок по выбранным товарам"); + _logger.LogError(ex, "Ошибка получения списка сборок по выбранным товарам"); + throw; + } + } + + [HttpPost] + public List? ComponentsReport(ReportBindingModel model) + { + try + { + var list = _reportStorekeeperLogic.GetComponents(model); + return list; + } + catch (Exception ex) + { + _logger.LogError(ex, "Ошибка получения сведений по полученным пользователем комплектующим за период"); throw; } } diff --git a/HardwareShop/HardwareShopRestApi/qwe.xlsx b/HardwareShop/HardwareShopRestApi/qwe.xlsx deleted file mode 100644 index 6340319..0000000 Binary files a/HardwareShop/HardwareShopRestApi/qwe.xlsx and /dev/null differ