using System.Runtime.CompilerServices; using AccountsDAL.CustomCode.AccountReports.DayBook; using AccountsDAL.DTO.AccountsReports; using GB5Shared.DTO.Framework.Criteria; using GB5Shared.DTO.Framework.Login; namespace AccountsBLL.AccountReports.DayBook { public class DayBookReportBLL : IDayBookReportBLL { private readonly IDayBookReportDAL _dal; public DayBookReportBLL(IDayBookReportDAL dal) { _dal = dal; } public async Task GetDayBooks(int firstNumber, int maxResult, CriteriaDTO criteriaDTO, LoginDTO loginDTO, CancellationToken ct = default) => await _dal.GetDayBooks(firstNumber, maxResult, criteriaDTO, loginDTO, ct).ConfigureAwait(false); public async IAsyncEnumerable GetDayBooksStream( int firstNumber, int maxResult, CriteriaDTO criteriaDTO, LoginDTO loginDTO, [EnumeratorCancellation] CancellationToken ct = default) { await foreach (var row in _dal.GetDayBooksStream(firstNumber, maxResult, criteriaDTO, loginDTO, ct).ConfigureAwait(false)) yield return row; } } }