@page "/EdiCustomerOrders" @inject EdiCustomerOrderService EdiCustomerOrderService @inject NavigationManager NavigationManager @using SytelineSaAppEfDataModel.Dtos @using FaKrosnoApi.Dtos @using OrdersManagement.Dtos @inherits LayoutComponentBase

Zamówienia Klienta EDI



@if (_isVisible) {
}
@context.CustomerOrderNumber @context.CustomerNumber @context.CustomerSequence @context.CreateDate @context.Gate @context.RecipientCode @context.SellerCode @context.SenderCode @context.BuyerCode
@_modalDto.Body @code { Grid? _grid; private IEnumerable? _ediCustomerOrders; private EdiCustomerOrderDto? _selectedEdiCustomerOrder; private Modal _modal = default!; private ModalDto _modalDto = new(null, null); private bool _isVisible; private bool _filter; private async Task> EdiCustomerOrdersDataProvider(GridDataProviderRequest request) { _ediCustomerOrders = await EdiCustomerOrderService.GetEdiCustomerOrdersAsync() ?? new List(); _ediCustomerOrders = _ediCustomerOrders.OrderByDescending(x => x.CreateDate).ToList(); if (_filter) { _ediCustomerOrders = _ediCustomerOrders.Where(x => x.Posted == 0).ToList(); } StateHasChanged(); return await Task.FromResult(request.ApplyTo(_ediCustomerOrders)); } private void OnRowDoubleClick(GridRowEventArgs obj) { string customerOrderId = obj.Item.CustomerOrderNumber; NavigationManager.NavigateTo($"/EdiCustomerOrder/{customerOrderId}"); } private async void SendOrderToSyteLine() { if (_selectedEdiCustomerOrder == null) return; ResponseDto response = await EdiCustomerOrderService.SendOrderToSyteline(_selectedEdiCustomerOrder.CustomerOrderNumber); if (response.Status == 1) { _modalDto = new ModalDto("Wysłano", $"Zamówienie EDI {_selectedEdiCustomerOrder.CustomerOrderNumber} zostało poprawnie zaksięgowane w Zamówieniach klienta pod numerem '{_selectedEdiCustomerOrder.EdiCustomerOrderTranslates.FirstOrDefault()?.CoCoNum}'"); await _modal.ShowAsync(); _grid?.RefreshDataAsync(); } else { _modalDto = new ModalDto("Błąd", $"Zamówienie EDI {_selectedEdiCustomerOrder.CustomerOrderNumber} nie zostało poprawnie zaksięgowane w Zamówieniach klienta.{Environment.NewLine}Lista błędów:{Environment.NewLine}{response.Message}"); await _modal.ShowAsync(); } } private void SelectedItemsChanged(HashSet obj) { _selectedEdiCustomerOrder = obj.FirstOrDefault() ?? null; _isVisible = _selectedEdiCustomerOrder?.Posted == 0; } private async Task OnHideModalClick() { await _modal.HideAsync(); } private void FilterChanged(bool obj) { _filter = obj; _grid?.RefreshDataAsync(); } }