using System.Linq; using System.Threading; using System.Threading.Tasks; using GB5Shared.DTO.Framework.Login; using GB5Shared.QueryExecutor; namespace GB5Shared.Authorization { public class MenuRightsDAL : IMenuRightsDAL { private readonly IQueryExecutor _queryExecutor; public MenuRightsDAL(IQueryExecutor queryExecutor) => _queryExecutor = queryExecutor; public async Task GetAllowStringAsync(string menuCode, int roleId, LoginDTO login, CancellationToken ct) { var rows = await _queryExecutor.QueryAsync( login, MenuRightsQB.GET_ALLOW_FOR_ROLE_AND_MENUCODE, new { MenuCode = menuCode, RoleId = roleId }, cancellationToken: ct).ConfigureAwait(false); return rows.FirstOrDefault(); } } }