* Added Miscs to ScheduleOrder view
* Added few fields to ScheduleOrderDetailDto * Map GetScheduleOrder by ID from API
This commit is contained in:
@@ -2,8 +2,10 @@
|
||||
@using Syncfusion.Blazor.Grids
|
||||
@inherits LayoutComponentBase
|
||||
|
||||
@inject ScheduleOrderService ScheduleOrderService
|
||||
|
||||
<div class="h-100 d-flex flex-column">
|
||||
<SfGrid @ref="_grid"
|
||||
<SfGrid @ref="Grid"
|
||||
TValue="ScheduleOrderDto"
|
||||
AllowFiltering="true"
|
||||
AllowPaging="true"
|
||||
@@ -18,11 +20,18 @@
|
||||
QueryCellInfo="OnQueryCellInfo"
|
||||
RowSelected="OnRowSelected">
|
||||
<GridColumns>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDto.PONum) HeaderText="Zamówienie Klienta" Width="150" AllowFiltering="true"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDto.PurchaserCode) HeaderText="Klient" Width="100" AllowFiltering="true"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDto.RecipientName) HeaderText="Odbiorca" Width="100" AllowFiltering="true"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDto.LastUpdateDate) HeaderText="Data Utworzenia" Format="d" Type="ColumnType.Date" Width="130" AllowFiltering="true"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDto.DocType) HeaderText="Typ Dokumentu" Width="100" AllowFiltering="true"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDto.PONum) HeaderText="Zamówienie Klienta" Width="150"
|
||||
AllowFiltering="true"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDto.PurchaserCode) HeaderText="Klient" Width="100"
|
||||
AllowFiltering="true"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDto.RecipientName) HeaderText="Odbiorca" Width="100"
|
||||
AllowFiltering="true"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDto.RecipientCode) HeaderText="Kod odbiorcy" Width="100"
|
||||
AllowFiltering="true"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDto.LastUpdateDate) HeaderText="Data Utworzenia" Format="d"
|
||||
Type="ColumnType.Date" Width="130" AllowFiltering="true"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDto.DocType) HeaderText="Typ Dokumentu" Width="100"
|
||||
AllowFiltering="true"></GridColumn>
|
||||
</GridColumns>
|
||||
<GridTemplates>
|
||||
<DetailTemplate>
|
||||
@@ -38,19 +47,69 @@
|
||||
EnableAdaptiveUI="true"
|
||||
AdaptiveUIMode="AdaptiveMode.Both">
|
||||
<GridColumns>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDto.Sc_productCode) HeaderText="Pozycja" Width="100"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDto.Sh_productCode) HeaderText="Pozycja Klienta" Width="100"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDto.OrderNumber) HeaderText="Numer Zamówienia"
|
||||
Width="100"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDto.PurchaserName) HeaderText="Klient"
|
||||
Width="100"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDto.RecipientName) HeaderText="Odbiorca"
|
||||
Width="100"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDto.RecipientCode) HeaderText="Kod odbiorcy"
|
||||
Width="100" AllowFiltering="true"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDto.Sc_productCode) HeaderText="Pozycja"
|
||||
Width="100"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDto.Sh_productCode)
|
||||
HeaderText="Pozycja Klienta" Width="100"></GridColumn>
|
||||
</GridColumns>
|
||||
<GridTemplates>
|
||||
<DetailTemplate Context="detail">
|
||||
@{
|
||||
IList<ScheduleOrderDetailDetailDto>? scheduleOrderDetailsDetails = (@detail as ScheduleOrderDetailDto)?.ScheduleOrderDetailDetails;
|
||||
<SfGrid AllowFiltering="true"
|
||||
AllowPaging="true"
|
||||
AllowSorting="true"
|
||||
AllowSelection="true"
|
||||
TValue="ScheduleOrderDetailDetailDto"
|
||||
DataSource="@scheduleOrderDetailsDetails"
|
||||
EnableAdaptiveUI="true"
|
||||
AdaptiveUIMode="AdaptiveMode.Both">
|
||||
<GridColumns>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDetailDto.DateFrom)
|
||||
HeaderText="Data Od"
|
||||
Width="100"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDetailDto.DateTo)
|
||||
HeaderText="Data Do"
|
||||
Width="100"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDetailDto.Qty)
|
||||
TextAlign="TextAlign.Right"
|
||||
HeaderText="Ilość Sztuk" Width="50"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDetailDto.QtyType)
|
||||
TextAlign="TextAlign.Right"
|
||||
HeaderText="Typ Qty" Width="50"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDetailDto.QtyDesc)
|
||||
HeaderText="Opis Typu"
|
||||
Width="100"></GridColumn>
|
||||
</GridColumns>
|
||||
<GridFilterSettings Type="FilterType.Excel"/>
|
||||
<GridPageSettings PageSize="10"/>
|
||||
<GridSelectionSettings Mode="SelectionMode.Row" Type="SelectionType.Single"/>
|
||||
<GridEvents TValue="ScheduleOrderDetailDetailDto" OnRecordDoubleClick="OnScheduleOrderDetailDetailRowDoubleClick"
|
||||
RowDataBound="OnRowDataBound"/>
|
||||
</SfGrid>
|
||||
}
|
||||
</DetailTemplate>
|
||||
</GridTemplates>
|
||||
<GridFilterSettings Type="FilterType.Excel"/>
|
||||
<GridPageSettings PageSize="10"/>
|
||||
<GridSelectionSettings Mode="SelectionMode.Row" Type="SelectionType.Single"/>
|
||||
<GridEvents TValue="ScheduleOrderDetailDto" OnRecordDoubleClick="OnScheduleOrderDetailRowDoubleClick"/>
|
||||
</SfGrid>
|
||||
}
|
||||
</DetailTemplate>
|
||||
</GridTemplates>
|
||||
<GridEvents TValue="ScheduleOrderDto" OnRecordDoubleClick="OnRowDoubleClick" />
|
||||
<GridFilterSettings Type="FilterType.Excel" />
|
||||
<GridPageSettings PageSize="PageSize" />
|
||||
<GridEvents TValue="ScheduleOrderDto" OnRecordDoubleClick="OnScheduleOrderRowDoubleClick"
|
||||
DetailsExpanding="OnDetailsExpanding"/>
|
||||
<GridFilterSettings Type="FilterType.Excel"/>
|
||||
<GridPageSettings PageSize="PageSize"/>
|
||||
</SfGrid>
|
||||
</div>
|
||||
|
||||
@@ -61,7 +120,9 @@
|
||||
|
||||
[Parameter] public required int PageSize { get; set; }
|
||||
|
||||
private SfGrid<ScheduleOrderDto> _grid { get; set; }
|
||||
private ScheduleOrderDto? ScheduleOrderDto { get; set; }
|
||||
|
||||
private SfGrid<ScheduleOrderDto>? Grid { get; set; }
|
||||
|
||||
private IEnumerable<ScheduleOrderDto> _dataSource = [];
|
||||
|
||||
@@ -72,16 +133,63 @@
|
||||
|
||||
protected override async Task OnAfterRenderAsync(bool firstRender)
|
||||
{
|
||||
if (firstRender)
|
||||
if (firstRender && Grid != null)
|
||||
{
|
||||
await PassGridRef(_grid);
|
||||
await PassGridRef(Grid);
|
||||
}
|
||||
}
|
||||
|
||||
private void OnRowDoubleClick(RecordDoubleClickEventArgs<ScheduleOrderDto> obj)
|
||||
private void OnScheduleOrderRowDoubleClick(RecordDoubleClickEventArgs<ScheduleOrderDto> obj)
|
||||
{
|
||||
int scheduleOrderId = obj.RowData.ID;
|
||||
NavigationManager.NavigateTo($"/ScheduleOrder/{scheduleOrderId}");
|
||||
}
|
||||
|
||||
private void OnScheduleOrderDetailRowDoubleClick(RecordDoubleClickEventArgs<ScheduleOrderDetailDto> obj)
|
||||
{
|
||||
int? scheduleOrderId = ScheduleOrderDto?.ID;
|
||||
|
||||
if (scheduleOrderId is not null)
|
||||
{
|
||||
NavigationManager.NavigateTo($"/ScheduleOrder/{scheduleOrderId}");
|
||||
}
|
||||
}
|
||||
|
||||
private void OnScheduleOrderDetailDetailRowDoubleClick(RecordDoubleClickEventArgs<ScheduleOrderDetailDetailDto> obj)
|
||||
{
|
||||
int? scheduleOrderId = ScheduleOrderDto?.ID;
|
||||
|
||||
if (scheduleOrderId is not null)
|
||||
{
|
||||
NavigationManager.NavigateTo($"/ScheduleOrder/{scheduleOrderId}");
|
||||
}
|
||||
}
|
||||
|
||||
private async Task OnDetailsExpanding(DetailsExpandingEventArgs<ScheduleOrderDto> obj)
|
||||
{
|
||||
ScheduleOrderDto = obj.Data;
|
||||
|
||||
if (ScheduleOrderDto != null)
|
||||
{
|
||||
ScheduleOrderDto? scheduleOrder = await ScheduleOrderService.GetScheduleOrderAsync(ScheduleOrderDto.ID);
|
||||
ScheduleOrderDto.ScheduleOrderDetails = scheduleOrder?.ScheduleOrderDetails ?? [];
|
||||
|
||||
foreach (ScheduleOrderDetailDto scheduleOrderDetailDto in ScheduleOrderDto.ScheduleOrderDetails)
|
||||
{
|
||||
scheduleOrderDetailDto.OrderNumber = scheduleOrder?.PONum;
|
||||
scheduleOrderDetailDto.RecipientCode = scheduleOrder?.RecipientCode;
|
||||
scheduleOrderDetailDto.RecipientName = scheduleOrder?.RecipientName;
|
||||
scheduleOrderDetailDto.PurchaserName = scheduleOrder?.PurchaserCode;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void OnRowDataBound(RowDataBoundEventArgs<ScheduleOrderDetailDetailDto> args)
|
||||
{
|
||||
if (args.Data.QtyType == "83" || args.Data.QtyType == "84")
|
||||
{
|
||||
args.Row.AddClass(["highlight-red"]);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user