@page "/CustomerOrder/{CustomerOrderId:guid}" @inject CustomerOrderService CustomerOrderService @inject ScheduleOrderService ScheduleOrderService @using SytelineSaAppEfDataModel.Dtos @using OrdersManagement.Components.Pages.Shared @using Syncfusion.Blazor.Grids @inherits LayoutComponentBase

Zamówienie klienta nr @CustomerOrders.FirstOrDefault()?.CoNum


Numer Zamówienia: @context.CoNum
Numer Zamówienia Klienta: @context.CustPo
Klient: @context.CustNum
Numer Odbiorcy: @context.CustSeq
Kontakt: @context.Contact
Telefon: @context.Phone
Data Zamówienia: @context.OrderDate.ToString("yyyy-MM-dd HH:mm:ss")
Warunki: @context.TermsCode
Wartość Brutto: @(context.Price?.ToString("F2") ?? "N/A")
Status: @context.TranslatedStatus
Magazyn: @context.Whse
VAT: @context.FrtTaxCode1
Typ Odbiorcy: @context.EndUserType
Kurs Wymiany: @(context.ExchRate?.ToString("F4") ?? "N/A")
Gate: @context.Uf_FKR_EDI_Gate
RecipientCode: @context.Uf_FKR_EDI_RecipientCode
SelletCode: @context.Uf_FKR_EDI_SellerCode
SenderCode: @context.Uf_FKR_EDI_SenderCode
BuyerCode: @context.Uf_FKR_EDI_BuyerCode
Typ Dokumentu: @context.Uf_DocType


@if (_isVisible) {

Zamówienie DELFOR do zamówienia @CustomerOrders.FirstOrDefault()?.CoNum



}

Indeksy

