From 6800781fdb3d3a16ca34e1cc3797e608d20994ec Mon Sep 17 00:00:00 2001 From: Piotr Kus Date: Fri, 7 Feb 2025 07:28:07 +0100 Subject: [PATCH] * Migrated EdiCo and Co views to Syncfusion --- .../Components/Pages/CustomerOrder.razor | 7 - .../Components/Pages/CustomerOrders.razor | 6 +- .../Components/Pages/EdiCustomerOrder.razor | 399 ++++++++---------- .../Components/Pages/EdiCustomerOrders.razor | 252 ++++++----- OrdersManagement/OrdersManagement.csproj | 1 + 5 files changed, 333 insertions(+), 332 deletions(-) diff --git a/OrdersManagement/Components/Pages/CustomerOrder.razor b/OrdersManagement/Components/Pages/CustomerOrder.razor index ee5083c..6cdb50e 100644 --- a/OrdersManagement/Components/Pages/CustomerOrder.razor +++ b/OrdersManagement/Components/Pages/CustomerOrder.razor @@ -193,7 +193,6 @@ - } @@ -207,7 +206,6 @@ private IEnumerable? _scheduleOrders; CustomerOrderLineDto? _selectedCustomerOrderLine; - CustomerOrderLineItemDto? _selectedCustomerOrderLineItem; private SfGrid? _customerOrderLinesGrid; private SfGrid? _customerOrderLineItemsGrid; @@ -283,9 +281,4 @@ _isVisibleCustomerOrderLine = _selectedCustomerOrderLine != null; _customerOrderLineItems = _selectedCustomerOrderLine?.CustomerOrderLineItems.ToList() ?? []; } - - private void OnSelectedLineItemRow(RowSelectEventArgs obj) - { - _selectedCustomerOrderLineItem = obj.Data as CustomerOrderLineItemDto; - } } \ No newline at end of file diff --git a/OrdersManagement/Components/Pages/CustomerOrders.razor b/OrdersManagement/Components/Pages/CustomerOrders.razor index 65e9978..c943e1f 100644 --- a/OrdersManagement/Components/Pages/CustomerOrders.razor +++ b/OrdersManagement/Components/Pages/CustomerOrders.razor @@ -7,10 +7,7 @@ @inherits LayoutComponentBase
Zamówienia Klienta
- - - @code { - SfGrid? _grid; private IEnumerable? _customerOrders; protected override async Task OnInitializedAsync() diff --git a/OrdersManagement/Components/Pages/EdiCustomerOrder.razor b/OrdersManagement/Components/Pages/EdiCustomerOrder.razor index ec55a1a..a43738f 100644 --- a/OrdersManagement/Components/Pages/EdiCustomerOrder.razor +++ b/OrdersManagement/Components/Pages/EdiCustomerOrder.razor @@ -2,240 +2,209 @@ @inject EdiCustomerOrderService EdiCustomerOrderService @using SytelineSaAppEfDataModel.Dtos -@using BlazorBootstrap +@using Syncfusion.Blazor.Grids +@using Syncfusion.Blazor.Cards @inherits LayoutComponentBase -
-

Zamówienie Klienta EDI

-
-
-
- - - Numer zamówienia EDI:@context.CustomerOrderNumber
- Numer zamówienia Klienta:@context.CustomerPoNumber
- Numer klienta:@context.CustomerNumber
- Klient:@context.CustomerName
- Numer odbiorcy:@(context.CustomerSequence?.ToString() ?? "N/A")
- Data otrzymania:@(context.RecivedDate?.ToString("dd.MM.yyyy") ?? "N/A")
- Wysłano do Syteline?:@((context.Posted?.ToString() ?? "0") == "0" ? "NIE" : "TAK")
- Data wysyłki do Syteline:@(context.PostedDate?.ToString("dd.MM.yyyy") ?? "N/A")
- Data zamówienia:@(context.OrderDate?.ToString("dd.MM.yyyy") ?? "N/A")
-
-
-
-
- - - Cena:@(context.Price?.ToString("F2") ?? "N/A")
- Waga:@(context.Weight?.ToString("F2") ?? "N/A")
- Magazyn:@context.Warehouse
- Gate:@context.Gate
- Kod odbiorcy:@context.RecipientCode
- Kod wysyłającego:@context.SenderCode
- Kod sprzedawcy:@context.SellerCode
- Kod kupującego:@context.BuyerCode
- Typ dokumentu:@context.DocType
-
-
-
-
+
Zamówienie klienta nr @EdiCustomerOrderDto?.CustomerOrderNumber
+ + +
+
+ Numer zamówienia EDI:@EdiCustomerOrderDto?.CustomerOrderNumber
+ Numer zamówienia Klienta:@EdiCustomerOrderDto?.CustomerPoNumber
+ Numer klienta:@EdiCustomerOrderDto?.CustomerNumber
+ Klient:@EdiCustomerOrderDto?.CustomerName
+ Numer odbiorcy:@(EdiCustomerOrderDto?.CustomerSequence?.ToString() ?? "N/A")
+ Data otrzymania:@(EdiCustomerOrderDto?.RecivedDate?.ToString("dd.MM.yyyy") ?? "N/A")
+ Wysłano do Syteline?:@((EdiCustomerOrderDto?.Posted?.ToString() ?? "0") == "0" ? "NIE" : "TAK")
+ Data wysyłki do Syteline:@(EdiCustomerOrderDto?.PostedDate?.ToString("dd.MM.yyyy") ?? "N/A")
+ Data zamówienia:@(EdiCustomerOrderDto?.OrderDate?.ToString("dd.MM.yyyy") ?? "N/A")
+
+
+ Cena:@(EdiCustomerOrderDto?.Price?.ToString("F2") ?? "N/A")
+ Waga:@(EdiCustomerOrderDto?.Weight?.ToString("F2") ?? "N/A")
+ Magazyn:@EdiCustomerOrderDto?.Warehouse
+ Gate:@EdiCustomerOrderDto?.Gate
+ Kod odbiorcy:@EdiCustomerOrderDto?.RecipientCode
+ Kod wysyłającego:@EdiCustomerOrderDto?.SenderCode
+ Kod sprzedawcy:@EdiCustomerOrderDto?.SellerCode
+ Kod kupującego:@EdiCustomerOrderDto?.BuyerCode
+ Typ dokumentu:@EdiCustomerOrderDto?.DocType
+
+
+
+

-
-

Indeksy

-
-
- - - - @context.CustomerOrderLine - - - @context.Item - - - @context.CustomerItemNumber - - - @context.Description - - - @context.BlanketQty - - - @context.Uom - - - @context.ContPrice - - - @context.TranslatedStatus - - - -
+
Indeksy
+ + + + @{ + var order = context as EdiCustomerOrderLineDto; + + +
+
Szczegóły
+
+ Numer zamówienia EDI:@order?.CustomerOrderNumber
+ Linia:@order?.CustomerOrderLine
+ Pozycja:@order?.Item
+ Pozycja Klienta:@order?.CustomerItemNumber
+ Opis:@order?.Description
+ Łączna Ilość:@(order?.BlanketQty?.ToString("F2") ?? "N/A")
+ Status:@order?.TranslatedStatus
+
+
+ Cena:@(order?.ContPrice?.ToString("F2") ?? "N/A")
+ Ważne Od:@(order?.EffectiveDate?.ToString("dd.MM.yyyy") ?? "N/A")
+ J/M:@order?.Uom
+ BoxType:@order?.BoxType
+ Address:@order?.Address
+ FinalDestination:@order?.FinalDestination
+ QtyPerBox:@(order?.QtyPerBox?.ToString() ?? "N/A") +
+
+
+
+ } +
+
+ + + + + + + + + + + + + + +
@if (_isVisibleEdiCustomerOrderLine) { -
-

Szczegóły

-
-
-
- - - Numer zamówienia EDI:@context.CustomerOrderNumber
- Linia:@context.CustomerOrderLine
- Pozycja:@context.Item
- Pozycja Klienta:@context.CustomerItemNumber
- Opis:@context.Description
- Łączna Ilość:@(context.BlanketQty?.ToString("F2") ?? "N/A")
- Status:@context.TranslatedStatus
-
-
-
-
- - - Cena:@(context.ContPrice?.ToString("F2") ?? "N/A")
- Ważne Od:@(context.EffectiveDate?.ToString("dd.MM.yyyy") ?? "N/A")
- J/M:@context.Uom
- BoxType:@context.BoxType
- Address:@context.Address
- FinalDestination:@context.FinalDestination
- QtyPerBox:@(context.QtyPerBox?.ToString() ?? "N/A") -
-
-
-
-
-

Harmonogramy

-
- - - - @context.CustomerOrderLine - - - @context.CustomerOrderRelease - - - @context.Item - - - @context.CustomerItem - - - @context.QtyOrdered - - - @context.DueDate?.ToString("dd.MM.yyyy") - - - @context.TranslatedStatus - - - -
-}@if (_isVisibleEdiCustomerOrderLineItem) -{ -
-

Szczegóły

-
-
-
- - - Numer Zamówienia:@context.CustomerOrderNumber
- Linia:@context.CustomerOrderLine
- Zwolnienie:@context.CustomerOrderRelease
- Pozycja:@context.Item
- Pozycja Klienta:@context.CustomerItem
- Łą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.Warehouse
- Typ Documentu:@context.DocumentType
-
-
-
-
- - - Kod VAT:@context.TaxCodeOne
- J/M:@context.Uom
- Numer Klienta:@context.CustomerOrderCustomerNumber
- Opis:@context.Description
- Status:@context.TranslatedStatus
- RoutingCode:@context.RoutingCode
- DeliveryCallNumber:@context.DeliveryCallNumber
- UnloadingPoint:@context.UnloadingPoint
- DestinationPoint:@context.DestinationPoint
- PalletCode:@context.PalletCode
- PalletNumber:@context.PalletNumber -
-
-
-
+
+
Harmonogramy
+ + + + @{ + var detailLineItem = context as EdiCustomerOrderLineItemDto; + + +
+
Szczegóły
+
+ Numer Zamówienia:@detailLineItem?.CustomerOrderNumber
+ Linia:@detailLineItem?.CustomerOrderLine
+ Zwolnienie:@detailLineItem?.CustomerOrderRelease
+ Pozycja:@detailLineItem?.Item
+ Pozycja Klienta:@detailLineItem?.CustomerItem
+ Łączna Ilość Sztuk:@(detailLineItem?.QtyOrdered?.ToString("F2") ?? "N/A")
+ Cena:@(detailLineItem?.Price?.ToString("F2") ?? "N/A")
+ Data Wykonania:@(detailLineItem?.DueDate?.ToString("dd.MM.yyyy") ?? "N/A")
+ Data Rejestracji:@(detailLineItem?.ReleaseDate?.ToString("dd.MM.yyyy") ?? "N/A")
+ Magazyn:@detailLineItem?.Warehouse
+ Typ Documentu:@detailLineItem?.DocumentType
+
+
+ Kod VAT:@detailLineItem?.TaxCodeOne
+ J/M:@detailLineItem?.Uom
+ Numer Klienta:@detailLineItem?.CustomerOrderCustomerNumber
+ Opis:@detailLineItem?.Description
+ Status:@detailLineItem?.TranslatedStatus
+ RoutingCode:@detailLineItem?.RoutingCode
+ DeliveryCallNumber:@detailLineItem?.DeliveryCallNumber
+ UnloadingPoint:@detailLineItem?.UnloadingPoint
+ DestinationPoint:@detailLineItem?.DestinationPoint
+ PalletCode:@detailLineItem?.PalletCode
+ PalletNumber:@detailLineItem?.PalletNumber +
+
+
+
+ } +
+
+ + + + + + + + + + + + +
} + @code { + [Parameter] public Guid CustomerOrderId { get; set; } - [Parameter] - public Guid CustomerOrderId { get; set; } + private EdiCustomerOrderDto? EdiCustomerOrderDto { get; set; } + private List _ediCustomerOrderLines = []; + private List _ediCustomerOrderLineItems = []; - List? _ediCustomerOrder; - List _ediCustomerOrderLines = []; - List _ediCustomerOrderLineItems = []; - - List _selectedEdiCustomerOrderLine = []; - List _selectedEdiCustomerOrderLineItem = []; + EdiCustomerOrderLineDto? _selectedEdiCustomerOrderLine; - Grid? _ediCustomerOrderLinesGrid; - Grid? _ediCustomerOrderLineItemsGrid; + SfGrid? _ediCustomerOrderLinesGrid; + SfGrid? _ediCustomerOrderLineItemsGrid; private bool _isVisibleEdiCustomerOrderLine; - private bool _isVisibleEdiCustomerOrderLineItem; protected override async Task OnInitializedAsync() { EdiCustomerOrderDto? ediCustomerOrder = await EdiCustomerOrderService.GetEdiCustomerOrderAsync(CustomerOrderId); - - _ediCustomerOrder = [ediCustomerOrder]; + + EdiCustomerOrderDto = ediCustomerOrder; _ediCustomerOrderLines = ediCustomerOrder?.EdiCustomerOrderLines.ToList() ?? []; } - private void SelectedEdiCustomerOrderLineChanged(HashSet obj) + private void OnSelectedLineRow(RowSelectEventArgs obj) { - _isVisibleEdiCustomerOrderLine = obj.Any(); - _selectedEdiCustomerOrderLine = [obj.FirstOrDefault()]; - _ediCustomerOrderLineItems = obj.FirstOrDefault()?.EdiCustomerOrderLineItems.ToList() ?? []; - } - - private void SelectedEdiCustomerOrderLineItemChanged(HashSet obj) - { - _isVisibleEdiCustomerOrderLineItem = obj.Any(); - _selectedEdiCustomerOrderLineItem = [obj.FirstOrDefault()]; + _isVisibleEdiCustomerOrderLine = obj.Data is not null; + _selectedEdiCustomerOrderLine = obj.Data as EdiCustomerOrderLineDto; + _ediCustomerOrderLineItems = _selectedEdiCustomerOrderLine?.EdiCustomerOrderLineItems.ToList() ?? []; } } + + + + + + diff --git a/OrdersManagement/Components/Pages/EdiCustomerOrders.razor b/OrdersManagement/Components/Pages/EdiCustomerOrders.razor index 41d857f..d83e14f 100644 --- a/OrdersManagement/Components/Pages/EdiCustomerOrders.razor +++ b/OrdersManagement/Components/Pages/EdiCustomerOrders.razor @@ -4,126 +4,146 @@ @inject NavigationManager NavigationManager @using OrdersManagement.Dtos @using SytelineSaAppEfDataModel.Dtos -@using BlazorBootstrap +@using Syncfusion.Blazor.Grids +@using Syncfusion.Blazor.Cards +@using Syncfusion.Blazor.Popups +@using Syncfusion.Blazor.Buttons +@using SelectionType = Syncfusion.Blazor.Grids.SelectionType @inherits LayoutComponentBase -
-

Zamówienia Klienta EDI

-
-
+
Zamówienia Klienta EDI
- + +
-
+
@if (_isVisible) {
- + @_text
+
} -
-
- - - - - @context.CustomerOrderNumber - - - @context.CustomerPoNumber - - - @context.CustomerNumber - - - @context.CustomerName - - - @context.CustomerSequence - - - @context.CreateDate - - - @context.SlOrderNumber - - - @context.SentToSl - - - -
- - - - @if (_responses.Any(x => x.Status == 1)) - { - foreach (ResponseDto response in _responses.Where(x => x.Status == 1)) - { -

Zamówienie EDI @response.Identifier zostało poprawnie zaksięgowane w Zamówieniach klienta pod numerem '@response.ExternalIdentifier'

+ + + + @{ + var order = context as EdiCustomerOrderDto; + + +
+
+ Numer zamówienia EDI:@order?.CustomerOrderNumber
+ Numer zamówienia Klienta:@order?.CustomerPoNumber
+ Numer klienta:@order?.CustomerNumber
+ Klient:@order?.CustomerName
+ Numer odbiorcy:@(order?.CustomerSequence?.ToString() ?? "N/A")
+ Data + otrzymania:@(order?.RecivedDate?.ToString("dd.MM.yyyy") ?? "N/A")
+ Wysłano do + Syteline?:@((order?.Posted?.ToString() ?? "0") == "0" ? "NIE" : "TAK")
+ Data wysyłki do + Syteline:@(order?.PostedDate?.ToString("dd.MM.yyyy") ?? "N/A")
+ Data zamówienia:@(order?.OrderDate?.ToString("dd.MM.yyyy") ?? "N/A")
+
+
+ Cena:@(order?.Price?.ToString("F2") ?? "N/A")
+ Waga:@(order?.Weight?.ToString("F2") ?? "N/A")
+ Magazyn:@order?.Warehouse
+ Gate:@order?.Gate
+ Kod odbiorcy:@order?.RecipientCode
+ Kod wysyłającego:@order?.SenderCode
+ Kod sprzedawcy:@order?.SellerCode
+ Kod kupującego:@order?.BuyerCode
+ Typ dokumentu:@order?.DocType
+
+
+
+
} - } - @if (_responses.Any(x => x.Status == 0)) - { - foreach (ResponseDto response in _responses.Where(x => x.Status == 0)) +
+
+ + + + + + + + + + + + + +
+ + + + + @if (_responses.Any(x => x.Status == 1)) { -

Błąd: Zamówienie EDI @response.Identifier nie zostało poprawnie zaksięgowane w Zamówieniach klienta.
Lista błędów:
@response.Message

+ foreach (ResponseDto response in _responses.Where(x => x.Status == 1)) + { +

Zamówienie EDI @response.Identifier zostało poprawnie zaksięgowane w Zamówieniach klienta pod + numerem '@response.ExternalIdentifier'

+ } } - } -
- - - -
+ @if (_responses.Any(x => x.Status == 0)) + { + foreach (ResponseDto response in _responses.Where(x => x.Status == 0)) + { +

Błąd: Zamówienie EDI @response.Identifier nie zostało poprawnie zaksięgowane w Zamówieniach + klienta.
Lista błędów:
@response.Message

+ } + } + + + + + + @code { - Grid? _grid; - private List _ediCustomerOrders = new(); - private List _selectedEdiCustomerOrders = new(); + private bool Visibility { get; set; } + private SfGrid? _grid; + + private IEnumerable _ediCustomerOrders = []; + private List _selectedEdiCustomerOrders = new(); + private List _responses = new(); - private Modal _modal = null!; - private bool _isVisible; - private bool _filter; + private bool? _filter = false; private string _text = "Księguj bieżący"; - private async Task> EdiCustomerOrdersDataProvider(GridDataProviderRequest request) + protected override async Task OnInitializedAsync() { - _ediCustomerOrders = (await EdiCustomerOrderService.GetEdiCustomerOrdersAsync() ?? new List()).ToList(); - _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)); + await LoadData(); } - private void OnRowDoubleClick(GridRowEventArgs obj) + private void OnRowDoubleClick(RecordDoubleClickEventArgs obj) { - Guid customerOrderId = obj.Item.RowPointer; + Guid customerOrderId = obj.RowData.RowPointer; NavigationManager.NavigateTo($"/EdiCustomerOrder/{customerOrderId}"); } @@ -142,35 +162,57 @@ { response.ExternalIdentifier = selectedEdiCustomerOrder.EdiCustomerOrderTranslates.FirstOrDefault()?.CoCoNum; } - + _responses.Add(response); } - - await _modal.ShowAsync(); - _grid?.RefreshDataAsync(); + Visibility = true; + + await LoadData(); + + _grid?.Refresh(); + + _isVisible = false; + return true; } - private void SelectedItemsChanged(HashSet obj) + private void HideModal() { + Visibility = false; + } + + private async Task RowSelected(RowSelectEventArgs obj) + { + List selectedRecords = await _grid.GetSelectedRecordsAsync(); + _isVisible = false; - if (!obj.Any()) return; - - _selectedEdiCustomerOrders = obj.ToList(); + if (!selectedRecords.Any()) return; + + _selectedEdiCustomerOrders = selectedRecords; _isVisible = _selectedEdiCustomerOrders.Any(x => x.Posted == 0); - _text = obj.Count > 1 ? "Księguj zaznaczone" : "Księguj bieżący"; + _text = selectedRecords.Count > 1 ? "Księguj zaznaczone" : "Księguj bieżący"; } - private async Task OnHideModalClick() + private async Task FilterChanged(ChangeEventArgs obj) { - await _modal.HideAsync(); + _filter = obj.Checked; + await LoadData(); + _grid?.Refresh(); } - private void FilterChanged(bool obj) + private async Task LoadData() { - _filter = obj; - _grid?.RefreshDataAsync(); + _ediCustomerOrders = await EdiCustomerOrderService.GetEdiCustomerOrdersAsync() ?? new List(); + + if (_filter == false) + { + _ediCustomerOrders = _ediCustomerOrders.Where(x => x.Posted == 0).ToList(); + } + + _ediCustomerOrders = _ediCustomerOrders.OrderByDescending(x => x.CreateDate).ToList(); + + StateHasChanged(); } } diff --git a/OrdersManagement/OrdersManagement.csproj b/OrdersManagement/OrdersManagement.csproj index e68683d..c76f6c2 100644 --- a/OrdersManagement/OrdersManagement.csproj +++ b/OrdersManagement/OrdersManagement.csproj @@ -8,6 +8,7 @@ +