TransferStatusModel improvements, fixes

This commit is contained in:
Loretta 2024-08-31 09:49:22 +02:00
parent 17529c008f
commit a31d8ef40d
3 changed files with 37 additions and 20 deletions

View File

@ -109,7 +109,7 @@
@RenderDetailsItem("fa-solid fa-hashtag", "Comment", Context.Comment) @RenderDetailsItem("fa-solid fa-hashtag", "Comment", Context.Comment)
</div> </div>
<div class="col-12 col-md-6"> <div class="col-12 col-md-6">
@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)
</div> </div>
<div class="col-9 col-md-5"> <div class="col-9 col-md-5">
<DxComboBox Data="@DriverStatuses" <DxComboBox Data="@DriverStatuses"
@ -178,7 +178,7 @@
private static readonly IEnumerable<TransferStatusModel> DriverStatuses = TransferStatusModel.AllStatuses.Where(x => x.StatusValue is TransferStatusType.DriverConfirmed or private static readonly IEnumerable<TransferStatusModel> DriverStatuses = TransferStatusModel.AllStatuses.Values.Where(x => x.StatusValue is TransferStatusType.DriverConfirmed or
TransferStatusType.DriverEnRoute or TransferStatusType.PassengerPickup or TransferStatusType.Finished or TransferStatusType.UserCanceled); TransferStatusType.DriverEnRoute or TransferStatusType.PassengerPickup or TransferStatusType.Finished or TransferStatusType.UserCanceled);
// private static readonly IEnumerable<TransferStatusModel> Statuses = new[] // private static readonly IEnumerable<TransferStatusModel> Statuses = new[]
@ -232,7 +232,7 @@
var result = await AdminSignalRClient.PostDataAsync<Transfer>(SignalRTags.UpdateTransfer, Context); var result = await AdminSignalRClient.PostDataAsync<Transfer>(SignalRTags.UpdateTransfer, Context);
if (result != null) if (result != null)
{ {
if (TransferStatusModel.AllStatuses.FirstOrDefault(x => x.StatusValue == result.TransferStatusType) == CurrentStatusType) if (TransferStatusModel.GetStatusModel(result.TransferStatusType) == CurrentStatusType)
{ {
msg = $"Stataus saved"; msg = $"Stataus saved";
StateHasChanged(); StateHasChanged();
@ -275,7 +275,7 @@
protected override Task OnParametersSetAsync() protected override Task OnParametersSetAsync()
{ {
CurrentStatusType = TransferStatusModel.AllStatuses.FirstOrDefault(x => x.StatusValue == Context.TransferStatusType)!; CurrentStatusType = TransferStatusModel.GetStatusModel(Context.TransferStatusType);
return base.OnParametersSetAsync(); return base.OnParametersSetAsync();
} }

View File

@ -134,7 +134,7 @@
<CellDisplayTemplate> <CellDisplayTemplate>
@{ @{
TransferStatusModel keyField = TransferStatusModel.AllStatuses.FirstOrDefault(x => x.StatusValue == (TransferStatusType)context.Value)!; TransferStatusModel keyField = TransferStatusModel.GetStatusModel((TransferStatusType)context.Value);
string transferStatusText = keyField.StatusName; string transferStatusText = keyField.StatusName;
<text>@transferStatusText</text> <text>@transferStatusText</text>
} }
@ -200,7 +200,7 @@
<ToolbarTemplate> <ToolbarTemplate>
<div> <div>
<DxTagBox Data="@TransferStatusModel.AllStatuses" Values="@_selectedCategories" @ref="_filterTag" <DxTagBox Data="@TransferStatusModel.AllStatuses.Values" Values="@_selectedCategories" @ref="_filterTag"
ValuesChanged="(IEnumerable<TransferStatusModel> values) => TagBox_ValuesChanged(values)" ValuesChanged="(IEnumerable<TransferStatusModel> values) => TagBox_ValuesChanged(values)"
ValueFieldName="StatusValue" TextFieldName="StatusName" NullText="Select status type..." ValueFieldName="StatusValue" TextFieldName="StatusName" NullText="Select status type..."
ClearButtonDisplayMode="DataEditorClearButtonDisplayMode.Auto" aria-label="Select status type" /> ClearButtonDisplayMode="DataEditorClearButtonDisplayMode.Auto" aria-label="Select status type" />
@ -258,7 +258,7 @@
"ContextType" "ContextType"
]; ];
private static List<TransferStatusModel> _selectedCategories = TransferStatusModel.AllStatuses.Where(x => x.StatusValue != TransferStatusType.Finished && x.StatusValue != TransferStatusType.UserCanceled && x.StatusValue != TransferStatusType.AdminDenied).ToList(); private static List<TransferStatusModel> _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 string _filterText = GetFilterText(_selectedCategories.Select(x => x.StatusValue).ToList());
private MessageWizardModel _messageWizardModel = new(); private MessageWizardModel _messageWizardModel = new();

View File

@ -12,18 +12,35 @@ namespace TIAMWebApp.Shared.Application.Models.ClientSide.UI
StatusValue = statusValue; StatusValue = statusValue;
StatusName = statusName; StatusName = statusName;
} }
public static readonly List<TransferStatusModel> AllStatuses = public static TransferStatusModel GetStatusModel(TransferStatusType transferStatusType)
[ => AllStatuses[transferStatusType];
new(TransferStatusType.OrderSubmitted, "Order submitted"),
new(TransferStatusType.OrderConfirmed, "Order confirmed"), //TODO: ez nem igazán a TransferStatusModel-re való... - J.
new(TransferStatusType.AssignedToDriver, "Assigned to driver"), public static readonly Dictionary<TransferStatusType, TransferStatusModel> AllStatuses = new()
new(TransferStatusType.DriverConfirmed, "Driver confirmed"), {
new(TransferStatusType.DriverEnRoute, "Driver enroute"), [TransferStatusType.OrderSubmitted] = new TransferStatusModel(TransferStatusType.OrderSubmitted, "Order submitted"),
new(TransferStatusType.PassengerPickup, "Passenger in car"), [TransferStatusType.OrderConfirmed] = new TransferStatusModel(TransferStatusType.OrderConfirmed, "Order confirmed"),
new(TransferStatusType.Finished, "Finished"), [TransferStatusType.AssignedToDriver] = new TransferStatusModel(TransferStatusType.AssignedToDriver, "Assigned to driver"),
new(TransferStatusType.UserCanceled, "User cancelled"), [TransferStatusType.DriverConfirmed] = new TransferStatusModel(TransferStatusType.DriverConfirmed, "Driver confirmed"),
new(TransferStatusType.AdminDenied, "Admin cancelled") [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<TransferStatusType, TransferStatusModel> 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")
//];
} }
} }