* Changed ScheduleOrders and CustomerOrders from Blazor.Bootstrap to Syncfusion

This commit is contained in:
2025-02-06 20:36:17 +01:00
parent 695478fbd1
commit 9c4df2a2ed
14 changed files with 351 additions and 422 deletions

View File

@@ -20,6 +20,6 @@ namespace FaKrosnoEfDataModel.Dtos
public DateTime? ShipDate { get; set; }
public DateTime LastUpdateDate { get; set; }
public IList<ScheduleOrderDetailDetailMiscDto> ScheduleOrderDetailDetailMiscs { get; set; }
public IList<ScheduleOrderDetailDetailMiscDto>? ScheduleOrderDetailDetailMiscs { get; set; }
}
}

View File

@@ -13,5 +13,7 @@ namespace FaKrosnoEfDataModel.Dtos
public string Value { get; set; }
public string? Label { get; set; }
public bool Display { get; set; }
public string Text => $"{Label}:\t{Value}";
}
}

View File

@@ -14,6 +14,6 @@ namespace FaKrosnoEfDataModel.Dtos
public int? Price { get; set; }
public IList<ScheduleOrderDetailDetailDto> ScheduleOrderDetailDetails { get; set; }
public IList<ScheduleOrderDetailMiscDto> ScheduleOrderDetailMiscs { get; set; }
public IList<ScheduleOrderDetailMiscDto>? ScheduleOrderDetailMiscs { get; set; }
}
}

View File

@@ -13,5 +13,7 @@ namespace FaKrosnoEfDataModel.Dtos
public string Value { get; set; }
public string? Label { get; set; }
public bool Display { get; set; }
public string Text => $"{Label}:\t{Value}";
}
}

View File

@@ -13,5 +13,7 @@ namespace FaKrosnoEfDataModel.Dtos
public string Value { get; set; }
public string? Label { get; set; }
public bool Display { get; set; }
public string Text => $"{Label}:\t{Value}";
}
}

View File

