CourseWork_BankYouBankrupt/BankYouBankrupt/BankYouBankruptBusinessLogic/BusinessLogics/ReportClientLogic.cs
2023-04-04 19:27:13 +04:00

95 lines
3.1 KiB
C#

using BankYouBankruptBusinessLogic.OfficePackage.HelperModels;
using BankYouBankruptBusinessLogic.OfficePackage;
using BankYouBankruptContracts.BindingModels;
using BankYouBankruptContracts.BusinessLogicsContracts;
using BankYouBankruptContracts.SearchModels;
using BankYouBankruptContracts.StoragesContracts;
using BankYouBankruptContracts.ViewModels;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BankYouBankruptBusinessLogic.BusinessLogics
{
public class ReportClientLogic : IReportClientLogic
{
private readonly ICreditingStorage _creditingStorage;
private readonly IDebitingStorage _debitingStorage;
private readonly AbstractSaveToExcelClient _saveToExcel;
private readonly AbstractSaveToWordClient _saveToWord;
private readonly AbstractSaveToPdfClient _saveToPdf;
public ReportClientLogic(ICreditingStorage creditingStorage, IDebitingStorage debitingStorage,
AbstractSaveToExcelClient saveToExcel, AbstractSaveToWordClient saveToWord, AbstractSaveToPdfClient saveToPdf)
{
_creditingStorage = creditingStorage;
_debitingStorage = debitingStorage;
_saveToExcel = saveToExcel;
_saveToWord = saveToWord;
_saveToPdf = saveToPdf;
}
public List<ReportClientViewModel>? GetCrediting(ReportBindingModel model)
{
return _creditingStorage.GetFilteredList(new CreditingSearchModel
{
dateFrom = model.DateFrom,
dateTo = model.DateTo,
}).Select(x => new ReportClientViewModel
{
CardId = x.CardId,
SumOperation = x.Sum,
DateComplite = x.Date
}).ToList();
}
public List<ReportClientViewModel>? GetDebiting(ReportBindingModel model)
{
return _debitingStorage.GetFilteredList(new DebitingSearchModel
{
dateFrom = model.DateFrom,
dateTo = model.DateTo,
}).Select(x => new ReportClientViewModel
{
CardId = x.CardId,
SumOperation = x.Sum,
DateComplite = x.Date
}).ToList();
}
public void SaveCreditingToExcelFile(ReportBindingModel model)
{
throw new NotImplementedException();
}
public void SaveCreditingToPdfFile(ReportBindingModel model)
{
throw new NotImplementedException();
}
public void SaveCreditingToWordFile(ReportBindingModel model)
{
throw new NotImplementedException();
}
public void SaveDebitingToExcelFile(ReportBindingModel model)
{
throw new NotImplementedException();
}
public void SaveDebitingToPdfFile(ReportBindingModel model)
{
throw new NotImplementedException();
}
public void SaveDebitingToWordFile(ReportBindingModel model)
{
throw new NotImplementedException();
}
}
}