Merge branch 'main' of http://student.git.athene.tech/shadowik/CourseWork_BankYouBankrupt
This commit is contained in:
commit
5f765a77cf
@ -1,36 +0,0 @@
|
|||||||
using BankYouBankruptContracts.BusinessLogicsContracts;
|
|
||||||
using DocumentFormat.OpenXml.ExtendedProperties;
|
|
||||||
using Org.BouncyCastle.Asn1.Ocsp;
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Reflection.Metadata;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
|
|
||||||
namespace BankYouBankruptBusinessLogic.BusinessLogics
|
|
||||||
{
|
|
||||||
public class ReportLoad : IReportLoad
|
|
||||||
{
|
|
||||||
public byte[] LoadFile(bool whoRequested)
|
|
||||||
{
|
|
||||||
string pdfFilePath;
|
|
||||||
|
|
||||||
//если пришло true, то загружаем отчёт клиента
|
|
||||||
if (whoRequested)
|
|
||||||
{
|
|
||||||
pdfFilePath = "C:\\Users\\Programmist73\\Desktop\\Практика\\2-й курс\\4-й семестр\\CourseWork_BankYouBankrupt\\BankYouBankrupt\\BankYouBankruptRestAPI\\Отчёт_по_картам.pdf";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
pdfFilePath = "C:\\Users\\Programmist73\\Desktop\\Практика\\2-й курс\\4-й семестр\\CourseWork_BankYouBankrupt\\BankYouBankrupt\\BankYouBankruptRestAPI\\Отчёт_по_счетам.pdf";
|
|
||||||
}
|
|
||||||
|
|
||||||
byte[] bytes = System.IO.File.ReadAllBytes(pdfFilePath);
|
|
||||||
|
|
||||||
System.IO.File.WriteAllBytes(pdfFilePath, bytes);
|
|
||||||
|
|
||||||
return bytes;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -254,6 +254,8 @@ namespace BankYouBankruptClientApp.Controllers
|
|||||||
return Redirect("~/Home/Enter");
|
return Redirect("~/Home/Enter");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ViewBag.DataOfClientReport = null;
|
||||||
|
|
||||||
return View();
|
return View();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -271,6 +273,8 @@ namespace BankYouBankruptClientApp.Controllers
|
|||||||
DateTo = dateTo
|
DateTo = dateTo
|
||||||
});
|
});
|
||||||
|
|
||||||
|
ViewBag.DataOfClientReport = APIClient.GetRequest<ReportClientViewModelForHTML>($"api/Report/GetDataOfClientReport");
|
||||||
|
|
||||||
return View();
|
return View();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,4 +1,8 @@
|
|||||||
@{
|
@using BankYouBankruptContracts.ViewModels;
|
||||||
|
|
||||||
|
@model ReportClientViewModelForHTML
|
||||||
|
|
||||||
|
@{
|
||||||
ViewData["Title"] = "Создание отчёта";
|
ViewData["Title"] = "Создание отчёта";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -24,6 +28,87 @@
|
|||||||
<input id="createReport" type="submit" value="Сформировать отчёт" class="btn btn-primary" />
|
<input id="createReport" type="submit" value="Сформировать отчёт" class="btn btn-primary" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@if (Model != null)
|
||||||
|
{
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
<p>Отчёт по пополнениям</p>
|
||||||
|
<table class="table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>
|
||||||
|
Номер операции
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
Номер карты
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
Сумма
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
Дата операции
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
@foreach (var item in Model.ReportCrediting)
|
||||||
|
{
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
@Html.DisplayFor(modelItem => item.OperationId)
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
@Html.DisplayFor(modelItem => item.CardNumber)
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
@Html.DisplayFor(modelItem => item.SumOperation)
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
@Html.DisplayFor(modelItem => item.DateComplite)
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<p>Отчёт по снятиям</p>
|
||||||
|
<table class="table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>
|
||||||
|
Номер операции
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
Номер карты
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
Сумма
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
Дата операции
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
@foreach (var item in Model.ReportDebiting)
|
||||||
|
{
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
@Html.DisplayFor(modelItem => item.OperationId)
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
@Html.DisplayFor(modelItem => item.CardNumber)
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
@Html.DisplayFor(modelItem => item.SumOperation)
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
@Html.DisplayFor(modelItem => item.DateComplite)
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
}
|
||||||
</form>
|
</form>
|
||||||
|
@ -1,13 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
|
|
||||||
namespace BankYouBankruptContracts.BusinessLogicsContracts
|
|
||||||
{
|
|
||||||
public interface IReportLoad
|
|
||||||
{
|
|
||||||
byte[] LoadFile(bool whoRequested);
|
|
||||||
}
|
|
||||||
}
|
|
@ -18,29 +18,29 @@ namespace BankYouBankruptRestAPI.Controllers
|
|||||||
{
|
{
|
||||||
private readonly ILogger _logger;
|
private readonly ILogger _logger;
|
||||||
|
|
||||||
//private readonly IReportCashierLogic _reportCashierLogic;
|
|
||||||
|
|
||||||
private readonly IReportClientLogic _reportClientLogic;
|
private readonly IReportClientLogic _reportClientLogic;
|
||||||
|
|
||||||
private readonly IReportCashierLogic _reportCashierLogic;
|
private readonly IReportCashierLogic _reportCashierLogic;
|
||||||
|
|
||||||
private readonly IReportLoad _reportLoad;
|
//хранят данные для отображения отчёта на вебе
|
||||||
|
private ReportClientViewModelForHTML _reportClientViewModelForHTML;
|
||||||
|
|
||||||
public ReportController(ILogger<ReportController> logger, IReportClientLogic reportClientLogic, IReportCashierLogic reportCashierLogic, IReportLoad reportLoad)
|
private ReportCashierViewModelForHTML _reportCashierViewModelForHTML;
|
||||||
|
|
||||||
|
public ReportController(ILogger<ReportController> logger, IReportClientLogic reportClientLogic, IReportCashierLogic reportCashierLogic)
|
||||||
{
|
{
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
_reportClientLogic = reportClientLogic;
|
_reportClientLogic = reportClientLogic;
|
||||||
_reportCashierLogic = reportCashierLogic;
|
_reportCashierLogic = reportCashierLogic;
|
||||||
_reportLoad = reportLoad;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//метод генерации отчёта за период по картам клиента
|
//метод генерации отчёта за период по картам клиента
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public ReportClientViewModelForHTML CreateClientReport(ReportSupportBindingModel model)
|
public void CreateClientReport(ReportSupportBindingModel model)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
return _reportClientLogic.SaveClientReportToPdfFile(new ReportBindingModel
|
_reportClientViewModelForHTML = _reportClientLogic.SaveClientReportToPdfFile(new ReportBindingModel
|
||||||
{
|
{
|
||||||
FileName = "Отчёт_по_картам.pdf",
|
FileName = "Отчёт_по_картам.pdf",
|
||||||
DateFrom = model.DateFrom,
|
DateFrom = model.DateFrom,
|
||||||
@ -56,11 +56,11 @@ namespace BankYouBankruptRestAPI.Controllers
|
|||||||
|
|
||||||
//метод генерации отчёта по всем счетм клиентов
|
//метод генерации отчёта по всем счетм клиентов
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public ReportCashierViewModelForHTML CreateCashierReport(ReportSupportBindingModel model)
|
public void CreateCashierReport(ReportSupportBindingModel model)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
return _reportCashierLogic.SaveAccountsToPdfFile(new ReportBindingModel
|
_reportCashierViewModelForHTML = _reportCashierLogic.SaveAccountsToPdfFile(new ReportBindingModel
|
||||||
{
|
{
|
||||||
FileName = "Отчёт_по_счетам.pdf",
|
FileName = "Отчёт_по_счетам.pdf",
|
||||||
ClientId = model.ClientId,
|
ClientId = model.ClientId,
|
||||||
@ -74,5 +74,78 @@ namespace BankYouBankruptRestAPI.Controllers
|
|||||||
throw;
|
throw;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//передача данных из отчёта клиента
|
||||||
|
[HttpGet]
|
||||||
|
public ReportClientViewModelForHTML GetDataOfClientReport()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
return _reportClientViewModelForHTML;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
_logger.LogError(ex, "Ошибка входа в систему");
|
||||||
|
throw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//передача данных из отчёта кассира
|
||||||
|
[HttpGet]
|
||||||
|
public ReportCashierViewModelForHTML GetDataOfCashierReport()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
return _reportCashierViewModelForHTML;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
_logger.LogError(ex, "Ошибка входа в систему");
|
||||||
|
throw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
//метод генерации отчёта за период по картам клиента
|
||||||
|
[HttpPost]
|
||||||
|
public void CreateClientReport(ReportSupportBindingModel model)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_reportClientViewModelForHTML = _reportClientLogic.SaveClientReportToPdfFile(new ReportBindingModel
|
||||||
|
{
|
||||||
|
FileName = "Отчёт_по_картам.pdf",
|
||||||
|
DateFrom = model.DateFrom,
|
||||||
|
DateTo = model.DateTo
|
||||||
|
});
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
_logger.LogError(ex, "Ошибка входа в систему");
|
||||||
|
throw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//метод генерации отчёта по всем счетм клиентов
|
||||||
|
[HttpPost]
|
||||||
|
public void CreateCashierReport(ReportSupportBindingModel model)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_reportCashierViewModelForHTML = _reportCashierLogic.SaveAccountsToPdfFile(new ReportBindingModel
|
||||||
|
{
|
||||||
|
FileName = "Отчёт_по_счетам.pdf",
|
||||||
|
ClientId = model.ClientId,
|
||||||
|
DateFrom = model.DateFrom,
|
||||||
|
DateTo = model.DateTo
|
||||||
|
});
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
_logger.LogError(ex, "Ошибка входа в систему");
|
||||||
|
throw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -34,14 +34,11 @@ builder.Services.AddTransient<IDebitingLogic, DebitingLogic>();
|
|||||||
builder.Services.AddTransient<ICashWithdrawalLogic, CashWithdrawalLogic>();
|
builder.Services.AddTransient<ICashWithdrawalLogic, CashWithdrawalLogic>();
|
||||||
|
|
||||||
builder.Services.AddTransient<IReportClientLogic, ReportClientLogic>();
|
builder.Services.AddTransient<IReportClientLogic, ReportClientLogic>();
|
||||||
builder.Services.AddTransient<IReportCashierLogic, ReportCashierLogic>();
|
builder.Services.AddSingleton<IReportCashierLogic, ReportCashierLogic>();
|
||||||
|
|
||||||
//для отправки файла в приложение
|
|
||||||
builder.Services.AddTransient<IReportLoad, ReportLoad>();
|
|
||||||
|
|
||||||
builder.Services.AddTransient<IMessageInfoLogic, MessageInfoLogic>();
|
builder.Services.AddTransient<IMessageInfoLogic, MessageInfoLogic>();
|
||||||
|
|
||||||
builder.Services.AddSingleton<AbstractMailWorker, MailKitWorker>();
|
builder.Services.AddTransient<AbstractMailWorker, MailKitWorker>();
|
||||||
|
|
||||||
//теперь общий
|
//теперь общий
|
||||||
builder.Services.AddTransient<AbstractSaveToPdfClient, SaveToPdf>();
|
builder.Services.AddTransient<AbstractSaveToPdfClient, SaveToPdf>();
|
||||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user