From a31d8ef40dd2c3a460d9fec80413e809c4424ab0 Mon Sep 17 00:00:00 2001 From: Loretta Date: Sat, 31 Aug 2024 09:49:22 +0200 Subject: [PATCH] TransferStatusModel improvements, fixes --- .../TransferCardComponent.razor | 8 ++-- .../User/SysAdmins/ManageTransfers.razor | 6 +-- .../ClientSide/UI/TransferStatusModel.cs | 43 +++++++++++++------ 3 files changed, 37 insertions(+), 20 deletions(-) diff --git a/TIAMSharedUI/Pages/User/CardComponents/TransferCardComponent.razor b/TIAMSharedUI/Pages/User/CardComponents/TransferCardComponent.razor index ea7cc8cc..ecb217e1 100644 --- a/TIAMSharedUI/Pages/User/CardComponents/TransferCardComponent.razor +++ b/TIAMSharedUI/Pages/User/CardComponents/TransferCardComponent.razor @@ -109,7 +109,7 @@ @RenderDetailsItem("fa-solid fa-hashtag", "Comment", Context.Comment)
- @RenderDetailsItem("fa-solid fa-list-check", "Status", TransferStatusModel.AllStatuses.FirstOrDefault(x => x.StatusValue == Context.TransferStatusType)!.StatusName) + @RenderDetailsItem("fa-solid fa-list-check", "Status", TransferStatusModel.GetStatusModel(Context.TransferStatusType).StatusName)
DriverStatuses = TransferStatusModel.AllStatuses.Where(x => x.StatusValue is TransferStatusType.DriverConfirmed or + private static readonly IEnumerable DriverStatuses = TransferStatusModel.AllStatuses.Values.Where(x => x.StatusValue is TransferStatusType.DriverConfirmed or TransferStatusType.DriverEnRoute or TransferStatusType.PassengerPickup or TransferStatusType.Finished or TransferStatusType.UserCanceled); // private static readonly IEnumerable Statuses = new[] @@ -232,7 +232,7 @@ var result = await AdminSignalRClient.PostDataAsync(SignalRTags.UpdateTransfer, Context); if (result != null) { - if (TransferStatusModel.AllStatuses.FirstOrDefault(x => x.StatusValue == result.TransferStatusType) == CurrentStatusType) + if (TransferStatusModel.GetStatusModel(result.TransferStatusType) == CurrentStatusType) { msg = $"Stataus saved"; StateHasChanged(); @@ -275,7 +275,7 @@ protected override Task OnParametersSetAsync() { - CurrentStatusType = TransferStatusModel.AllStatuses.FirstOrDefault(x => x.StatusValue == Context.TransferStatusType)!; + CurrentStatusType = TransferStatusModel.GetStatusModel(Context.TransferStatusType); return base.OnParametersSetAsync(); } diff --git a/TIAMSharedUI/Pages/User/SysAdmins/ManageTransfers.razor b/TIAMSharedUI/Pages/User/SysAdmins/ManageTransfers.razor index b4ce16d3..37cf6796 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/ManageTransfers.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/ManageTransfers.razor @@ -134,7 +134,7 @@ @{ - TransferStatusModel keyField = TransferStatusModel.AllStatuses.FirstOrDefault(x => x.StatusValue == (TransferStatusType)context.Value)!; + TransferStatusModel keyField = TransferStatusModel.GetStatusModel((TransferStatusType)context.Value); string transferStatusText = keyField.StatusName; @transferStatusText } @@ -200,7 +200,7 @@
- @@ -258,7 +258,7 @@ "ContextType" ]; - private static List _selectedCategories = TransferStatusModel.AllStatuses.Where(x => x.StatusValue != TransferStatusType.Finished && x.StatusValue != TransferStatusType.UserCanceled && x.StatusValue != TransferStatusType.AdminDenied).ToList(); + private static List _selectedCategories = TransferStatusModel.AllStatuses.Values.Where(x => x.StatusValue != TransferStatusType.Finished && x.StatusValue != TransferStatusType.UserCanceled && x.StatusValue != TransferStatusType.AdminDenied).ToList(); private string _filterText = GetFilterText(_selectedCategories.Select(x => x.StatusValue).ToList()); private MessageWizardModel _messageWizardModel = new(); diff --git a/TIAMWebApp/Shared/Models/ClientSide/UI/TransferStatusModel.cs b/TIAMWebApp/Shared/Models/ClientSide/UI/TransferStatusModel.cs index 22fa7cf2..044a67c4 100644 --- a/TIAMWebApp/Shared/Models/ClientSide/UI/TransferStatusModel.cs +++ b/TIAMWebApp/Shared/Models/ClientSide/UI/TransferStatusModel.cs @@ -12,18 +12,35 @@ namespace TIAMWebApp.Shared.Application.Models.ClientSide.UI StatusValue = statusValue; StatusName = statusName; } - - public static readonly List AllStatuses = - [ - new(TransferStatusType.OrderSubmitted, "Order submitted"), - new(TransferStatusType.OrderConfirmed, "Order confirmed"), - new(TransferStatusType.AssignedToDriver, "Assigned to driver"), - new(TransferStatusType.DriverConfirmed, "Driver confirmed"), - new(TransferStatusType.DriverEnRoute, "Driver enroute"), - new(TransferStatusType.PassengerPickup, "Passenger in car"), - new(TransferStatusType.Finished, "Finished"), - new(TransferStatusType.UserCanceled, "User cancelled"), - new(TransferStatusType.AdminDenied, "Admin cancelled") - ]; + + public static TransferStatusModel GetStatusModel(TransferStatusType transferStatusType) + => AllStatuses[transferStatusType]; + + //TODO: ez nem igazán a TransferStatusModel-re való... - J. + public static readonly Dictionary AllStatuses = new() + { + [TransferStatusType.OrderSubmitted] = new TransferStatusModel(TransferStatusType.OrderSubmitted, "Order submitted"), + [TransferStatusType.OrderConfirmed] = new TransferStatusModel(TransferStatusType.OrderConfirmed, "Order confirmed"), + [TransferStatusType.AssignedToDriver] = new TransferStatusModel(TransferStatusType.AssignedToDriver, "Assigned to driver"), + [TransferStatusType.DriverConfirmed] = new TransferStatusModel(TransferStatusType.DriverConfirmed, "Driver confirmed"), + [TransferStatusType.DriverEnRoute] = new TransferStatusModel(TransferStatusType.DriverEnRoute, "Driver enroute"), + [TransferStatusType.PassengerPickup] = new TransferStatusModel(TransferStatusType.PassengerPickup, "Passenger in car"), + [TransferStatusType.Finished] = new TransferStatusModel(TransferStatusType.Finished, "Finished"), + [TransferStatusType.UserCanceled] = new TransferStatusModel(TransferStatusType.UserCanceled, "User cancelled"), + [TransferStatusType.AdminDenied] = new TransferStatusModel(TransferStatusType.AdminDenied, "Admin cancelled"), + }; + + //public static readonly Dictionary AllStatuses = + //[ + // new(TransferStatusType.OrderSubmitted, "Order submitted"), + // new(TransferStatusType.OrderConfirmed, "Order confirmed"), + // new(TransferStatusType.AssignedToDriver, "Assigned to driver"), + // new(TransferStatusType.DriverConfirmed, "Driver confirmed"), + // new(TransferStatusType.DriverEnRoute, "Driver enroute"), + // new(TransferStatusType.PassengerPickup, "Passenger in car"), + // new(TransferStatusType.Finished, "Finished"), + // new(TransferStatusType.UserCanceled, "User cancelled"), + // new(TransferStatusType.AdminDenied, "Admin cancelled") + //]; } }