Check commit.
This commit is contained in:
parent
48f0dcb771
commit
f13a3e428c
@ -84,7 +84,7 @@ namespace BankYouBankruptBusinessLogic.BusinessLogics
|
|||||||
//отчёт в формате PDF для клиента
|
//отчёт в формате PDF для клиента
|
||||||
public void SaveClientReportToPdfFile(ReportBindingModel model)
|
public void SaveClientReportToPdfFile(ReportBindingModel model)
|
||||||
{
|
{
|
||||||
_saveToPdf.CreateDoc(new PdfInfoClient
|
_saveToPdf.CreateDoc(new PdfInfo
|
||||||
{
|
{
|
||||||
FileName = model.FileName,
|
FileName = model.FileName,
|
||||||
Title = "Отчёт по операциям с картой",
|
Title = "Отчёт по операциям с картой",
|
||||||
|
@ -11,7 +11,7 @@ namespace BankYouBankruptBusinessLogic.OfficePackage
|
|||||||
public abstract class AbstractSaveToPdfCashier
|
public abstract class AbstractSaveToPdfCashier
|
||||||
{
|
{
|
||||||
//публичный метод создания документа. Описание методов ниже
|
//публичный метод создания документа. Описание методов ниже
|
||||||
public void CreateDoc(PdfInfoClient info)
|
public void CreateDoc(PdfInfo info)
|
||||||
{
|
{
|
||||||
CreatePdf(info);
|
CreatePdf(info);
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ namespace BankYouBankruptBusinessLogic.OfficePackage
|
|||||||
ParagraphAlignment = PdfParagraphAlignmentType.Center
|
ParagraphAlignment = PdfParagraphAlignmentType.Center
|
||||||
});
|
});
|
||||||
|
|
||||||
foreach (var report in info.ReportAccounts)
|
foreach (var report in info.Accounts)
|
||||||
{
|
{
|
||||||
CreateRow(new PdfRowParameters
|
CreateRow(new PdfRowParameters
|
||||||
{
|
{
|
||||||
@ -54,7 +54,7 @@ namespace BankYouBankruptBusinessLogic.OfficePackage
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Создание pdf-файла
|
/// Создание pdf-файла
|
||||||
protected abstract void CreatePdf(PdfInfoClient info);
|
protected abstract void CreatePdf(PdfInfo info);
|
||||||
|
|
||||||
/// Создание параграфа с текстом
|
/// Создание параграфа с текстом
|
||||||
protected abstract void CreateParagraph(PdfParagraph paragraph);
|
protected abstract void CreateParagraph(PdfParagraph paragraph);
|
||||||
@ -66,6 +66,6 @@ namespace BankYouBankruptBusinessLogic.OfficePackage
|
|||||||
protected abstract void CreateRow(PdfRowParameters rowParameters);
|
protected abstract void CreateRow(PdfRowParameters rowParameters);
|
||||||
|
|
||||||
/// Сохранение файла
|
/// Сохранение файла
|
||||||
protected abstract void SavePdf(PdfInfoClient info);
|
protected abstract void SavePdf(PdfInfo info);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@ namespace BankYouBankruptBusinessLogic.OfficePackage
|
|||||||
public abstract class AbstractSaveToPdfClient
|
public abstract class AbstractSaveToPdfClient
|
||||||
{
|
{
|
||||||
//публичный метод создания документа. Описание методов ниже
|
//публичный метод создания документа. Описание методов ниже
|
||||||
public void CreateDoc(PdfInfoClient info)
|
public void CreateDoc(PdfInfo info)
|
||||||
{
|
{
|
||||||
CreatePdf(info);
|
CreatePdf(info);
|
||||||
|
|
||||||
@ -66,7 +66,7 @@ namespace BankYouBankruptBusinessLogic.OfficePackage
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Создание pdf-файла
|
/// Создание pdf-файла
|
||||||
protected abstract void CreatePdf(PdfInfoClient info);
|
protected abstract void CreatePdf(PdfInfo info);
|
||||||
|
|
||||||
/// Создание параграфа с текстом
|
/// Создание параграфа с текстом
|
||||||
protected abstract void CreateParagraph(PdfParagraph paragraph);
|
protected abstract void CreateParagraph(PdfParagraph paragraph);
|
||||||
@ -78,6 +78,6 @@ namespace BankYouBankruptBusinessLogic.OfficePackage
|
|||||||
protected abstract void CreateRow(PdfRowParameters rowParameters);
|
protected abstract void CreateRow(PdfRowParameters rowParameters);
|
||||||
|
|
||||||
/// Сохранение файла
|
/// Сохранение файла
|
||||||
protected abstract void SavePdf(PdfInfoClient info);
|
protected abstract void SavePdf(PdfInfo info);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -8,7 +8,7 @@ using System.Threading.Tasks;
|
|||||||
namespace BankYouBankruptBusinessLogic.OfficePackage.HelperModels
|
namespace BankYouBankruptBusinessLogic.OfficePackage.HelperModels
|
||||||
{
|
{
|
||||||
//общая информация по pdf файлу
|
//общая информация по pdf файлу
|
||||||
public class PdfInfoClient
|
public class PdfInfo
|
||||||
{
|
{
|
||||||
public string FileName { get; set; } = string.Empty;
|
public string FileName { get; set; } = string.Empty;
|
||||||
|
|
||||||
@ -23,5 +23,8 @@ namespace BankYouBankruptBusinessLogic.OfficePackage.HelperModels
|
|||||||
|
|
||||||
//перечень заказов за указанный период для вывода/сохранения
|
//перечень заказов за указанный период для вывода/сохранения
|
||||||
public List<ReportClientViewModel> ReportDebiting { get; set; } = new();
|
public List<ReportClientViewModel> ReportDebiting { get; set; } = new();
|
||||||
}
|
|
||||||
|
//перечень счетов для отчёта кассира
|
||||||
|
public List<ReportCashierViewModel> Accounts { get; set; } = new();
|
||||||
|
}
|
||||||
}
|
}
|
@ -44,7 +44,7 @@ namespace BankYouBankruptBusinessLogic.OfficePackage.Implements
|
|||||||
style.Font.Bold = true;
|
style.Font.Bold = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void CreatePdf(PdfInfoClient info)
|
protected override void CreatePdf(PdfInfo info)
|
||||||
{
|
{
|
||||||
//создаём документ
|
//создаём документ
|
||||||
_document = new Document();
|
_document = new Document();
|
||||||
@ -117,7 +117,7 @@ namespace BankYouBankruptBusinessLogic.OfficePackage.Implements
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void SavePdf(PdfInfoClient info)
|
protected override void SavePdf(PdfInfo info)
|
||||||
{
|
{
|
||||||
var renderer = new PdfDocumentRenderer(true)
|
var renderer = new PdfDocumentRenderer(true)
|
||||||
{
|
{
|
||||||
|
@ -209,7 +209,6 @@ namespace BankYouBankruptClientApp.Controllers
|
|||||||
return Redirect("~/Home/Enter");
|
return Redirect("~/Home/Enter");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
ViewBag.Cards = APIClient.GetRequest<List<CardViewModel>>($"api/Card/GetAllCards").Select(x => new ClientSelectViewModel
|
ViewBag.Cards = APIClient.GetRequest<List<CardViewModel>>($"api/Card/GetAllCards").Select(x => new ClientSelectViewModel
|
||||||
{
|
{
|
||||||
Id = x.Id,
|
Id = x.Id,
|
||||||
@ -240,18 +239,32 @@ namespace BankYouBankruptClientApp.Controllers
|
|||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
#region Получение отчёта
|
#region Получение отчёта PDF
|
||||||
|
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
public IActionResult CreateReport()
|
public IActionResult CreateReport()
|
||||||
{
|
{
|
||||||
|
if (APIClient.Client == null)
|
||||||
|
{
|
||||||
|
return Redirect("~/Home/Enter");
|
||||||
|
}
|
||||||
|
|
||||||
return View();
|
return View();
|
||||||
}
|
}
|
||||||
|
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public void CreateReport(DateTime DateFrom, DateTime DateTo)
|
public void CreateReport(DateTime dateFrom, DateTime dateTo)
|
||||||
{
|
{
|
||||||
|
if (APIClient.Client == null)
|
||||||
|
{
|
||||||
|
throw new Exception("Не авторизованы");
|
||||||
|
}
|
||||||
|
|
||||||
|
APIClient.PostRequest("/api/Report/CreateClientReport", new ReportBindingModel()
|
||||||
|
{
|
||||||
|
DateFrom = dateFrom,
|
||||||
|
DateTo = dateTo
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
@ -283,6 +296,7 @@ namespace BankYouBankruptClientApp.Controllers
|
|||||||
}
|
}
|
||||||
|
|
||||||
List<int> cardList = cards.Where(x => x.IsChecked).Select(x => x.Id).ToList();
|
List<int> cardList = cards.Where(x => x.IsChecked).Select(x => x.Id).ToList();
|
||||||
|
|
||||||
List<ReportViewModel> creditings = APIClient.GetRequest<List<CreditingViewModel>>($"api/Client/getUsersCreditings?userId={APIClient.Client.Id}")
|
List<ReportViewModel> creditings = APIClient.GetRequest<List<CreditingViewModel>>($"api/Client/getUsersCreditings?userId={APIClient.Client.Id}")
|
||||||
.Where(x => cardList.Contains(x.CardId)).Select(x => new ReportViewModel() {
|
.Where(x => cardList.Contains(x.CardId)).Select(x => new ReportViewModel() {
|
||||||
Id = x.Id,
|
Id = x.Id,
|
||||||
@ -294,6 +308,7 @@ namespace BankYouBankruptClientApp.Controllers
|
|||||||
Sum = x.Sum,
|
Sum = x.Sum,
|
||||||
TypeOperation = TypeOperationEnum.Пополнение
|
TypeOperation = TypeOperationEnum.Пополнение
|
||||||
}).ToList();
|
}).ToList();
|
||||||
|
|
||||||
List<ReportViewModel> debitings = APIClient.GetRequest<List<DebitingViewModel>>($"api/Client/getUsersDebitings?userId={APIClient.Client.Id}")
|
List<ReportViewModel> debitings = APIClient.GetRequest<List<DebitingViewModel>>($"api/Client/getUsersDebitings?userId={APIClient.Client.Id}")
|
||||||
.Where(x => cardList.Contains(x.CardId)).Select(x => new ReportViewModel()
|
.Where(x => cardList.Contains(x.CardId)).Select(x => new ReportViewModel()
|
||||||
{
|
{
|
||||||
@ -306,13 +321,13 @@ namespace BankYouBankruptClientApp.Controllers
|
|||||||
Sum = x.Sum,
|
Sum = x.Sum,
|
||||||
TypeOperation = TypeOperationEnum.Снятие
|
TypeOperation = TypeOperationEnum.Снятие
|
||||||
}).ToList();
|
}).ToList();
|
||||||
|
|
||||||
List<ReportViewModel> result = creditings.Concat(debitings).OrderBy(x => x.DateOpen).ToList();
|
List<ReportViewModel> result = creditings.Concat(debitings).OrderBy(x => x.DateOpen).ToList();
|
||||||
|
|
||||||
return View(new ReportClientCardsViewModel()
|
return View(new ReportClientCardsViewModel()
|
||||||
{
|
{
|
||||||
Cards = cards,
|
Cards = cards,
|
||||||
Operations = result,
|
Operations = result,
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,27 @@
|
|||||||
@*
|
@{
|
||||||
For more information on enabling MVC for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
|
ViewData["Title"] = "Создание отчёта";
|
||||||
*@
|
|
||||||
@{
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
<div class="text-center">
|
||||||
|
<h2 class="display-4">Отчёт по картам за выбранный период</h2>
|
||||||
|
</div>
|
||||||
|
<form method="post">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-4">Дата начала периода:</div>
|
||||||
|
<div class="col-8">
|
||||||
|
<input id="dateFrom" name="dateFrom" class="form-control" type="date" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-4">Дата конца периода:</div>
|
||||||
|
<div class="col-8">
|
||||||
|
<input id="dateTo" name="dateTo" class="form-control" type="date" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-8"></div>
|
||||||
|
<div class="col-4">
|
||||||
|
<input type="submit" value="Сформировать" class="btn btn-primary" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
@ -38,7 +38,7 @@
|
|||||||
<a class="nav-link text-dark" asparea="" asp-controller="Home" asp-action="ReportWithCards">Отчет по картам</a>
|
<a class="nav-link text-dark" asparea="" asp-controller="Home" asp-action="ReportWithCards">Отчет по картам</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link text-dark" asparea="" asp-controller="Home" asp-action="CreateReport">Отчёт по картам</a>
|
<a class="nav-link text-dark" asparea="" asp-controller="Home" asp-action="CreateReport">Отчёт за период</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,7 @@ namespace BankYouBankruptDataModels.Enums
|
|||||||
public enum TypeOperationEnum
|
public enum TypeOperationEnum
|
||||||
{
|
{
|
||||||
Снятие = 1,
|
Снятие = 1,
|
||||||
|
|
||||||
Пополнение = 2
|
Пополнение = 2
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -198,7 +198,6 @@ namespace BankYouBankruptRestApi.Controllers
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
||||||
bool flag =_accountLogic.ChangeBalance(new AccountSearchModel
|
bool flag =_accountLogic.ChangeBalance(new AccountSearchModel
|
||||||
{
|
{
|
||||||
Id = CashWithdrawal.AccountId
|
Id = CashWithdrawal.AccountId
|
||||||
|
Loading…
Reference in New Issue
Block a user