* Added Miscs to ScheduleOrder view
* Added few fields to ScheduleOrderDetailDto * Map GetScheduleOrder by ID from API
This commit is contained in:
@@ -3,8 +3,25 @@
|
||||
@using Syncfusion.Blazor.Grids
|
||||
@using Syncfusion.Blazor.Lists
|
||||
@inject ScheduleOrderDetailsService ScheduleOrderDetailsService
|
||||
@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"
|
||||
@@ -17,127 +34,122 @@
|
||||
<DetailTemplate>
|
||||
@{
|
||||
IList<ScheduleOrderDetailMiscDto>? scheduleOrderDetailMiscs = (@context as ScheduleOrderDetailDto)?.ScheduleOrderDetailMiscs;
|
||||
IList<ScheduleOrderDetailDetailDto>? scheduleOrderDetailDetails = (@context as ScheduleOrderDetailDto)?.ScheduleOrderDetailDetails;
|
||||
|
||||
<SfListView Id="List"
|
||||
<SfListView Id="ScheduleOrderDetailMiscs"
|
||||
DataSource="@scheduleOrderDetailMiscs"
|
||||
ShowHeader="false"
|
||||
CssClass="e-list-template">
|
||||
<ListViewFieldSettings TValue="ScheduleOrderDetailMiscDto" Id="Id"
|
||||
<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
|
||||
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.Sc_productCode) HeaderText="Pozycja"
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDto.OrderNumber) HeaderText="Numer Zamówienia"
|
||||
Width="100"></GridColumn>
|
||||
<GridColumn Field=@nameof(ScheduleOrderDetailDto.Sh_productCode) HeaderText="Pozycja Klienta"
|
||||
<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"/>
|
||||
<GridEvents TValue="ScheduleOrderDetailDto" RowSelected="OnSelectedLineRow"
|
||||
DetailsExpanding="OnDetailsExpanding"></GridEvents>
|
||||
</SfGrid>
|
||||
@if (_isVisible)
|
||||
{
|
||||
<br/>
|
||||
<h5>Harmonogramy</h5>
|
||||
<SfGrid AllowFiltering="true"
|
||||
AllowPaging="true"
|
||||
AllowSorting="true"
|
||||
AllowSelection="true"
|
||||
TValue="ScheduleOrderDetailDetailDto"
|
||||
DataSource="@_scheduleOrderDetailsDetails"
|
||||
EnableAdaptiveUI="true"
|
||||
AdaptiveUIMode="AdaptiveMode.Both">
|
||||
<GridEvents TValue="ScheduleOrderDetailDetailDto" RowDataBound="OnRowDataBound" />
|
||||
<GridTemplates>
|
||||
<DetailTemplate>
|
||||
@{
|
||||
IList<ScheduleOrderDetailDetailMiscDto>? scheduleOrderDetailDetailMiscs = (@context as ScheduleOrderDetailDetailDto)?.ScheduleOrderDetailDetailMiscs;
|
||||
|
||||
<SfListView Id="List"
|
||||
DataSource="@scheduleOrderDetailDetailMiscs"
|
||||
ShowHeader="false"
|
||||
CssClass="e-list-template">
|
||||
<ListViewFieldSettings TValue="ScheduleOrderDetailDetailMiscDto" Id="Id"
|
||||
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>
|
||||
}
|
||||
</div>
|
||||
|
||||
@code {
|
||||
[Parameter] public int ScheduleOrderId { get; set; }
|
||||
|
||||
private bool _isVisible;
|
||||
|
||||
private IEnumerable<ScheduleOrderDetailDto>? _scheduleOrderDetails;
|
||||
private IEnumerable<ScheduleOrderDetailDetailDto>? _scheduleOrderDetailsDetails;
|
||||
|
||||
private ScheduleOrderDto? ScheduleOrderDto { get; set; }
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
_scheduleOrderDetails = await ScheduleOrderDetailsService.GetScheduleOrderDetails(ScheduleOrderId) ?? new List<ScheduleOrderDetailDto>();
|
||||
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 OnSelectedLineRow(RowSelectEventArgs<ScheduleOrderDetailDto> obj)
|
||||
{
|
||||
ScheduleOrderDetailDto? scheduleOrderDetail = obj.Data;
|
||||
|
||||
SelectOrderDetail(scheduleOrderDetail);
|
||||
}
|
||||
|
||||
private void SelectOrderDetail(ScheduleOrderDetailDto? scheduleOrderDetail)
|
||||
{
|
||||
_isVisible = scheduleOrderDetail != null;
|
||||
|
||||
if (scheduleOrderDetail == null) return;
|
||||
|
||||
_scheduleOrderDetailsDetails = scheduleOrderDetail.ScheduleOrderDetailDetails.ToList();
|
||||
}
|
||||
|
||||
private void OnDetailsExpanding(DetailsExpandingEventArgs<ScheduleOrderDetailDto> obj)
|
||||
{
|
||||
ScheduleOrderDetailDto? scheduleOrderDetail = obj.Data;
|
||||
|
||||
SelectOrderDetail(scheduleOrderDetail);
|
||||
}
|
||||
|
||||
private void OnRowDataBound(RowDataBoundEventArgs<ScheduleOrderDetailDetailDto> args)
|
||||
{
|
||||
if (args.Data.QtyType == "83" || args.Data.QtyType == "84")
|
||||
@@ -145,4 +157,5 @@
|
||||
args.Row.AddClass(["highlight-red"]);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user