private UserDto PopulateRolesForUser(UserDto model, int applicationId, int userId) { var searchUserApplicationRoles = new UserApplicationRoleSearchModel { PageSize = int.MaxValue, SortColumn = "Role/Role/RoleName", SortDirection = "Asc", ApplicationId = applicationId, UserId = userId }; searchUserApplicationRoles = _employeeApiClient.GetUserApplicationRoles(searchUserApplicationRoles).Result; var searchRoles = new RoleSearchModel { PageSize = int.MaxValue, SortColumn = "RoleName", SortDirection = "Asc", ApplicationId = applicationId }; searchRoles = _employeeApiClient.GetRoles(searchRoles).Result; model.RoleSelectList = SelectedListHelper.GetApplicationRolesSelectList(searchRoles.RoleSearchResult, searchUserApplicationRoles.UserApplicationRoleSearchResult.Select(x => x.Role.Id).ToList()); return(model); }
public async Task<UserApplicationRoleSearchModel> GetUserApplicationRoles(UserApplicationRoleSearchModel model) { var url = ODataApiUri + "/UserApplicationRole?" + GetFilterString(model); var result = await GetOdataResultFromApi(url); var searchResultCount = 0; if (result.Count != null) int.TryParse(result.Count.ToString(), out searchResultCount); model.TotalRows = searchResultCount; model.UserApplicationRoleSearchResult.Clear(); try { model.UserApplicationRoleSearchResult.AddRange(result.Items.Select(item => JsonConvert.DeserializeObject<UserApplicationRoleDto>(item.ToString()))); } catch (Exception e) { Console.WriteLine(e); throw; } return model; }
private string GetFilterString(UserApplicationRoleSearchModel searchModel) { var filterString = string.Empty; if (searchModel != null) { if (searchModel.ApplicationId > 0 && searchModel.UserId > 0) { filterString = ODataFilterConstant.Filter + $"UserId eq {searchModel.UserId}"; filterString += $" and Role/ApplicationId eq {searchModel.ApplicationId}"; if (!string.IsNullOrWhiteSpace(searchModel.FilterText)) { if (!string.IsNullOrWhiteSpace(filterString)) { filterString += $" and (contains(Role/RoleName,'{searchModel.FilterText}') eq true"; filterString += $" or contains(Role/RoleDescription,'{searchModel.FilterText}') eq true )"; } } } filterString += GetFilterStringForAssociatedEntities(new List<string>{"Role","User"}); AddPageSizeNumberAndSortingInFilterString(searchModel, ref filterString); } return filterString; }
public async Task <UserApplicationRoleSearchModel> GetUserApplicationRoles(UserApplicationRoleSearchModel model) { return(await _userApplicationRoleApiClient.GetUserApplicationRoles(model)); }