@* *@ @* *@ @* *@ @* @context.CoLine *@ @* *@ @* *@ @* @context.Item *@ @* *@ @* *@ @* @context.CustItem *@ @* *@ @* *@ @* @context.Description *@ @* *@ @* *@ @* @context.BlanketQty *@ @* *@ @* *@ @* @context.UM *@ @* *@ @* *@ @* @context.ContPrice *@ @* *@ @* *@ @* @context.TranslatedStatus *@ @* *@ @* *@ @* *@
@if (_isVisibleCustomerOrderLine) {

Szczegóły

@*
*@ @*
*@ @* *@ @* *@ @* Numer zamówienia:@context.CoNum
*@ @* Linia:@context.CoLine
*@ @* Pozycja:@context.Item
*@ @* Pozycja Klienta:@context.CustItem
*@ @* Opis:@context.Description
*@ @* Łączna Ilość:@context.BlanketQty.ToString("F2")
*@ @* Status:@context.TranslatedStatus
*@ @*
*@ @*
*@ @*
*@ @*
*@ @* *@ @* *@ @* Cena:@(context.ContPrice?.ToString("F2") ?? "N/A")
*@ @* Ważne Od:@(context.EffDate?.ToString("dd.MM.yyyy") ?? "N/A")
*@ @* J/M:@context.UM
*@ @* BoxType:@context.Uf_FKR_EDI_BLN_BoxType
*@ @* Address:@context.Uf_FKR_EDI_BLN_Address
*@ @* FinalDestination:@context.Uf_FKR_EDI_BLN_FinalDestination
*@ @* QtyPerBox:@(context.Uf_FKR_EDI_BLN_QtyPerBox?.ToString() ?? "N/A") *@ @*
*@ @*
*@ @*
*@ @*
*@

Harmonogramy

@* *@ @* *@ @* *@ @* @context.CoLine *@ @* *@ @* *@ @* @context.CoRelease *@ @* *@ @* *@ @* @context.Item *@ @* *@ @* *@ @* @context.CustItem *@ @* *@ @* *@ @* @context.QtyOrdered *@ @* *@ @* *@ @* @context.DueDate?.ToString("dd.MM.yyyy") *@ @* *@ @* *@ @* @context.TranslatedStatus *@ @* *@ @* *@ @* *@
@if (_isVisibleCustomerOrderLineItem) {

Szczegóły

@*
*@ @*
*@ @* *@ @* *@ @* Numer Zamówienia:@context.CoNum
*@ @* Linia:@context.CoLine
*@ @* Zwolnienie:@context.CoRelease
*@ @* Pozycja:@context.Item
*@ @* Pozycja Klienta:@context.CustItem
*@ @* Łączna Ilość Sztuk:@(context.QtyOrdered.ToString("F2") ?? "N/A")
*@ @* Cena:@(context.Price.ToString("F2") ?? "N/A")
*@ @* Data Wykonania:@(context.DueDate?.ToString("dd.MM.yyyy") ?? "N/A")
*@ @* Data *@ @* Rejestracji:@(context.ReleaseDate?.ToString("dd.MM.yyyy") ?? "N/A")
*@ @* Magazyn:@context.Whse
*@ @* Typ Documentu:@context.Uf_FKR_EDI_ITEM_DocumentType
*@ @*
*@ @*
*@ @*
*@ @*
*@ @* *@ @* *@ @* Kod VAT:@context.TaxCode1
*@ @* J/M:@context.UM
*@ @* Numer Klienta:@context.CoCustNum
*@ @* Opis:@context.Description
*@ @* Status:@context.TranslatedStatus
*@ @* RoutingCode:@context.Uf_FKR_EDI_ITEM_RoutingCode
*@ @* DeliveryCallNumber:@context.Uf_FKR_EDI_ITEM_DeliveryCallNum
*@ @* UnloadingPoint:@context.Uf_LOC_11_UnloadingPoint
*@ @* DestinationPoint:@context.Uf_LOC_159_DestinationPoint
*@ @* PalletCode:@context.Uf_FKR_EDI_ITEM_PalletCode
*@ @*
*@ @*
*@ @*
*@ @*
*@ } } @code { [Parameter] public Guid CustomerOrderId { get; set; } private List CustomerOrders { get; set; } = []; private List _customerOrderLines = []; private List _customerOrderLineItems = []; private IEnumerable? _scheduleOrders; CustomerOrderLineDto? _selectedCustomerOrderLine; CustomerOrderLineItemDto? _selectedCustomerOrderLineItem; private SfGrid? _customerOrderLinesGrid; private SfGrid? _customerOrderLineItemsGrid; private bool _isVisibleCustomerOrderLine; private bool _isVisibleCustomerOrderLineItem; private SfGrid _gridRef = new(); private bool _isVisible = true; private string _text = "Pokaż powiązane zamówienia DELFOR"; protected override async Task OnInitializedAsync() { CustomerOrderDto? customerOrder = await CustomerOrderService.GetCustomerOrderAsync(CustomerOrderId); if (customerOrder != null) { CustomerOrders = [customerOrder]; _customerOrderLines = customerOrder.CustomerOrderLines.ToList() ?? []; } } protected override async Task OnAfterRenderAsync(bool firstRender) { if (firstRender) { await SetGridRef(_gridRef); StateHasChanged(); _isVisible = false; } } private async Task ShowLastDelfors() { if (_isVisible) { _isVisible = false; _text = "Pokaż powiązane zamówienia DELFOR"; _scheduleOrders = []; } else { _scheduleOrders = await FetchScheduleOrdersAsync(); await _gridRef.Refresh(); StateHasChanged(); _isVisible = true; _text = "Ukryj"; } } private async Task SetGridRef(SfGrid grid) { _gridRef = grid; } private async Task> FetchScheduleOrdersAsync() { _scheduleOrders = []; IList scheduleOrderDetails = CustomerOrders?.FirstOrDefault()?.EdiCustomerOrderTranslates?.Select(x => x.ScheduleOrderId).Distinct().ToList() ?? []; if (scheduleOrderDetails.Any()) { _scheduleOrders = await ScheduleOrderService.GetScheduleOrdersAsync() ?? new List(); _scheduleOrders = _scheduleOrders.Where(x => scheduleOrderDetails.Contains(x.ID)).OrderByDescending(x => x.LastUpdateDate).ToList(); } return _scheduleOrders; } private void OnSelectedLineRow(RowSelectEventArgs obj) { _selectedCustomerOrderLine = obj.Data as CustomerOrderLineDto; _isVisibleCustomerOrderLine = _selectedCustomerOrderLine != null; _customerOrderLineItems = _selectedCustomerOrderLine?.CustomerOrderLineItems.ToList() ?? []; } private void OnSelectedLineItemRow(RowSelectEventArgs obj) { _selectedCustomerOrderLineItem = obj.Data as CustomerOrderLineItemDto; _isVisibleCustomerOrderLineItem = _selectedCustomerOrderLineItem != null; } }