From acdd3e1554a79f2c2210ed4d57681df631a77158 Mon Sep 17 00:00:00 2001 From: dasha Date: Thu, 18 May 2023 16:32:53 +0400 Subject: [PATCH] =?UTF-8?q?=D0=B2=D1=8B=D0=B2=D0=BE=D0=B4=20=D0=BE=D1=82?= =?UTF-8?q?=D1=87=D0=B5=D1=82=D0=B0=20=D0=BD=D0=B0=20=D1=84=D0=BE=D1=80?= =?UTF-8?q?=D0=BC=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Storekeeper/ReportStorekeeperLogic.cs | 4 +- .../Controllers/StorekeeperController.cs | 13 +++ .../Views/Storekeeper/Report.cshtml | 78 +++++++++++++++--- .../BindingModels/ReportBindingModel.cs | 2 + .../IReportStorekeeperLogic.cs | 2 +- .../Controllers/ReportController.cs | 18 +++- HardwareShop/HardwareShopRestApi/qwe.xlsx | Bin 2992 -> 0 bytes 7 files changed, 103 insertions(+), 14 deletions(-) delete mode 100644 HardwareShop/HardwareShopRestApi/qwe.xlsx 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 6340319c1c3d6186052dab9da611a03d7ea21d83..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2992 zcma)83pi7a8y`x;H(_oG&0KQJM!CiGA0_e4t>l)qH8YECY{L-gLVOvLD4)xiT#}Zg zh^bskA>BktB9~kWHBrR>sOS59{QI8gf6jAm&pGe!ocDKr@9%w`9Yog1f*Ktvdg9&m_83ou|&0@=x!q#@i2T37m!ObZ6Ypx*Ey8@%Wp+Mc^*EUM}7)$G|_?QsXhD#*gZJ{Wdzx6Bu`laYs8 zQ_80136q@`(i1AfHewWTl!0dF7O$qgqfeT$wPSs7rC)jW~<1=QK*LKQyaa zsJS=~?@Mcvx%ZB>eKC6x{rYLHmhQ31>V&J<;;-<#M6S{A!(ODxpsC!dloy5fXqRT> zeX3emD>Z8HYFNkH9Qp_3~yNJW<0xAqkhmx^(4CiW(ZbGthbaY|0_swlI&%h>e66L*u9NAVp9%)H4TP{A1Zlz22G$;uiMA~#!qz3!yI;jS5*1DAX4gb7;Ge}b1f_2cbBmqPUM7M(bZg@TGIf|y^3RG^FGw2wFly; ztuNozeZWk9?72L;^7`nSHy^Wf!U=3hM(W-GcSWlCiAF=VRPvoxN=sCAMHtae(@$>H z`P^K^0J~y?*N{tN%}HGG+_T6GuQ|HMqvG2Yh{}7`8MD|+Ic}{MfJijzs=+8K1W`-$6=Lkf3Ry}LOmbUtg zzPr7)rFUU>y=|q>zDbgp=lC%#^v;QtL>FTBCbX0cWAFH}Z=uV!_g_(UjG#9UJ>EnN zo{YTJJG8)#KKMYRwoMh9@N!~naUMF;t>=85zy3=>h^9ooRLqD2tk3qlit<{Xhwi=x z)R{57D@yjn_YH0=r+4@cg(LSbdK}`9t_eeb>&@@eHNG$j;6S)S(D@45AR#PKe%)F{Z=mgsQz2XHJqG& zzo)=(t&4M(EzHg@NVSzzM0PHKVcSv%-Mk9+qcitR`$Aj4U7oJajQCKqP%ATM?CCNz zo55OGRR!SVzR8V%`Z+-91BS3v`V4s{jK zVg zrmvCoA4$4~`=Di0vB?XGDpm;;)A4W5s=8{`Sra@~#UA#S8=+LYqvf+n(~2fS8#Qdc zgKxhI9D;8&yb>Lbl0uU+{pwHpnFWmAoYls!mPtF=%oX=Uuk{^z}e;U;Ou2x`mP?RM-e6Eu(K56tQAh}Zr+Z6sT zs!nWj`y(E9CLqQXP3iSa!*xH`v60cTaQe_=X|Md5mMNg!ICbzZu0TJULm~f- zKpRlU(k20Lb&yUBWFQQd_7gR?Eq4Gk!9t022AM`h!3_1;I5_w(`{yWBcieCA;Pw;CT4IL!pah{B44Y&2>sb@TO!IdW&k1&0L@3~ zr}%zy`p=&GgWt+jv||HOY8UTNTaH;m);2Vz2H$W)APglb@5YQbhvuO+N+dPPA;EcT z%5l#+nm>OiGJR2dyN)uGLH2DQn8#s6JX3|$)hVXu>y9y;!{o-px<%NE{Se-%mld;( zv!YD!XVftEaOUI9p;}NVvFD_ks!uy9ZS#1-FxiWK)Avs1gQU(23pUs7A*rgDEuDPp zH{m`uglMcEkH1p%7<4&52)qGcNx2Tb+j-+ub&`P@4 zoWe|TKzn@vT~L57ZyOqw3H-Z*OTV1qvs9*KshB06Vu1nW^r0esDeFDAv;&323~=UW z?_F9PxR53Y)HjoH$7SY&)e6K*^jdPlCn5=RpTBdlPH*HQoBav?jrRNVV{nH^4L79K zrw7YCZcdM>3CX`!x+*Q=a%-=68wkry6ccv;cAl^GW~j{m)wn?Zd5Bw&HdF-7NljAC zFPq5gxQGo0{KqibRJD@az%BGAw0@!be#2O(kEB_scr$qwM}AImC5uMS>4 zAuUHv1E))!;_rEBb?EB0vK%@GSnjWy%xZ+y7QKuxwdU^$^?wX|8RggJwTz-7y28qq u1Akql%YoE&KVJVYCA%7DwR)FvvcbR9va`cl;LAXub--E=$i7Q#>FU2`o6ukY