using AnalyticsDAL.DTO.BICatalog; using AnalyticsDAL.Query.BICatalog; using GB5Shared.DTO.Framework.Login; using GB5Shared.QueryExecutor; namespace AnalyticsDAL.CustomCode.BICatalog { public class BICatalogDAL : IBICatalogDAL { private readonly IQueryExecutor _queryExecutor; public BICatalogDAL(IQueryExecutor queryExecutor) { _queryExecutor = queryExecutor; } public async Task GetCatalogEntryById(int biCatalogId, LoginDTO login, CancellationToken ct) { return await _queryExecutor.QuerySingleAsync( login, BICatalogQB.GET_CATALOG_ENTRY_BY_ID, new { BICatalogId = biCatalogId }, cancellationToken: ct).ConfigureAwait(false); } public async Task> GetCatalogList(LoginDTO login, CancellationToken ct) { var rows = await _queryExecutor.QueryAsync( login, BICatalogQB.GET_CATALOG_LIST, new { TenantId = login.ClientId }, cancellationToken: ct).ConfigureAwait(false); return rows.ToList(); } public async Task Insert(BICatalogDTO dto, LoginDTO login, CancellationToken ct) { return await _queryExecutor.ExecuteAsync( login, BICatalogQB.INSERT_CATALOG, dto, cancellationToken: ct).ConfigureAwait(false); } public async Task GetReportViewForCatalogCreation(int reportViewId, LoginDTO login, CancellationToken ct) { return await _queryExecutor.QuerySingleAsync( login, BICatalogQB.GET_REPORTVIEW_FOR_CATALOG_CREATION, new { ReportViewId = reportViewId }, cancellationToken: ct).ConfigureAwait(false); } } }