Browse Source

Implemented sorting for roles.

pull/5399/head
Halil İbrahim Kalkan 6 years ago
parent
commit
7fec27bb3a
  1. 2
      templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/RoleManagement.razor
  2. 11
      templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/RoleManagement.razor.cs

2
templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/RoleManagement.razor

@ -26,7 +26,7 @@
TotalItems="_totalCount" TotalItems="_totalCount"
ShowPager="true"> ShowPager="true">
<DataGridColumns> <DataGridColumns>
<DataGridColumn TItem="IdentityRoleDto" Field="@nameof(IdentityRoleDto.Name)" Caption="Actions"> <DataGridColumn Width="150px" TItem="IdentityRoleDto" Field="@nameof(IdentityRoleDto.Name)" Sortable="false" Caption="Actions">
<DisplayTemplate> <DisplayTemplate>
<Dropdown> <Dropdown>
<DropdownToggle Color="Color.Primary"> <DropdownToggle Color="Color.Primary">

11
templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/RoleManagement.razor.cs

@ -1,10 +1,10 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
using Blazorise; using Blazorise;
using Blazorise.DataGrid; using Blazorise.DataGrid;
using Volo.Abp.Application.Dtos; using Volo.Abp.Application.Dtos;
using Volo.Abp.Data;
using Volo.Abp.Identity; using Volo.Abp.Identity;
using Volo.Abp.ObjectExtending; using Volo.Abp.ObjectExtending;
@ -15,6 +15,7 @@ namespace MyCompanyName.MyProjectName.Blazor.Pages
public partial class RoleManagement public partial class RoleManagement
{ {
private int _currentPage; private int _currentPage;
private string _currentSorting;
private int? _totalCount; private int? _totalCount;
private IReadOnlyList<IdentityRoleDto> _roles; private IReadOnlyList<IdentityRoleDto> _roles;
@ -43,7 +44,8 @@ namespace MyCompanyName.MyProjectName.Blazor.Pages
new PagedAndSortedResultRequestDto new PagedAndSortedResultRequestDto
{ {
SkipCount = _currentPage * LimitedResultRequestDto.DefaultMaxResultCount, SkipCount = _currentPage * LimitedResultRequestDto.DefaultMaxResultCount,
MaxResultCount = LimitedResultRequestDto.DefaultMaxResultCount MaxResultCount = LimitedResultRequestDto.DefaultMaxResultCount,
Sorting = _currentSorting
}); });
_roles = result.Items; _roles = result.Items;
@ -52,6 +54,11 @@ namespace MyCompanyName.MyProjectName.Blazor.Pages
private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<IdentityRoleDto> e) private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<IdentityRoleDto> e)
{ {
_currentSorting = e.Columns
.Where(c => c.Direction != SortDirection.None)
.Select(c => c.Field + (c.Direction == SortDirection.Descending ? " DESC" : ""))
.JoinAsString(",");
_currentPage = e.Page - 1; _currentPage = e.Page - 1;
await GetRolesAsync(); await GetRolesAsync();
StateHasChanged(); StateHasChanged();

Loading…
Cancel
Save