@@ -32,8 +32,6 @@
@code {
private List<MenuItem> MenuItems { get; set; } = new();
Sidebar? _sidebar;
protected override void OnInitialized()
{
MenuItems = new List<MenuItem>

View File

@@ -5,44 +5,40 @@
@using SytelineSaAppEfDataModel.Dtos
@using OrdersManagement.Components.Pages.Shared
@using Syncfusion.Blazor.Grids
@using Syncfusion.Blazor.Cards
@inherits LayoutComponentBase
<h3>Zamówienie klienta nr @CustomerOrders.FirstOrDefault()?.CoNum</h3>
<br/>
<div class="row">
<div class="col">
<SortableList TItem="CustomerOrderDto" Data="CustomerOrders" Class="bg-light">
<ItemTemplate>
<u>Numer Zamówienia:</u> <b>@context.CoNum</b><br/>
<u>Numer Zamówienia Klienta:</u> <b>@context.CustPo</b><br/>
<u>Klient:</u> <b>@context.CustNum</b><br/>
<u>Numer Odbiorcy:</u> <b>@context.CustSeq</b><br/>
<u>Kontakt:</u> <b>@context.Contact</b><br/>
<u>Telefon:</u> <b>@context.Phone</b><br/>
<u>Data Zamówienia:</u> <b>@context.OrderDate.ToString("yyyy-MM-dd HH:mm:ss")</b><br/>
<u>Warunki:</u> <b>@context.TermsCode</b><br/>
<u>Wartość Brutto:</u> <b>@(context.Price?.ToString("F2") ?? "N/A")</b><br/>
<u>Status:</u> <b>@context.TranslatedStatus</b><br/>
</ItemTemplate>
</SortableList>
</div>
<div class="col">
<SortableList TItem="CustomerOrderDto" Data="CustomerOrders" Class="bg-light">
<ItemTemplate>
<u>Magazyn:</u> <b>@context.Whse</b><br/>
<u>VAT:</u> <b>@context.FrtTaxCode1</b><br/>
<u>Typ Odbiorcy:</u> <b>@context.EndUserType</b><br/>
<u>Kurs Wymiany:</u> <b>@(context.ExchRate?.ToString("F4") ?? "N/A")</b><br/>
<u>Gate:</u> <b>@context.Uf_FKR_EDI_Gate</b><br/>
<u>RecipientCode:</u> <b>@context.Uf_FKR_EDI_RecipientCode</b><br/>
<u>SelletCode:</u> <b>@context.Uf_FKR_EDI_SellerCode</b><br/>
<u>SenderCode:</u> <b>@context.Uf_FKR_EDI_SenderCode</b><br/>
<u>BuyerCode:</u> <b>@context.Uf_FKR_EDI_BuyerCode</b><br/>
<u>Typ Dokumentu:</u> <b>@context.Uf_DocType</b><br/>
</ItemTemplate>
</SortableList>
</div>
</div>
<h5>Zamówienie klienta nr @CustomerOrderDto?.CoNum</h5>
<SfCard>
<CardContent>
<div class="row">
<div class="col">
<u>Numer Zamówienia:</u> <b>@CustomerOrderDto?.CoNum</b><br/>
<u>Numer Zamówienia Klienta:</u> <b>@CustomerOrderDto?.CustPo</b><br/>
<u>Klient:</u> <b>@CustomerOrderDto?.CustNum</b><br/>
<u>Numer Odbiorcy:</u> <b>@CustomerOrderDto?.CustSeq</b><br/>
<u>Kontakt:</u> <b>@CustomerOrderDto?.Contact</b><br/>
<u>Telefon:</u> <b>@CustomerOrderDto?.Phone</b><br/>
<u>Data Zamówienia:</u> <b>@CustomerOrderDto?.OrderDate.ToString("yyyy-MM-dd HH:mm:ss")</b><br/>
<u>Warunki:</u> <b>@CustomerOrderDto?.TermsCode</b><br/>
<u>Wartość Brutto:</u> <b>@(CustomerOrderDto?.Price?.ToString("F2") ?? "N/A")</b><br/>
<u>Status:</u> <b>@CustomerOrderDto?.TranslatedStatus</b><br/>
</div>
<div class="col">
<u>Magazyn:</u> <b>@CustomerOrderDto?.Whse</b><br/>
<u>VAT:</u> <b>@CustomerOrderDto?.FrtTaxCode1</b><br/>
<u>Typ Odbiorcy:</u> <b>@CustomerOrderDto?.EndUserType</b><br/>
<u>Kurs Wymiany:</u> <b>@(CustomerOrderDto?.ExchRate?.ToString("F4") ?? "N/A")</b><br/>
<u>Gate:</u> <b>@CustomerOrderDto?.Uf_FKR_EDI_Gate</b><br/>
<u>RecipientCode:</u> <b>@CustomerOrderDto?.Uf_FKR_EDI_RecipientCode</b><br/>
<u>SelletCode:</u> <b>@CustomerOrderDto?.Uf_FKR_EDI_SellerCode</b><br/>
<u>SenderCode:</u> <b>@CustomerOrderDto?.Uf_FKR_EDI_SenderCode</b><br/>
<u>BuyerCode:</u> <b>@CustomerOrderDto?.Uf_FKR_EDI_BuyerCode</b><br/>
<u>Typ Dokumentu:</u> <b>@CustomerOrderDto?.Uf_DocType</b><br/>
</div>
</div>
</CardContent>
</SfCard>
<br/>
<div class="row">
<div class="col-md-12">
@@ -53,7 +49,7 @@
@if (_isVisible)
{
<div class="row">
<h3>Zamówienie DELFOR do zamówienia @CustomerOrders.FirstOrDefault()?.CoNum</h3>
<h5>Zamówienie DELFOR do zamówienia @CustomerOrderDto?.CoNum</h5>
</div>
<br/>
<div class="row">
@@ -61,221 +57,150 @@
</div>
<br/>
}
<div class="row">
<h3>Indeksy</h3>
</div>
<div class="row">
@* <Grid @ref="_customerOrderLinesGrid" *@
@* TItem="CustomerOrderLineDto" *@
@* Class="table table-hover table-bordered table-striped" *@
@* Data="_customerOrderLines" *@
@* AllowFiltering="true" *@
@* Responsive="true" *@
@* AllowPaging="true" *@
@* PageSize="10" *@
@* AllowSelection="true" *@
@* AllowRowClick="true" *@
@* SelectionMode="GridSelectionMode.Single" *@
@* SelectedItemsChanged="SelectedCustomerOrderLineChanged"> *@
@* <Syncfusion.Blazor.Grids.GridColumns> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineDto" HeaderText="Linia" PropertyName="CoLine"> *@
@* @context.CoLine *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineDto" HeaderText="Pozycja" PropertyName="Item"> *@
@* @context.Item *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineDto" HeaderText="Pozycja Klienta" PropertyName="CustItem"> *@
@* @context.CustItem *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineDto" HeaderText="Opis" PropertyName="Description"> *@
@* @context.Description *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineDto" HeaderText="Ilość" TextAlignment="Alignment.End" *@
@* PropertyName="BlanketQty"> *@
@* @context.BlanketQty *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineDto" HeaderText="J/M" PropertyName="UM"> *@
@* @context.UM *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineDto" HeaderText="Cena" PropertyName="ContPrice"> *@
@* @context.ContPrice *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineDto" HeaderText="Status" PropertyName="TranslatedStatus"> *@
@* @context.TranslatedStatus *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* </Syncfusion.Blazor.Grids.GridColumns> *@
@* </Grid> *@
<SfGrid AllowFiltering="true"
AllowPaging="true"
AllowSorting="true"
AllowSelection="true"
DataSource="@_customerOrderLines"
EnableAdaptiveUI="true">
<Syncfusion.Blazor.Grids.GridColumns>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineDto.CoLine) HeaderText="Linia" Width="70"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineDto.Item) HeaderText="Pozycja" Width="100"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineDto.CustItem) HeaderText="Pozycja Klienta" Width="120"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineDto.Description) HeaderText="Opis" Width="200"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineDto.BlanketQty) HeaderText="Ilość" TextAlign="TextAlign.Right" Width="100"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineDto.UM) HeaderText="J/M" Width="50"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineDto.ContPrice) HeaderText="Cena" Width="100"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineDto.TranslatedStatus) HeaderText="Status" Width="100"></Syncfusion.Blazor.Grids.GridColumn>
</Syncfusion.Blazor.Grids.GridColumns>
<GridFilterSettings Type="FilterType.Excel" />
<GridPageSettings PageSize="10" />
<GridSelectionSettings Mode="SelectionMode.Row" Type="SelectionType.Single" />
<GridEvents TValue="CustomerOrderLineDto" RowSelected="OnSelectedLineRow"></GridEvents>
</SfGrid>
</div>
<h5>Indeksy</h5>
<SfGrid @ref="_customerOrderLinesGrid"
AllowFiltering="true"
AllowPaging="true"
AllowSorting="true"
AllowSelection="true"
TValue="CustomerOrderLineDto"
DataSource="@_customerOrderLines"
EnableAdaptiveUI="true">
<GridTemplates>
<DetailTemplate>
@{
var order = context as CustomerOrderLineDto;
<SfCard>
<CardContent>
<div class="row">
<h6>Szczegóły</h6>
<div class="col">
<u>Numer zamówienia:</u><b>@order?.CoNum</b><br/>
<u>Linia:</u><b>@order?.CoLine</b><br/>
<u>Pozycja:</u><b>@order?.Item</b><br/>
<u>Pozycja Klienta:</u><b>@order?.CustItem</b><br/>
<u>Opis:</u><b>@order?.Description</b><br/>
<u>Łączna Ilość:</u><b>@order?.BlanketQty.ToString("F2")</b><br/>
<u>Status:</u><b>@order?.TranslatedStatus</b><br/>
</div>
<div class="col">
<u>Cena:</u><b>@(order?.ContPrice?.ToString("F2") ?? "N/A")</b><br/>
<u>Ważne Od:</u><b>@(order?.EffDate?.ToString("dd.MM.yyyy") ?? "N/A")</b><br/>
<u>J/M:</u><b>@order?.UM</b><br/>
<u>BoxType:</u><b>@order?.Uf_FKR_EDI_BLN_BoxType</b><br/>
<u>Address:</u><b>@order?.Uf_FKR_EDI_BLN_Address</b><br/>
<u>FinalDestination:</u><b>@order?.Uf_FKR_EDI_BLN_FinalDestination</b><br/>
<u>QtyPerBox:</u><b>@(order?.Uf_FKR_EDI_BLN_QtyPerBox?.ToString() ?? "N/A")</b>
</div>
</div>
</CardContent>
</SfCard>
}
</DetailTemplate>
</GridTemplates>
<GridColumns>
<GridColumn Field=@nameof(CustomerOrderLineDto.CoLine) HeaderText="Linia" Width="70"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderLineDto.Item) HeaderText="Pozycja" Width="100"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderLineDto.CustItem) HeaderText="Pozycja Klienta"
Width="120"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderLineDto.Description) HeaderText="Opis" Width="200"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderLineDto.BlanketQty) HeaderText="Ilość" TextAlign="TextAlign.Right"
Width="100"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderLineDto.UM) HeaderText="J/M" Width="50"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderLineDto.ContPrice) HeaderText="Cena" Width="100"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderLineDto.TranslatedStatus) HeaderText="Status"
Width="100"></GridColumn>
</GridColumns>
<GridFilterSettings Type="FilterType.Excel"/>
<GridPageSettings PageSize="10"/>
<GridSelectionSettings Mode="SelectionMode.Row" Type="SelectionType.Single"/>
<GridEvents TValue="CustomerOrderLineDto" RowSelected="OnSelectedLineRow"></GridEvents>
</SfGrid>
@if (_isVisibleCustomerOrderLine)
{
<div class="row">
<h3>Szczegóły</h3>
</div>
@* <div class="row"> *@
@* <div class="col"> *@
@* <SortableList TItem="CustomerOrderLineDto" Data="_selectedCustomerOrderLine"> *@
@* <ItemTemplate> *@
@* <u>Numer zamówienia:</u>&emsp;<b>@context.CoNum</b><br/> *@
@* <u>Linia:</u>&emsp;<b>@context.CoLine</b><br/> *@
@* <u>Pozycja:</u>&emsp;<b>@context.Item</b><br/> *@
@* <u>Pozycja Klienta:</u>&emsp;<b>@context.CustItem</b><br/> *@
@* <u>Opis:</u>&emsp;<b>@context.Description</b><br/> *@
@* <u>Łączna Ilość:</u>&emsp;<b>@context.BlanketQty.ToString("F2")</b><br/> *@
@* <u>Status:</u>&emsp;<b>@context.TranslatedStatus</b><br/> *@
@* </ItemTemplate> *@
@* </SortableList> *@
@* </div> *@
@* <div class="col"> *@
@* <SortableList TItem="CustomerOrderLineDto" Data="_selectedCustomerOrderLine"> *@
@* <ItemTemplate> *@
@* <u>Cena:</u>&emsp;<b>@(context.ContPrice?.ToString("F2") ?? "N/A")</b><br/> *@
@* <u>Ważne Od:</u>&emsp;<b>@(context.EffDate?.ToString("dd.MM.yyyy") ?? "N/A")</b><br/> *@
@* <u>J/M:</u>&emsp;<b>@context.UM</b><br/> *@
@* <u>BoxType:</u>&emsp;<b>@context.Uf_FKR_EDI_BLN_BoxType</b><br/> *@
@* <u>Address:</u>&emsp;<b>@context.Uf_FKR_EDI_BLN_Address</b><br/> *@
@* <u>FinalDestination:</u>&emsp;<b>@context.Uf_FKR_EDI_BLN_FinalDestination</b><br/> *@
@* <u>QtyPerBox:</u>&emsp;<b>@(context.Uf_FKR_EDI_BLN_QtyPerBox?.ToString() ?? "N/A")</b> *@
@* </ItemTemplate> *@
@* </SortableList> *@
@* </div> *@
@* </div> *@
<br/>
<h3>Harmonogramy</h3>
<div class="row">
@* <Grid @ref="_customerOrderLineItemsGrid" *@
@* TItem="CustomerOrderLineItemDto" *@
@* Class="table table-hover table-bordered table-striped" *@
@* Data="_customerOrderLineItems" *@
@* AllowFiltering="true" *@
@* Responsive="true" *@
@* AllowPaging="true" *@
@* PageSize="10" *@
@* AllowSelection="true" *@
@* AllowRowClick="true" *@
@* SelectionMode="GridSelectionMode.Single" *@
@* SelectedItemsChanged="SelectedCustomerOrderLineItemChanged"> *@
@* <Syncfusion.Blazor.Grids.GridColumns> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineItemDto" HeaderText="Linia" PropertyName="CustomerOrderLine"> *@
@* @context.CoLine *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineItemDto" HeaderText="Zwolnienie" *@
@* PropertyName="CustomerOrderRelease"> *@
@* @context.CoRelease *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineItemDto" HeaderText="Pozycja" PropertyName="Item"> *@
@* @context.Item *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineItemDto" HeaderText="Pozycja" PropertyName="CustomerItem"> *@
@* @context.CustItem *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineItemDto" HeaderText="Łączna Ilość" TextAlignment="Alignment.End" *@
@* PropertyName="QtyOrdered"> *@
@* @context.QtyOrdered *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineItemDto" HeaderText="Data Wykonania" PropertyName="DueDate"> *@
@* @context.DueDate?.ToString("dd.MM.yyyy") *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* <Syncfusion.Blazor.Grids.GridColumn TItem="CustomerOrderLineItemDto" HeaderText="Status" PropertyName="TranslatedStatus"> *@
@* @context.TranslatedStatus *@
@* </Syncfusion.Blazor.Grids.GridColumn> *@
@* </Syncfusion.Blazor.Grids.GridColumns> *@
@* </Grid> *@
<SfGrid @ref="_customerOrderLineItemsGrid"
TValue="CustomerOrderLineItemDto"
DataSource="@_customerOrderLineItems"
AllowFiltering="true"
AllowPaging="true"
AllowSelection="true"
AllowSorting="true"
SelectionMode="Syncfusion.Blazor.Grids.SelectionMode.Single"
SelectedItemsChanged="SelectedCustomerOrderLineItemChanged">
<Syncfusion.Blazor.Grids.GridColumns>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.CoLine) HeaderText="Linia" Width="70" />
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.CoRelease) HeaderText="Zwolnienie" Width="70" />
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.Item) HeaderText="Pozycja" Width="100"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.CustItem) HeaderText="Pozycja" Width="100"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.QtyOrdered) HeaderText="Łączna Ilość" TextAlign="TextAlign.Right" Width="120"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.DueDate) HeaderText="Data Wykonania" Width="100" />
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.TranslatedStatus) HeaderText="Status" Width="100"></Syncfusion.Blazor.Grids.GridColumn>
</Syncfusion.Blazor.Grids.GridColumns>
<GridFilterSettings Type="FilterType.Excel" />
<GridPageSettings PageSize="10" />
<GridSelectionSettings Mode="SelectionMode.Row" Type="SelectionType.Single" />
<GridEvents TValue="CustomerOrderLineItemDto" RowSelected="OnSelectedLineItemRow"></GridEvents>
</SfGrid>
</div>
@if (_isVisibleCustomerOrderLineItem)
{
<div class="row">
<h3>Szczegóły</h3>
</div>
@* <div class="row"> *@
@* <div class="col"> *@
@* <SortableList TItem="CustomerOrderLineItemDto" Data="_selectedCustomerOrderLineItem"> *@
@* <ItemTemplate> *@
@* <u>Numer Zamówienia:</u>&emsp;<b>@context.CoNum</b><br/> *@
@* <u>Linia:</u>&emsp;<b>@context.CoLine</b><br/> *@
@* <u>Zwolnienie:</u>&emsp;<b>@context.CoRelease</b><br/> *@
@* <u>Pozycja:</u>&emsp;<b>@context.Item</b><br/> *@
@* <u>Pozycja Klienta:</u>&emsp;<b>@context.CustItem</b><br/> *@
@* <u>Łączna Ilość Sztuk:</u>&emsp;<b>@(context.QtyOrdered.ToString("F2") ?? "N/A")</b><br/> *@
@* <u>Cena:</u>&emsp;<b>@(context.Price.ToString("F2") ?? "N/A")</b><br/> *@
@* <u>Data Wykonania:</u>&emsp;<b>@(context.DueDate?.ToString("dd.MM.yyyy") ?? "N/A")</b><br/> *@
@* <u>Data *@
@* Rejestracji:</u>&emsp;<b>@(context.ReleaseDate?.ToString("dd.MM.yyyy") ?? "N/A")</b><br/> *@
@* <u>Magazyn:</u>&emsp;<b>@context.Whse</b><br/> *@
@* <u>Typ Documentu:</u>&emsp;<b>@context.Uf_FKR_EDI_ITEM_DocumentType</b><br/> *@
@* </ItemTemplate> *@
@* </SortableList> *@
@* </div> *@
@* <div class="col"> *@
@* <SortableList TItem="CustomerOrderLineItemDto" Data="_selectedCustomerOrderLineItem"> *@
@* <ItemTemplate> *@
@* <u>Kod VAT:</u>&emsp;<b>@context.TaxCode1</b><br/> *@
@* <u>J/M:</u>&emsp;<b>@context.UM</b><br/> *@
@* <u>Numer Klienta:</u>&emsp;<b>@context.CoCustNum</b><br/> *@
@* <u>Opis:</u>&emsp;<b>@context.Description</b><br/> *@
@* <u>Status:</u>&emsp;<b>@context.TranslatedStatus</b><br/> *@
@* <u>RoutingCode:</u>&emsp;<b>@context.Uf_FKR_EDI_ITEM_RoutingCode</b><br/> *@
@* <u>DeliveryCallNumber:</u>&emsp;<b>@context.Uf_FKR_EDI_ITEM_DeliveryCallNum</b><br/> *@
@* <u>UnloadingPoint:</u>&emsp;<b>@context.Uf_LOC_11_UnloadingPoint</b><br/> *@
@* <u>DestinationPoint:</u>&emsp;<b>@context.Uf_LOC_159_DestinationPoint</b><br/> *@
@* <u>PalletCode:</u>&emsp;<b>@context.Uf_FKR_EDI_ITEM_PalletCode</b><br/> *@
@* </ItemTemplate> *@
@* </SortableList> *@
@* </div> *@
@* </div> *@
}
<h5>Harmonogramy</h5>
<SfGrid @ref="_customerOrderLineItemsGrid"
TValue="CustomerOrderLineItemDto"
DataSource="@_customerOrderLineItems"
AllowFiltering="true"
AllowPaging="true"
AllowSelection="true"
AllowSorting="true"
SelectionMode="Syncfusion.Blazor.Grids.SelectionMode.Single"
SelectedItemsChanged="SelectedCustomerOrderLineItemChanged">
<GridTemplates>
<DetailTemplate>
@{
var detailLineItem = context as CustomerOrderLineItemDto;
<SfCard>
<CardContent>
<div class="row">
<h6>Szczegóły</h6>
<div class="col">
<u>Numer Zamówienia:</u>&emsp;<b>@detailLineItem?.CoNum</b><br/>
<u>Linia:</u>&emsp;<b>@detailLineItem?.CoLine</b><br/>
<u>Zwolnienie:</u>&emsp;<b>@detailLineItem?.CoRelease</b><br/>
<u>Pozycja:</u>&emsp;<b>@detailLineItem?.Item</b><br/>
<u>Pozycja Klienta:</u>&emsp;<b>@detailLineItem?.CustItem</b><br/>
<u>Łączna Ilość
Sztuk:</u>&emsp;<b>@(detailLineItem?.QtyOrdered.ToString("F2") ?? "N/A")</b><br/>
<u>Cena:</u>&emsp;<b>@(detailLineItem?.Price.ToString("F2") ?? "N/A")</b><br/>
<u>Data
Wykonania:</u>&emsp;<b>@(detailLineItem?.DueDate?.ToString("dd.MM.yyyy") ?? "N/A")</b><br/>
<u>Data
Rejestracji:</u>&emsp;<b>@(detailLineItem?.ReleaseDate?.ToString("dd.MM.yyyy") ?? "N/A")</b><br/>
<u>Magazyn:</u>&emsp;<b>@detailLineItem?.Whse</b><br/>
<u>Typ Documentu:</u>&emsp;<b>@detailLineItem?.Uf_FKR_EDI_ITEM_DocumentType</b><br/>
</div>
<div class="col">
<u>Kod VAT:</u>&emsp;<b>@detailLineItem?.TaxCode1</b><br/>
<u>J/M:</u>&emsp;<b>@detailLineItem?.UM</b><br/>
<u>Numer Klienta:</u>&emsp;<b>@detailLineItem?.CoCustNum</b><br/>
<u>Opis:</u>&emsp;<b>@detailLineItem?.Description</b><br/>
<u>Status:</u>&emsp;<b>@detailLineItem?.TranslatedStatus</b><br/>
<u>RoutingCode:</u>&emsp;<b>@detailLineItem?.Uf_FKR_EDI_ITEM_RoutingCode</b><br/>
<u>DeliveryCallNumber:</u>&emsp;<b>@detailLineItem?.Uf_FKR_EDI_ITEM_DeliveryCallNum</b><br/>
<u>UnloadingPoint:</u>&emsp;<b>@detailLineItem?.Uf_LOC_11_UnloadingPoint</b><br/>
<u>DestinationPoint:</u>&emsp;<b>@detailLineItem?.Uf_LOC_159_DestinationPoint</b><br/>
<u>PalletCode:</u>&emsp;<b>@detailLineItem?.Uf_FKR_EDI_ITEM_PalletCode</b><br/>
</div>
</div>
</CardContent>
</SfCard>
}
</DetailTemplate>
</GridTemplates>
<Syncfusion.Blazor.Grids.GridColumns>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.CoLine) HeaderText="Linia"
Width="70"/>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.CoRelease)
HeaderText="Zwolnienie" Width="70"/>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.Item) HeaderText="Pozycja"
Width="100"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.CustItem)
HeaderText="Pozycja"
Width="100"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.QtyOrdered)
HeaderText="Łączna Ilość" TextAlign="TextAlign.Right"
Width="120"></Syncfusion.Blazor.Grids.GridColumn>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.DueDate)
HeaderText="Data Wykonania" Width="100"/>
<Syncfusion.Blazor.Grids.GridColumn Field=@nameof(CustomerOrderLineItemDto.TranslatedStatus)
HeaderText="Status"
Width="100"></Syncfusion.Blazor.Grids.GridColumn>
</Syncfusion.Blazor.Grids.GridColumns>
<GridFilterSettings Type="FilterType.Excel"/>
<GridPageSettings PageSize="10"/>
<GridSelectionSettings Mode="SelectionMode.Row" Type="SelectionType.Single"/>
<GridEvents TValue="CustomerOrderLineItemDto" RowSelected="OnSelectedLineItemRow"></GridEvents>
</SfGrid>
}
@code {
[Parameter] public Guid CustomerOrderId { get; set; }
private List<CustomerOrderDto> CustomerOrders { get; set; } = [];
private CustomerOrderDto CustomerOrderDto { get; set; }
private List<CustomerOrderLineDto> _customerOrderLines = [];
private List<CustomerOrderLineItemDto> _customerOrderLineItems = [];
@@ -288,7 +213,6 @@
private SfGrid<CustomerOrderLineItemDto>? _customerOrderLineItemsGrid;
private bool _isVisibleCustomerOrderLine;
private bool _isVisibleCustomerOrderLineItem;
private SfGrid<ScheduleOrderDto> _gridRef = new();
@@ -301,8 +225,8 @@
if (customerOrder != null)
{
CustomerOrders = [customerOrder];
_customerOrderLines = customerOrder.CustomerOrderLines.ToList() ?? [];
CustomerOrderDto = customerOrder;
_customerOrderLines = CustomerOrderDto.CustomerOrderLines.ToList() ?? [];
}
}
@@ -338,12 +262,11 @@
{
_gridRef = grid;
}
private async Task<IEnumerable<ScheduleOrderDto>> FetchScheduleOrdersAsync()
{
_scheduleOrders = [];
IList<int> scheduleOrderDetails = CustomerOrders?.FirstOrDefault()?.EdiCustomerOrderTranslates?.Select(x => x.ScheduleOrderId).Distinct().ToList() ?? [];
IList<int> scheduleOrderDetails = CustomerOrderDto?.EdiCustomerOrderTranslates?.Select(x => x.ScheduleOrderId).Distinct().ToList() ?? [];
if (scheduleOrderDetails.Any())
{
@@ -364,6 +287,5 @@
private void OnSelectedLineItemRow<TValue>(RowSelectEventArgs<TValue> obj)
{
_selectedCustomerOrderLineItem = obj.Data as CustomerOrderLineItemDto;
_isVisibleCustomerOrderLineItem = _selectedCustomerOrderLineItem != null;
}
}

View File

@@ -2,74 +2,88 @@
@inject CustomerOrderService CustomerOrderService
@inject NavigationManager NavigationManager
@using SytelineSaAppEfDataModel.Dtos
@using Syncfusion.Blazor.Grids
@using Syncfusion.Blazor.Cards
@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">
<h5>Zamówienia Klienta</h5>
<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>
<SfGrid @ref="_grid"
AllowFiltering="true"
AllowPaging="true"
AllowSorting="true"
AllowSelection="true"
TValue="CustomerOrderDto"
DataSource="@_customerOrders"
EnableAdaptiveUI="true">
<GridTemplates>
<DetailTemplate>
@{
var order = context as CustomerOrderDto;
<SfCard>
<CardContent>
<div class="row">
<div class="col">
<u>Numer Zamówienia:</u> <b>@order?.CoNum</b><br/>
<u>Numer Zamówienia Klienta:</u> <b>@order?.CustPo</b><br/>
<u>Klient:</u> <b>@order?.CustNum</b><br/>
<u>Numer Odbiorcy:</u> <b>@order?.CustSeq</b><br/>
<u>Kontakt:</u> <b>@order?.Contact</b><br/>
<u>Telefon:</u> <b>@order?.Phone</b><br/>
<u>Data Zamówienia:</u> <b>@order?.OrderDate.ToString("yyyy-MM-dd HH:mm:ss")</b><br/>
<u>Warunki:</u> <b>@order?.TermsCode</b><br/>
<u>Wartość Brutto:</u> <b>@(order?.Price?.ToString("F2") ?? "N/A")</b><br/>
<u>Status:</u> <b>@order?.TranslatedStatus</b><br/>
</div>
<div class="col">
<u>Magazyn:</u> <b>@order?.Whse</b><br/>
<u>VAT:</u> <b>@order?.FrtTaxCode1</b><br/>
<u>Typ Odbiorcy:</u> <b>@order?.EndUserType</b><br/>
<u>Kurs Wymiany:</u> <b>@(order?.ExchRate?.ToString("F4") ?? "N/A")</b><br/>
<u>Gate:</u> <b>@order?.Uf_FKR_EDI_Gate</b><br/>
<u>RecipientCode:</u> <b>@order?.Uf_FKR_EDI_RecipientCode</b><br/>
<u>SelletCode:</u> <b>@order?.Uf_FKR_EDI_SellerCode</b><br/>
<u>SenderCode:</u> <b>@order?.Uf_FKR_EDI_SenderCode</b><br/>
<u>BuyerCode:</u> <b>@order?.Uf_FKR_EDI_BuyerCode</b><br/>
<u>Typ Dokumentu:</u> <b>@order?.Uf_DocType</b><br/>
</div>
</div>
</CardContent>
</SfCard>
}
</DetailTemplate>
</GridTemplates>
<GridColumns>
<GridColumn Field=@nameof(CustomerOrderDto.CoNum) HeaderText="Numer Zamówienia" Width="110"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderDto.CustPo) HeaderText="Zamówienie Klienta" Width="100"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderDto.CustNum) HeaderText="Numer Klienta"Width="90"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderDto.CustSeq) HeaderText="Odbiorca" Width="80"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderDto.CreateDate) HeaderText="Data zamówienia" TextAlign="TextAlign.Right"Width="110"></GridColumn>
<GridColumn Field=@nameof(CustomerOrderDto.TranslatedStatus) HeaderText="Status" Width="100"></GridColumn>
</GridColumns>
<GridFilterSettings Type="FilterType.Excel"/>
<GridPageSettings PageSize="10"/>
<GridSelectionSettings Mode="SelectionMode.Row" Type="SelectionType.Single"/>
<GridEvents TValue="CustomerOrderDto" OnRecordDoubleClick="OnRowDoubleClick" />
</SfGrid>
@code {
Grid<CustomerOrderDto>? _grid;
SfGrid<CustomerOrderDto>? _grid;
private IEnumerable<CustomerOrderDto>? _customerOrders;
private CustomerOrderDto? _selectedCustomerOrder;
private async Task<GridDataProviderResult<CustomerOrderDto>> CustomerOrdersDataProvider(GridDataProviderRequest<CustomerOrderDto> request)
protected override async Task OnInitializedAsync()
{
_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)
private void OnRowDoubleClick(RecordDoubleClickEventArgs<CustomerOrderDto> obj)
{
Guid customerOrderId = obj.Item.RowPointer;
Guid customerOrderId = obj.RowData.RowPointer;
NavigationManager.NavigateTo($"/CustomerOrder/{customerOrderId}");
}
private void SelectedItemsChanged(HashSet<CustomerOrderDto> obj)
{
_selectedCustomerOrder = obj.FirstOrDefault() ?? null;
}
}

