Files
FA_WEB/OrdersManagement/Components/Pages/CustomerOrders.razor
Piotr Kus 96775b0c15 * Translated grid columns
* Changed order of columns
* Changed view
2025-02-02 09:15:24 +01:00

75 lines
2.7 KiB
Plaintext

@page "/CustomerOrders"
@inject CustomerOrderService CustomerOrderService
@inject NavigationManager NavigationManager
@using SytelineSaAppEfDataModel.Dtos
@inherits LayoutComponentBase
<div class="row">
<h3>Zamówienia Klienta</h3>
</div>
<br />
<div class="row">
<Grid @ref="_grid"
TItem="CustomerOrderDto"
Class="table table-hover table-bordered table-striped"
DataProvider="CustomerOrdersDataProvider"
AllowFiltering="true"
Responsive="true"
AllowPaging="true"
PageSize="20"
AllowSelection="true"
AllowRowClick="true"
OnRowDoubleClick="OnRowDoubleClick"
SelectedItemsChanged="SelectedItemsChanged">
<GridColumns>
<GridColumn TItem="CustomerOrderDto" HeaderText="Numer Zamówienia" PropertyName="CoNum">
@context.CoNum
</GridColumn>
<GridColumn TItem="CustomerOrderDto" HeaderText="Zamówienie Klienta" PropertyName="CustNum">
@context.CustPo
</GridColumn>
<GridColumn TItem="CustomerOrderDto" HeaderText="Numer Klienta" PropertyName="CustNum">
@context.CustNum
</GridColumn>
<GridColumn TItem="CustomerOrderDto" HeaderText="Odbiorca" PropertyName="CustSeq">
@context.CustSeq
</GridColumn>
<GridColumn TItem="CustomerOrderDto" HeaderText="Data zamówienia" PropertyName="CreateDate">
@context.CreateDate
</GridColumn>
<GridColumn TItem="CustomerOrderDto" HeaderText="Status" PropertyName="Stat">
@context.TranslatedStatus
</GridColumn>
</GridColumns>
</Grid>
</div>
@code {
Grid<CustomerOrderDto>? _grid;
private IEnumerable<CustomerOrderDto>? _customerOrders;
private CustomerOrderDto? _selectedCustomerOrder;
private async Task<GridDataProviderResult<CustomerOrderDto>> CustomerOrdersDataProvider(GridDataProviderRequest<CustomerOrderDto> request)
{
_customerOrders = await CustomerOrderService.GetCustomerOrdersAsync() ?? new List<CustomerOrderDto>();
_customerOrders = _customerOrders.OrderByDescending(x => x.CreateDate).ToList();
StateHasChanged();
return await Task.FromResult(request.ApplyTo(_customerOrders));
}
private void OnRowDoubleClick(GridRowEventArgs<CustomerOrderDto> obj)
{
Guid customerOrderId = obj.Item.RowPointer;
NavigationManager.NavigateTo($"/CustomerOrder/{customerOrderId}");
}
private void SelectedItemsChanged(HashSet<CustomerOrderDto> obj)
{
_selectedCustomerOrder = obj.FirstOrDefault() ?? null;
}
}