163 lines
8.4 KiB
Plaintext
163 lines
8.4 KiB
Plaintext
@page "/ScheduleOrder/{ScheduleOrderId:int}"
|
||
@attribute [Authorize]
|
||
|
||
@using Microsoft.AspNetCore.Authorization
|
||
@using Syncfusion.Blazor.Grids
|
||
@using Syncfusion.Blazor.Lists
|
||
@inject ScheduleOrderService ScheduleOrderService
|
||
|
||
<div class="h-100 d-flex flex-column">
|
||
<h5>Zamówienie DELFOR nr @ScheduleOrderDto?.PONum</h5>
|
||
<SfListView Id="ScheduleOrderMiscs"
|
||
DataSource="@ScheduleOrderDto?.ScheduleOrderMiscs"
|
||
ShowHeader="false"
|
||
CssClass="e-list-template">
|
||
<ListViewFieldSettings TValue="ScheduleOrderMiscDto" Id="ScheduleOrderMiscListId"
|
||
Text="Text"></ListViewFieldSettings>
|
||
<ListViewTemplates Context="item" TValue="ScheduleOrderMiscDto">
|
||
<Template>
|
||
<span
|
||
class="e-list-content"><b>@item.Label:</b> @item.Value
|
||
</span>
|
||
</Template>
|
||
</ListViewTemplates>
|
||
</SfListView>
|
||
<br/>
|
||
<h5>Indeksy</h5>
|
||
<SfGrid AllowFiltering="true"
|
||
AllowPaging="true"
|
||
AllowSorting="true"
|
||
AllowSelection="true"
|
||
TValue="ScheduleOrderDetailDto"
|
||
DataSource="@_scheduleOrderDetails"
|
||
EnableAdaptiveUI="true">
|
||
<GridTemplates>
|
||
<DetailTemplate>
|
||
@{
|
||
IList<ScheduleOrderDetailMiscDto>? scheduleOrderDetailMiscs = (@context as ScheduleOrderDetailDto)?.ScheduleOrderDetailMiscs;
|
||
IList<ScheduleOrderDetailDetailDto>? scheduleOrderDetailDetails = (@context as ScheduleOrderDetailDto)?.ScheduleOrderDetailDetails;
|
||
|
||
<SfListView Id="ScheduleOrderDetailMiscs"
|
||
DataSource="@scheduleOrderDetailMiscs"
|
||
ShowHeader="false"
|
||
CssClass="e-list-template">
|
||
<ListViewFieldSettings TValue="ScheduleOrderDetailMiscDto" Id="ScheduleOrderDetailMiscListId"
|
||
Text="Text"></ListViewFieldSettings>
|
||
<ListViewTemplates Context="item" TValue="ScheduleOrderDetailMiscDto">
|
||
<Template>
|
||
<span
|
||
class="e-list-content"><b>@item.Label:</b> @item.Value
|
||
</span>
|
||
</Template>
|
||
</ListViewTemplates>
|
||
</SfListView>
|
||
<br/>
|
||
<h5>Harmonogramy</h5>
|
||
<SfGrid AllowFiltering="true"
|
||
AllowPaging="true"
|
||
AllowSorting="true"
|
||
AllowSelection="true"
|
||
TValue="ScheduleOrderDetailDetailDto"
|
||
DataSource="@scheduleOrderDetailDetails"
|
||
EnableAdaptiveUI="true"
|
||
AdaptiveUIMode="AdaptiveMode.Both">
|
||
<GridEvents TValue="ScheduleOrderDetailDetailDto" RowDataBound="OnRowDataBound"/>
|
||
<GridTemplates Context="detailDetail">
|
||
<DetailTemplate>
|
||
@{
|
||
IList<ScheduleOrderDetailDetailMiscDto>? scheduleOrderDetailDetailMiscs = (@detailDetail as ScheduleOrderDetailDetailDto)?.ScheduleOrderDetailDetailMiscs;
|
||
|
||
<SfListView Id="ScheduleOrderDetailDetailMiscs"
|
||
DataSource="@scheduleOrderDetailDetailMiscs"
|
||
ShowHeader="false"
|
||
CssClass="e-list-template">
|
||
<ListViewFieldSettings TValue="ScheduleOrderDetailDetailMiscDto"
|
||
Id="ScheduleOrderDetailDetailMiscListId"
|
||
Text="Text"></ListViewFieldSettings>
|
||
<ListViewTemplates Context="item" TValue="ScheduleOrderDetailDetailMiscDto">
|
||
<Template>
|
||
<span
|
||
class="e-list-content"><b>@item.Label:</b> @item.Value
|
||
</span>
|
||
</Template>
|
||
</ListViewTemplates>
|
||
</SfListView>
|
||
}
|
||
</DetailTemplate>
|
||
</GridTemplates>
|
||
<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"/>
|
||
</SfGrid>
|
||
}
|
||
</DetailTemplate>
|
||
</GridTemplates>
|
||
<GridColumns>
|
||
<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.Sh_productCode) HeaderText="Pozycja"
|
||
Width="100"></GridColumn>
|
||
<GridColumn Field=@nameof(ScheduleOrderDetailDto.Sc_productCode) HeaderText="Pozycja Klienta"
|
||
Width="100"></GridColumn>
|
||
</GridColumns>
|
||
<GridFilterSettings Type="FilterType.Excel"/>
|
||
<GridPageSettings PageSize="10"/>
|
||
<GridSelectionSettings Mode="SelectionMode.Row" Type="SelectionType.Single"/>
|
||
</SfGrid>
|
||
</div>
|
||
|
||
@code {
|
||
[Parameter] public int ScheduleOrderId { get; set; }
|
||
|
||
private IEnumerable<ScheduleOrderDetailDto>? _scheduleOrderDetails;
|
||
|
||
private ScheduleOrderDto? ScheduleOrderDto { get; set; }
|
||
|
||
protected override async Task OnInitializedAsync()
|
||
{
|
||
ScheduleOrderDto = await ScheduleOrderService.GetScheduleOrderAsync(ScheduleOrderId);
|
||
|
||
_scheduleOrderDetails = ScheduleOrderDto?.ScheduleOrderDetails;
|
||
|
||
if (ScheduleOrderDto is not null && _scheduleOrderDetails is not null)
|
||
{
|
||
foreach (ScheduleOrderDetailDto scheduleOrderDetailDto in _scheduleOrderDetails)
|
||
{
|
||
scheduleOrderDetailDto.OrderNumber = ScheduleOrderDto?.PONum;
|
||
scheduleOrderDetailDto.RecipientCode = ScheduleOrderDto?.RecipientCode;
|
||
scheduleOrderDetailDto.RecipientName = ScheduleOrderDto?.RecipientName;
|
||
scheduleOrderDetailDto.PurchaserName = ScheduleOrderDto?.PurchaserCode;
|
||
}
|
||
}
|
||
|
||
StateHasChanged();
|
||
}
|
||
|
||
private void OnRowDataBound(RowDataBoundEventArgs<ScheduleOrderDetailDetailDto> args)
|
||
{
|
||
if (args.Data.QtyType == "83" || args.Data.QtyType == "84")
|
||
{
|
||
args.Row.AddClass(["highlight-red"]);
|
||
}
|
||
}
|
||
|
||
}
|