Files
FA_WEB/OrdersManagement/Components/Pages/ScheduleOrders.razor

48 lines
1.5 KiB
Plaintext

@page "/"
@using System.Security.Claims
@using Microsoft.AspNetCore.Authorization
@using OrdersManagement.Components.Pages.Shared
@using Syncfusion.Blazor.Grids
@inject ScheduleOrderService ScheduleOrderService
@inject CustomAuthenticationStateProvider CustomAuthenticationStateProvider
@inject NavigationManager NavigationManager;
<ScheduleOrdersGrid PageSize="20" PassGridRef="SetGridRef" GridData="_scheduleOrders" />
@code {
private IEnumerable<ScheduleOrderDto> _scheduleOrders = [];
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
// ClaimsPrincipal currentUser = CustomAuthenticationStateProvider.GetCurrentUser();
//
// if (currentUser.Identity?.IsAuthenticated == false)
// {
// NavigationManager.NavigateTo("/Unauthorized");
// }
// else
// {
_scheduleOrders = await FetchScheduleOrdersAsync();
StateHasChanged();
// }
}
}
private async Task<IEnumerable<ScheduleOrderDto>> FetchScheduleOrdersAsync()
{
_scheduleOrders = await ScheduleOrderService.GetScheduleOrdersAsync() ?? new List<ScheduleOrderDto>();
_scheduleOrders = _scheduleOrders.OrderByDescending(x => x.LastUpdateDate).ToList();
return _scheduleOrders;
}
private SfGrid<ScheduleOrderDto> _gridRef;
private async Task SetGridRef(SfGrid<ScheduleOrderDto> grid)
{
_gridRef = grid;
}
}