using AnalyticsDAL.DTO.BIFieldMapping; using AnalyticsDAL.Query.BIFieldMapping; using GB5Shared.DTO.Framework.Login; using GB5Shared.QueryExecutor; namespace AnalyticsDAL.CustomCode.BIFieldMapping { public class BIFieldMappingDAL : IBIFieldMappingDAL { private readonly IQueryExecutor _queryExecutor; public BIFieldMappingDAL(IQueryExecutor queryExecutor) { _queryExecutor = queryExecutor; } public async Task> GetDimensionsByCatalogId(int biCatalogId, LoginDTO login, CancellationToken ct) { var rows = await _queryExecutor.QueryAsync( login, BIFieldMappingQB.GET_DIMENSIONS_BY_CATALOG_ID, new { BICatalogId = biCatalogId }, cancellationToken: ct).ConfigureAwait(false); return rows.ToList(); } public async Task> GetMeasuresByCatalogId(int biCatalogId, LoginDTO login, CancellationToken ct) { var rows = await _queryExecutor.QueryAsync( login, BIFieldMappingQB.GET_MEASURES_BY_CATALOG_ID, new { BICatalogId = biCatalogId }, cancellationToken: ct).ConfigureAwait(false); return rows.ToList(); } public async Task> GetComputedFieldsByCatalogId(int biCatalogId, LoginDTO login, CancellationToken ct) { var rows = await _queryExecutor.QueryAsync( login, BIFieldMappingQB.GET_COMPUTED_FIELDS_BY_CATALOG_ID, new { BICatalogId = biCatalogId }, cancellationToken: ct).ConfigureAwait(false); return rows.ToList(); } public async Task Insert(BIFieldMappingDTO dto, LoginDTO login, CancellationToken ct) { return await _queryExecutor.ExecuteAsync( login, BIFieldMappingQB.INSERT_FIELD_MAPPING, dto, cancellationToken: ct).ConfigureAwait(false); } } }