View File

@@ -2,6 +2,7 @@
@inject EdiCustomerOrderService EdiCustomerOrderService
@using SytelineSaAppEfDataModel.Dtos
@using BlazorBootstrap
@inherits LayoutComponentBase
<div class="row">

View File

@@ -4,6 +4,7 @@
@inject NavigationManager NavigationManager
@using OrdersManagement.Dtos
@using SytelineSaAppEfDataModel.Dtos
@using BlazorBootstrap
@inherits LayoutComponentBase
<div class="row">

View File

@@ -1,137 +1,125 @@
@page "/ScheduleOrder/{ScheduleOrderId:int}"
@using Syncfusion.Blazor.Grids
@using Syncfusion.Blazor.Lists
@inject ScheduleOrderDetailsService ScheduleOrderDetailsService
<div class="row">
<h3>Indeksy</h3>
</div>
<div class="row">
<Grid @ref="_grid"
TItem="ScheduleOrderDetailDto"
Class="table table-hover table-bordered table-striped"
DataProvider="ScheduleOrderDetailsDataProvider"
AllowFiltering="true"
Responsive="true"
AllowPaging="true"
PageSize="20"
AllowSelection="true"
AllowRowClick="true"
SelectionMode="GridSelectionMode.Single"
SelectedItemsChanged="SelectedItemChanged">
<GridColumns>
<GridColumn TItem="ScheduleOrderDetailDto" HeaderText="Pozycja"
PropertyName="SalesChannelProductCode">
@context.Sc_productCode
</GridColumn>
<GridColumn TItem="ScheduleOrderDetailDto" HeaderText="Pozycja Klienta"
PropertyName="ShipperProductCode">
@context.Sh_productCode
</GridColumn>
<GridColumn TItem="ScheduleOrderDetailDto" HeaderText="Cena" PropertyName="Price">
@context.Price
</GridColumn>
</GridColumns>
</Grid>
</div>
<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;
<SfListView Id="List"
DataSource="@scheduleOrderDetailMiscs"
ShowHeader="false"
CssClass="e-list-template">
<ListViewFieldSettings TValue="ScheduleOrderDetailMiscDto" Id="Id"
Text="Text"></ListViewFieldSettings>
<ListViewTemplates Context="item" TValue="ScheduleOrderDetailMiscDto">
<Template>
<span
class="e-list-content"><b>@item.Label</b>@item.Value
</span>
</Template>
</ListViewTemplates>
</SfListView>
}
</DetailTemplate>
</GridTemplates>
<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.Price) TextAlign="TextAlign.Right" HeaderText="Cena"
Width="50"></GridColumn>
</GridColumns>
<GridFilterSettings Type="FilterType.Excel"/>
<GridPageSettings PageSize="10"/>
<GridSelectionSettings Mode="SelectionMode.Row" Type="SelectionType.Single"/>
<GridEvents TValue="ScheduleOrderDetailDto" RowSelected="OnSelectedLineRow"></GridEvents>
</SfGrid>
@if (_isVisible)
{
<div class="row">
<h2>Dodatkowe informacje</h2>
</div>
<div class="row">
<SortableList TItem="ScheduleOrderDetailMiscDto" Data="_scheduleOrderDetailMiscs">
<ItemTemplate>
<u>@context.Label:</u>&emsp;<b>@context.Value</b>
</ItemTemplate>
</SortableList>
</div>
<br/>
<div class="row">
<h3>Harmonogramy</h3>
</div>
<div class="row">
<Grid @ref="_detailDetailsGrid"
TItem="ScheduleOrderDetailDetailDto"
Data="_scheduleOrderDetailsDetails"
Class="table table-hover table-bordered table-striped"
AllowFiltering="true"
Responsive="true"
AllowPaging="true"
PageSize="20"
AllowSelection="true"
SelectionMode="GridSelectionMode.Single"
SelectedItemsChanged="SelectedDetailDetailChanged">
<GridColumns>
<GridColumn TItem="ScheduleOrderDetailDetailDto" HeaderText="Id" PropertyName="Id">
@context.ID
</GridColumn>
<GridColumn TItem="ScheduleOrderDetailDetailDto" HeaderText="Data Od" PropertyName="DateFrom">
@context.DateFrom.ToString("dd.MM.yyyy")
</GridColumn>
<GridColumn TItem="ScheduleOrderDetailDetailDto" HeaderText="Data Do" PropertyName="DateTo">
@context.DateTo.ToString("dd.MM.yyyy")
</GridColumn>
<GridColumn TItem="ScheduleOrderDetailDetailDto" HeaderText="Ilość Sztuk" PropertyName="Qty">
@context.Qty
</GridColumn>
<GridColumn TItem="ScheduleOrderDetailDetailDto" HeaderText="Typ Qty" PropertyName="QtyType">
@context.QtyType
</GridColumn>
<GridColumn TItem="ScheduleOrderDetailDetailDto" HeaderText="Opis Typu" PropertyName="QtyDesc">
@context.QtyDesc
</GridColumn>
</GridColumns>
</Grid>
</div>
}
@if (_isVisibleDetailDetail)
{
<div class="row">
<h2>Dodatkowe informacje</h2>
</div>
<div class="row">
<SortableList TItem="ScheduleOrderDetailDetailMiscDto" Data="_scheduleOrderDetailDetailMiscs">
<ItemTemplate>
<u>@context.Label:</u>&emsp;<b>@context.Value</b>
</ItemTemplate>
</SortableList>
</div>
<h5>Harmonogramy</h5>
<SfGrid AllowFiltering="true"
AllowPaging="true"
AllowSorting="true"
AllowSelection="true"
TValue="ScheduleOrderDetailDetailDto"
DataSource="@_scheduleOrderDetailsDetails"
EnableAdaptiveUI="true">
<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>
}
@code {
[Parameter] public int ScheduleOrderId { get; set; }
private bool _isVisible;
private bool _isVisibleDetailDetail;
Grid<ScheduleOrderDetailDto>? _grid;
Grid<ScheduleOrderDetailDetailDto>? _detailDetailsGrid;
private bool _isVisible;
private IEnumerable<ScheduleOrderDetailDto>? _scheduleOrderDetails;
private IEnumerable<ScheduleOrderDetailDetailDto>? _scheduleOrderDetailsDetails;
private List<ScheduleOrderDetailMiscDto>? _scheduleOrderDetailMiscs;
private List<ScheduleOrderDetailDetailMiscDto>? _scheduleOrderDetailDetailMiscs;
private async Task<GridDataProviderResult<ScheduleOrderDetailDto>> ScheduleOrderDetailsDataProvider(GridDataProviderRequest<ScheduleOrderDetailDto> request)
protected override async Task OnInitializedAsync()
{
_scheduleOrderDetails = await ScheduleOrderDetailsService.GetScheduleOrderDetails(ScheduleOrderId) ?? new List<ScheduleOrderDetailDto>();
StateHasChanged();
return await Task.FromResult(request.ApplyTo(_scheduleOrderDetails));
}
private void SelectedItemChanged(HashSet<ScheduleOrderDetailDto> obj)
private void OnSelectedLineRow<TValue>(RowSelectEventArgs<TValue> obj)
{
_isVisible = obj.Any();
_scheduleOrderDetailMiscs = obj.FirstOrDefault()?.ScheduleOrderDetailMiscs.ToList();
_scheduleOrderDetailsDetails = obj.FirstOrDefault()?.ScheduleOrderDetailDetails.ToList();
}
ScheduleOrderDetailDto? scheduleOrderDetail = obj.Data as ScheduleOrderDetailDto;
private void SelectedDetailDetailChanged(HashSet<ScheduleOrderDetailDetailDto> obj)
{
_isVisibleDetailDetail = obj.Any();
_scheduleOrderDetailDetailMiscs = obj.FirstOrDefault()?.ScheduleOrderDetailDetailMiscs.ToList();
_isVisible = scheduleOrderDetail != null;
if (scheduleOrderDetail == null) return;
_scheduleOrderDetailsDetails = scheduleOrderDetail.ScheduleOrderDetailDetails.ToList();
}
}

View File

@@ -63,5 +63,4 @@
int scheduleOrderId = obj.RowData.ID;
NavigationManager.NavigateTo($"/ScheduleOrder/{scheduleOrderId}");
}
}

View File

@@ -6,6 +6,5 @@
@using static Microsoft.AspNetCore.Components.Web.RenderMode
@using Microsoft.AspNetCore.Components.Web.Virtualization
@using Microsoft.JSInterop
@using BlazorBootstrap;
@using FaKrosnoEfDataModel.Dtos
@using OrdersManagement.Services

View File

@@ -8,6 +8,7 @@
<ItemGroup>
<PackageReference Include="Blazor.Bootstrap" Version="3.2.0" />
<PackageReference Include="Syncfusion.Blazor.Cards" Version="28.2.3" />
<PackageReference Include="Syncfusion.Blazor.Core" Version="28.2.3" />
<PackageReference Include="Syncfusion.Blazor.Grid" Version="28.2.3" />
<PackageReference Include="Syncfusion.Blazor.Navigations" Version="28.2.3" />