ok sorter pagina oridini
This commit is contained in:
@@ -8,8 +8,8 @@ else
|
||||
<thead>
|
||||
<tr class="">
|
||||
<td></td>
|
||||
<th @onclick="()=>orderByDate()">Order Date</th>
|
||||
<th @onclick="()=>orderByCode()">Order Number</th>
|
||||
<th>Order Date <Sorter ParamName="OrderDate" IsAsc="@sortAsc" CurrParam="@sortField" sortReq="SortRequested"></Sorter></th>
|
||||
<th>Order Number <Sorter ParamName="OrderNumber" IsAsc="@sortAsc" CurrParam="@sortField" sortReq="SortRequested"></Sorter></th>
|
||||
<th>Order Description</th>
|
||||
<th class="text-end">Doors Number</th>
|
||||
<th class="text-end">Model Number</th>
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using EgwCoreLib.Razor;
|
||||
using Microsoft.AspNetCore.Components;
|
||||
using Microsoft.AspNetCore.Components.Authorization;
|
||||
using Microsoft.AspNetCore.DataProtection;
|
||||
@@ -29,6 +30,17 @@ namespace WebDoorCreator.UI.Components.Order
|
||||
[Inject]
|
||||
protected WebDoorCreatorService WDService { get; set; } = null!;
|
||||
|
||||
private bool sortAsc = true;
|
||||
|
||||
private string sortField = "";
|
||||
|
||||
protected async Task SortRequested(Sorter.SortCallBack e)
|
||||
{
|
||||
sortField = e.ParamName;
|
||||
sortAsc = e.IsAscending;
|
||||
await ReloadData();
|
||||
}
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<int> updateRecordCount { get; set; }
|
||||
|
||||
@@ -178,22 +190,32 @@ namespace WebDoorCreator.UI.Components.Order
|
||||
{
|
||||
ListOrdersStatus = SearchRecords.Skip(numRecord * (currPage - 1)).Take(numRecord).ToList();
|
||||
}
|
||||
|
||||
if (orderType == Core.Enum.orderTypeEnum.DateAscending)
|
||||
if (!string.IsNullOrEmpty(sortField))
|
||||
{
|
||||
SearchRecords = SearchRecords.OrderBy(x => x.DateIns).ToList();
|
||||
}
|
||||
else if (orderType == Core.Enum.orderTypeEnum.DateDescending)
|
||||
{
|
||||
SearchRecords = SearchRecords.OrderByDescending(x => x.OrderExtCode).ToList();
|
||||
}
|
||||
else if (orderType == Core.Enum.orderTypeEnum.CodeAscending)
|
||||
{
|
||||
SearchRecords = SearchRecords.OrderBy(x => x.OrderExtCode).ToList();
|
||||
}
|
||||
else if (orderType == Core.Enum.orderTypeEnum.CodeDescending)
|
||||
{
|
||||
SearchRecords = SearchRecords.OrderByDescending(x => x.OrderExtCode).ToList();
|
||||
switch (sortField)
|
||||
{
|
||||
case "OrderDate":
|
||||
if (sortAsc)
|
||||
{
|
||||
ListOrdersStatus = SearchRecords.OrderBy(x => x.DateIns).ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
ListOrdersStatus = SearchRecords.OrderByDescending(x => x.DateIns).ToList();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
case "OrderNumber":
|
||||
if (sortAsc)
|
||||
{
|
||||
ListOrdersStatus = SearchRecords.OrderBy(x => x.OrderExtCode).ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
ListOrdersStatus = SearchRecords.OrderByDescending(x => x.OrderExtCode).ToList();
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -259,10 +281,10 @@ namespace WebDoorCreator.UI.Components.Order
|
||||
{
|
||||
string answ = "";
|
||||
|
||||
if(ListValuesAll != null)
|
||||
if (ListValuesAll != null)
|
||||
{
|
||||
var currOrdStat = ListValuesAll.Where(x => int.Parse(x.Value) == orderStat).FirstOrDefault();
|
||||
if(currOrdStat != null)
|
||||
if (currOrdStat != null)
|
||||
{
|
||||
answ = currOrdStat.Label;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user