Промежутка.
This commit is contained in:
parent
f4bc6c16f1
commit
5f1dd6418a
@ -11,6 +11,8 @@ using System.Text;
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using BankYouBankruptContracts.ViewModels.Client.Reports;
|
using BankYouBankruptContracts.ViewModels.Client.Reports;
|
||||||
using BankYouBankruptContracts.ViewModels;
|
using BankYouBankruptContracts.ViewModels;
|
||||||
|
using BankYouBankruptDataModels.Enums;
|
||||||
|
using BankYouBankruptContracts.ViewModels.Client.Default;
|
||||||
|
|
||||||
namespace BankYouBankruptBusinessLogic.BusinessLogics
|
namespace BankYouBankruptBusinessLogic.BusinessLogics
|
||||||
{
|
{
|
||||||
@ -69,6 +71,7 @@ namespace BankYouBankruptBusinessLogic.BusinessLogics
|
|||||||
}).ToList();
|
}).ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//для excel отчёта по переводам между счетов
|
||||||
public List<MoneyTransferViewModel>? GetMoneyTransfer(ReportBindingModel model)
|
public List<MoneyTransferViewModel>? GetMoneyTransfer(ReportBindingModel model)
|
||||||
{
|
{
|
||||||
//список счетов по выбранным картам
|
//список счетов по выбранным картам
|
||||||
@ -91,20 +94,79 @@ namespace BankYouBankruptBusinessLogic.BusinessLogics
|
|||||||
AccountPayeeId = index
|
AccountPayeeId = index
|
||||||
}).OrderBy(x => x.AccountSenderId).ToList();
|
}).OrderBy(x => x.AccountSenderId).ToList();
|
||||||
|
|
||||||
totalList.Union(result);
|
totalList.AddRange(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
return totalList;
|
return totalList;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SaveToExcelFile(ReportBindingModel model)
|
//для excel отчёта по пополнениям карты
|
||||||
|
public List<CreditingViewModel> GetExcelCrediting(ReportBindingModel model)
|
||||||
{
|
{
|
||||||
_saveToExcel.CreateReport(new ExcelInfo
|
List<CreditingViewModel> totalList = new();
|
||||||
|
|
||||||
|
foreach (var index in model.CardList)
|
||||||
{
|
{
|
||||||
FileName = model.FileName,
|
var result = _creditingStorage.GetFilteredList(new CreditingSearchModel
|
||||||
Title = "Список переводов денег",
|
{
|
||||||
MoneyTransfer = GetMoneyTransfer(model)
|
CardId = index
|
||||||
});
|
});
|
||||||
|
|
||||||
|
totalList.AddRange(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
return totalList;
|
||||||
|
}
|
||||||
|
|
||||||
|
//для excel отчёта по снятиям с карты
|
||||||
|
public List<DebitingViewModel> GetExcelDebiting(ReportBindingModel model)
|
||||||
|
{
|
||||||
|
List<DebitingViewModel> totalList = new();
|
||||||
|
|
||||||
|
foreach (var index in model.CardList)
|
||||||
|
{
|
||||||
|
var result = _debitingStorage.GetFilteredList(new DebitingSearchModel
|
||||||
|
{
|
||||||
|
CardId = index
|
||||||
|
});
|
||||||
|
|
||||||
|
totalList.AddRange(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
return totalList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void SaveToExcelFile(ReportBindingModel model, ExcelOperationEnum operationEnum)
|
||||||
|
{
|
||||||
|
if(operationEnum == ExcelOperationEnum.Между_cчетами)
|
||||||
|
{
|
||||||
|
_saveToExcel.CreateReport(new ExcelInfo
|
||||||
|
{
|
||||||
|
FileName = model.FileName,
|
||||||
|
Title = "Отчёт по переводам",
|
||||||
|
MoneyTransfer = GetMoneyTransfer(model)
|
||||||
|
}, operationEnum);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (operationEnum == ExcelOperationEnum.Пополнение_карт)
|
||||||
|
{
|
||||||
|
_saveToExcel.CreateReport(new ExcelInfo
|
||||||
|
{
|
||||||
|
FileName = model.FileName,
|
||||||
|
Title = "Отчёт по пополнениям (переводам из налички на карту)",
|
||||||
|
Crediting = GetExcelCrediting(model)
|
||||||
|
}, operationEnum);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (operationEnum == ExcelOperationEnum.Cнятие_с_карты)
|
||||||
|
{
|
||||||
|
_saveToExcel.CreateReport(new ExcelInfo
|
||||||
|
{
|
||||||
|
FileName = model.FileName,
|
||||||
|
Title = "Отчёт по снятиям денежных средств",
|
||||||
|
Crediting = GetExcelCrediting(model)
|
||||||
|
}, operationEnum);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SaveToWordFile(ReportBindingModel model)
|
public void SaveToWordFile(ReportBindingModel model)
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
using BankYouBankruptBusinessLogic.OfficePackage.HelperEnums;
|
using BankYouBankruptBusinessLogic.OfficePackage.HelperEnums;
|
||||||
using BankYouBankruptBusinessLogic.OfficePackage.HelperModels;
|
using BankYouBankruptBusinessLogic.OfficePackage.HelperModels;
|
||||||
|
using BankYouBankruptDataModels.Enums;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
@ -11,28 +12,51 @@ namespace BankYouBankruptBusinessLogic.OfficePackage
|
|||||||
public abstract class AbstractSaveToExcel
|
public abstract class AbstractSaveToExcel
|
||||||
{
|
{
|
||||||
//Создание отчета. Описание методов ниже
|
//Создание отчета. Описание методов ниже
|
||||||
public void CreateReport(ExcelInfo info)
|
public void CreateReport(ExcelInfo info, ExcelOperationEnum operationEnum)
|
||||||
{
|
{
|
||||||
CreateExcel(info);
|
if(operationEnum == ExcelOperationEnum.Между_cчетами)
|
||||||
|
{
|
||||||
|
CreateMoneyTransferExcel(info);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (operationEnum == ExcelOperationEnum.Пополнение_карт)
|
||||||
|
{
|
||||||
|
CreateCreditingExcel(info);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (operationEnum == ExcelOperationEnum.Cнятие_с_карты)
|
||||||
|
{
|
||||||
|
CreateDebitingExcel(info);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (operationEnum == ExcelOperationEnum.Для_кассира)
|
||||||
|
{
|
||||||
|
CreateCashierExcel(info);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CreateMoneyTransferExcel(ExcelInfo info)
|
||||||
|
{
|
||||||
|
CreateExcel(info);
|
||||||
|
|
||||||
//вставляет заголовок
|
//вставляет заголовок
|
||||||
InsertCellInWorksheet(new ExcelCellParameters
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
{
|
{
|
||||||
ColumnName = "A",
|
ColumnName = "A",
|
||||||
RowIndex = 1,
|
RowIndex = 1,
|
||||||
Text = info.Title,
|
Text = info.Title,
|
||||||
StyleInfo = ExcelStyleInfoType.Title
|
StyleInfo = ExcelStyleInfoType.Title
|
||||||
});
|
});
|
||||||
|
|
||||||
//соединяет 3 ячейки для заголовка
|
//соединяет 3 ячейки для заголовка
|
||||||
MergeCells(new ExcelMergeParameters
|
MergeCells(new ExcelMergeParameters
|
||||||
{
|
{
|
||||||
CellFromName = "A1",
|
CellFromName = "A1",
|
||||||
CellToName = "C1"
|
CellToName = "C1"
|
||||||
});
|
});
|
||||||
|
|
||||||
//номер строчки в докуметне
|
//номер строчки в докуметне
|
||||||
uint rowIndex = 2;
|
uint rowIndex = 2;
|
||||||
|
|
||||||
foreach (var mt in info.MoneyTransfer)
|
foreach (var mt in info.MoneyTransfer)
|
||||||
{
|
{
|
||||||
@ -41,7 +65,7 @@ namespace BankYouBankruptBusinessLogic.OfficePackage
|
|||||||
{
|
{
|
||||||
ColumnName = "A",
|
ColumnName = "A",
|
||||||
RowIndex = rowIndex,
|
RowIndex = rowIndex,
|
||||||
Text = "Перевод №" + mt.Id,
|
Text = "Перевод №" + mt.Id,
|
||||||
StyleInfo = ExcelStyleInfoType.Text
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -108,11 +132,347 @@ namespace BankYouBankruptBusinessLogic.OfficePackage
|
|||||||
rowIndex++;
|
rowIndex++;
|
||||||
}
|
}
|
||||||
|
|
||||||
SaveExcel(info);
|
rowIndex++;
|
||||||
}
|
|
||||||
|
|
||||||
//Создание excel-файла
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
protected abstract void CreateExcel(ExcelInfo info);
|
{
|
||||||
|
ColumnName = "A",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Суммарный объём переводов: ",
|
||||||
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
|
});
|
||||||
|
|
||||||
|
MergeCells(new ExcelMergeParameters
|
||||||
|
{
|
||||||
|
CellFromName = "A" + rowIndex.ToString(),
|
||||||
|
CellToName = "B" + rowIndex.ToString()
|
||||||
|
});
|
||||||
|
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "C",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = info.MoneyTransfer.Sum(x => x.Sum).ToString(),
|
||||||
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
|
});
|
||||||
|
|
||||||
|
SaveExcel(info);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CreateCreditingExcel(ExcelInfo info)
|
||||||
|
{
|
||||||
|
CreateExcel(info);
|
||||||
|
|
||||||
|
//вставляет заголовок
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "A",
|
||||||
|
RowIndex = 1,
|
||||||
|
Text = info.Title,
|
||||||
|
StyleInfo = ExcelStyleInfoType.Title
|
||||||
|
});
|
||||||
|
|
||||||
|
//соединяет 3 ячейки для заголовка
|
||||||
|
MergeCells(new ExcelMergeParameters
|
||||||
|
{
|
||||||
|
CellFromName = "A1",
|
||||||
|
CellToName = "E2"
|
||||||
|
});
|
||||||
|
|
||||||
|
//номер строчки в докуметне
|
||||||
|
uint rowIndex = 3;
|
||||||
|
|
||||||
|
foreach (var cr in info.Crediting)
|
||||||
|
{
|
||||||
|
//вставляет номер перевода
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "A",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Пополнение №" + cr.Id,
|
||||||
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
|
});
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
|
||||||
|
//строчка с номером счёта отправителя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "B",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Номер карты: ",
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
//вставка номера отправителя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "C",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = cr.CardNumber,
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
|
||||||
|
//строчка с номером счёта получателя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "B",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Сумма пополнения: ",
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
//вставка номера отправителя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "C",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = cr.Sum.ToString(),
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
}
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "A",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Суммарный объём пополнений: ",
|
||||||
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
|
});
|
||||||
|
|
||||||
|
MergeCells(new ExcelMergeParameters
|
||||||
|
{
|
||||||
|
CellFromName = "A" + rowIndex.ToString(),
|
||||||
|
CellToName = "B" + rowIndex.ToString()
|
||||||
|
});
|
||||||
|
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "C",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = info.Crediting.Sum(x => x.Sum).ToString(),
|
||||||
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
|
});
|
||||||
|
|
||||||
|
SaveExcel(info);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CreateDebitingExcel(ExcelInfo info)
|
||||||
|
{
|
||||||
|
CreateExcel(info);
|
||||||
|
|
||||||
|
//вставляет заголовок
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "A",
|
||||||
|
RowIndex = 1,
|
||||||
|
Text = info.Title,
|
||||||
|
StyleInfo = ExcelStyleInfoType.Title
|
||||||
|
});
|
||||||
|
|
||||||
|
//соединяет 3 ячейки для заголовка
|
||||||
|
MergeCells(new ExcelMergeParameters
|
||||||
|
{
|
||||||
|
CellFromName = "A1",
|
||||||
|
CellToName = "E2"
|
||||||
|
});
|
||||||
|
|
||||||
|
//номер строчки в докуметне
|
||||||
|
uint rowIndex = 3;
|
||||||
|
|
||||||
|
foreach (var cr in info.Debiting)
|
||||||
|
{
|
||||||
|
//вставляет номер перевода
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "A",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Снятие №" + cr.Id,
|
||||||
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
|
});
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
|
||||||
|
//строчка с номером счёта отправителя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "B",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Номер карты: ",
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
//вставка номера отправителя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "C",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = cr.CardNumber,
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
|
||||||
|
//строчка с номером счёта получателя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "B",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Сумма снятия: ",
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
//вставка номера отправителя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "C",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = cr.Sum.ToString(),
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
}
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "A",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Суммарный объём снятий: ",
|
||||||
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
|
});
|
||||||
|
|
||||||
|
MergeCells(new ExcelMergeParameters
|
||||||
|
{
|
||||||
|
CellFromName = "A" + rowIndex.ToString(),
|
||||||
|
CellToName = "B" + rowIndex.ToString()
|
||||||
|
});
|
||||||
|
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "C",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = info.Crediting.Sum(x => x.Sum).ToString(),
|
||||||
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
|
});
|
||||||
|
|
||||||
|
SaveExcel(info);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CreateCashierExcel(ExcelInfo info)
|
||||||
|
{
|
||||||
|
CreateExcel(info);
|
||||||
|
|
||||||
|
//вставляет заголовок
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "A",
|
||||||
|
RowIndex = 1,
|
||||||
|
Text = info.Title,
|
||||||
|
StyleInfo = ExcelStyleInfoType.Title
|
||||||
|
});
|
||||||
|
|
||||||
|
//соединяет 3 ячейки для заголовка
|
||||||
|
MergeCells(new ExcelMergeParameters
|
||||||
|
{
|
||||||
|
CellFromName = "A1",
|
||||||
|
CellToName = "E2"
|
||||||
|
});
|
||||||
|
|
||||||
|
//номер строчки в докуметне
|
||||||
|
uint rowIndex = 3;
|
||||||
|
|
||||||
|
foreach (var cr in info.Debiting)
|
||||||
|
{
|
||||||
|
//вставляет номер перевода
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "A",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Снятие №" + cr.Id,
|
||||||
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
|
});
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
|
||||||
|
//строчка с номером счёта отправителя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "B",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Номер карты: ",
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
//вставка номера отправителя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "C",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = cr.CardNumber,
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
|
||||||
|
//строчка с номером счёта получателя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "B",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Сумма снятия: ",
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
//вставка номера отправителя
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "C",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = cr.Sum.ToString(),
|
||||||
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
|
});
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
}
|
||||||
|
|
||||||
|
rowIndex++;
|
||||||
|
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "A",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = "Суммарный объём снятий: ",
|
||||||
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
|
});
|
||||||
|
|
||||||
|
MergeCells(new ExcelMergeParameters
|
||||||
|
{
|
||||||
|
CellFromName = "A" + rowIndex.ToString(),
|
||||||
|
CellToName = "B" + rowIndex.ToString()
|
||||||
|
});
|
||||||
|
|
||||||
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
{
|
||||||
|
ColumnName = "C",
|
||||||
|
RowIndex = rowIndex,
|
||||||
|
Text = info.Crediting.Sum(x => x.Sum).ToString(),
|
||||||
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
|
});
|
||||||
|
|
||||||
|
SaveExcel(info);
|
||||||
|
}
|
||||||
|
|
||||||
|
//Создание excel-файла
|
||||||
|
protected abstract void CreateExcel(ExcelInfo info);
|
||||||
|
|
||||||
//Добавляем новую ячейку в лист
|
//Добавляем новую ячейку в лист
|
||||||
protected abstract void InsertCellInWorksheet(ExcelCellParameters excelParams);
|
protected abstract void InsertCellInWorksheet(ExcelCellParameters excelParams);
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
using BankYouBankruptContracts.ViewModels;
|
using BankYouBankruptContracts.ViewModels;
|
||||||
using BankYouBankruptContracts.ViewModels.Client.Default;
|
using BankYouBankruptContracts.ViewModels.Client.Default;
|
||||||
|
using BankYouBankruptDataModels.Enums;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
@ -17,10 +18,12 @@ namespace BankYouBankruptBusinessLogic.OfficePackage.HelperModels
|
|||||||
//заголовок
|
//заголовок
|
||||||
public string Title { get; set; } = string.Empty;
|
public string Title { get; set; } = string.Empty;
|
||||||
|
|
||||||
//список для отчёта клиента
|
//списки для отчёта клиента
|
||||||
public List<MoneyTransferViewModel> MoneyTransfer { get; set; } = new();
|
public List<MoneyTransferViewModel> MoneyTransfer { get; set; } = new();
|
||||||
|
|
||||||
//список для отчёта кассира
|
public List<CreditingViewModel> Crediting { get; set; } = new();
|
||||||
public List<DebitingViewModel> Debiting { get; set; } = new();
|
|
||||||
|
//список для отчёта кассира и клиента
|
||||||
|
public List<DebitingViewModel> Debiting { get; set; } = new();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -273,7 +273,7 @@ namespace BankYouBankruptClientApp.Controllers
|
|||||||
#region Excel отчёт
|
#region Excel отчёт
|
||||||
|
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public void CreateExcelReport(List<CheckboxViewModel> cards)
|
public IActionResult CreateExcelReport(List<CheckboxViewModel> cards)
|
||||||
{
|
{
|
||||||
if (APIClient.Client == null)
|
if (APIClient.Client == null)
|
||||||
{
|
{
|
||||||
@ -285,7 +285,23 @@ namespace BankYouBankruptClientApp.Controllers
|
|||||||
CardList = cards.Where(x => x.IsChecked).Select(x => x.Id).ToList()
|
CardList = cards.Where(x => x.IsChecked).Select(x => x.Id).ToList()
|
||||||
});
|
});
|
||||||
|
|
||||||
ViewBag.Cards = APIClient.GetRequest<List<CardViewModel>>($"api/Card/GetUsersCardsList?id={APIClient.Client.Id}");
|
return Redirect("~/Home/Enter");
|
||||||
|
}
|
||||||
|
|
||||||
|
[HttpPost]
|
||||||
|
public IActionResult CreateCreditingExcelReport(List<CheckboxViewModel> cards)
|
||||||
|
{
|
||||||
|
if (APIClient.Client == null)
|
||||||
|
{
|
||||||
|
throw new Exception("Не авторизованы");
|
||||||
|
}
|
||||||
|
|
||||||
|
APIClient.PostRequest("api/Report/CreateExcelCrediting", new ReportSupportBindingModel()
|
||||||
|
{
|
||||||
|
CardList = cards.Where(x => x.IsChecked).Select(x => x.Id).ToList()
|
||||||
|
});
|
||||||
|
|
||||||
|
return Redirect("~/Home/Enter");
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
@ -29,7 +29,10 @@
|
|||||||
<input class="btn btn-primary mt-3" type="submit" value="Submit" />
|
<input class="btn btn-primary mt-3" type="submit" value="Submit" />
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<button class="btn btn-lg btn-primary btn-block" type="submit" asp-controller="Home" asp-action="CreateExcelReport">Создать отчёт Excel</button>
|
<button class="btn btn-lg btn-primary btn-block" type="submit" asp-controller="Home" asp-action="CreateExcelReport">Создать отчёт по переводам</button>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<button class="btn btn-lg btn-primary btn-block" type="submit" asp-controller="Home" asp-action="CreateCreditingExcelReport">Создать отчёт по пополнениям</button>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
using BankYouBankruptContracts.SearchModels;
|
using BankYouBankruptContracts.SearchModels;
|
||||||
using BankYouBankruptContracts.ViewModels;
|
using BankYouBankruptContracts.ViewModels;
|
||||||
using BankYouBankruptContracts.ViewModels.Client.Reports;
|
using BankYouBankruptContracts.ViewModels.Client.Reports;
|
||||||
|
using BankYouBankruptDataModels.Enums;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
@ -20,7 +21,7 @@ namespace BankYouBankruptContracts.BusinessLogicsContracts
|
|||||||
void SaveToWordFile(ReportBindingModel model);
|
void SaveToWordFile(ReportBindingModel model);
|
||||||
|
|
||||||
//Сохранение отчёта по картам в файл-Excel
|
//Сохранение отчёта по картам в файл-Excel
|
||||||
void SaveToExcelFile(ReportBindingModel model);
|
void SaveToExcelFile(ReportBindingModel model, ExcelOperationEnum operationEnum);
|
||||||
|
|
||||||
//Сохранение отчёта по картам в файл-Pdf
|
//Сохранение отчёта по картам в файл-Pdf
|
||||||
ReportClientViewModelForHTML SaveClientReportToPdfFile(ReportBindingModel model);
|
ReportClientViewModelForHTML SaveClientReportToPdfFile(ReportBindingModel model);
|
||||||
|
@ -0,0 +1,19 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace BankYouBankruptDataModels.Enums
|
||||||
|
{
|
||||||
|
public enum ExcelOperationEnum
|
||||||
|
{
|
||||||
|
Между_cчетами = 0,
|
||||||
|
|
||||||
|
Пополнение_карт = 1,
|
||||||
|
|
||||||
|
Cнятие_с_карты = 2,
|
||||||
|
|
||||||
|
Для_кассира = 3
|
||||||
|
}
|
||||||
|
}
|
@ -39,7 +39,6 @@ namespace BankYouBankruptDatabaseImplement.Implements
|
|||||||
{
|
{
|
||||||
return result.Where(x => (x.AccountSenderId == model.AccountSenderId || x.AccountPayeeId == model.AccountPayeeId)
|
return result.Where(x => (x.AccountSenderId == model.AccountSenderId || x.AccountPayeeId == model.AccountPayeeId)
|
||||||
&& x.AccountSender != null)
|
&& x.AccountSender != null)
|
||||||
.ToList()
|
|
||||||
.Select(x => x.GetViewModel)
|
.Select(x => x.GetViewModel)
|
||||||
.ToList();
|
.ToList();
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,7 @@ using BankYouBankruptContracts.BindingModels;
|
|||||||
using BankYouBankruptContracts.BusinessLogicsContracts;
|
using BankYouBankruptContracts.BusinessLogicsContracts;
|
||||||
using BankYouBankruptContracts.SearchModels;
|
using BankYouBankruptContracts.SearchModels;
|
||||||
using BankYouBankruptContracts.ViewModels;
|
using BankYouBankruptContracts.ViewModels;
|
||||||
|
using BankYouBankruptDataModels.Enums;
|
||||||
using BankYouBankruptRestApi.Controllers;
|
using BankYouBankruptRestApi.Controllers;
|
||||||
using DocumentFormat.OpenXml.Office2016.Drawing.ChartDrawing;
|
using DocumentFormat.OpenXml.Office2016.Drawing.ChartDrawing;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
@ -79,26 +80,7 @@ namespace BankYouBankruptRestAPI.Controllers
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//передача данных из отчёта клиента
|
/*//передача данных из отчёта кассира
|
||||||
[HttpPost]
|
|
||||||
public void CreateExcelClient(ReportSupportBindingModel model)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
_reportClientLogic.SaveToExcelFile(new ReportBindingModel
|
|
||||||
{
|
|
||||||
FileName = "Отчёт_по_переводам",
|
|
||||||
CardList = model.CardList
|
|
||||||
});
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
_logger.LogError(ex, "Ошибка входа в систему");
|
|
||||||
throw;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//передача данных из отчёта кассира
|
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
public ReportCashierViewModelForHTML GetDataOfCashierReport()
|
public ReportCashierViewModelForHTML GetDataOfCashierReport()
|
||||||
{
|
{
|
||||||
@ -111,21 +93,19 @@ namespace BankYouBankruptRestAPI.Controllers
|
|||||||
_logger.LogError(ex, "Ошибка входа в систему");
|
_logger.LogError(ex, "Ошибка входа в систему");
|
||||||
throw;
|
throw;
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
|
|
||||||
/*
|
//отчёт клиента Excel по переводу денег
|
||||||
//метод генерации отчёта за период по картам клиента
|
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public void CreateClientReport(ReportSupportBindingModel model)
|
public void CreateExcelClient(ReportSupportBindingModel model)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
_reportClientViewModelForHTML = _reportClientLogic.SaveClientReportToPdfFile(new ReportBindingModel
|
_reportClientLogic.SaveToExcelFile(new ReportBindingModel
|
||||||
{
|
{
|
||||||
FileName = "Отчёт_по_картам.pdf",
|
FileName = "Отчёт по переводам.xls",
|
||||||
DateFrom = model.DateFrom,
|
CardList = model.CardList
|
||||||
DateTo = model.DateTo
|
}, ExcelOperationEnum.Между_cчетами);
|
||||||
});
|
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
@ -134,19 +114,17 @@ namespace BankYouBankruptRestAPI.Controllers
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//метод генерации отчёта по всем счетм клиентов
|
//отчёт клиента Excel по переводу денег
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public void CreateCashierReport(ReportSupportBindingModel model)
|
public void CreateExcelCrediting(ReportSupportBindingModel model)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
_reportCashierViewModelForHTML = _reportCashierLogic.SaveAccountsToPdfFile(new ReportBindingModel
|
_reportClientLogic.SaveToExcelFile(new ReportBindingModel
|
||||||
{
|
{
|
||||||
FileName = "Отчёт_по_счетам.pdf",
|
FileName = "Отчёт по пополнениям.xls",
|
||||||
ClientId = model.ClientId,
|
CardList = model.CardList
|
||||||
DateFrom = model.DateFrom,
|
}, ExcelOperationEnum.Пополнение_карт);
|
||||||
DateTo = model.DateTo
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
@ -154,6 +132,5 @@ namespace BankYouBankruptRestAPI.Controllers
|
|||||||
throw;
|
throw;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
BIN
BankYouBankrupt/BankYouBankruptRestAPI/Отчёт по переводам.xls
Normal file
BIN
BankYouBankrupt/BankYouBankruptRestAPI/Отчёт по переводам.xls
Normal file
Binary file not shown.
BIN
BankYouBankrupt/BankYouBankruptRestAPI/Отчёт по пополнениям.xls
Normal file
BIN
BankYouBankrupt/BankYouBankruptRestAPI/Отчёт по пополнениям.xls
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user