This commit is contained in:
Adam 2024-08-19 23:34:34 +02:00
commit a3a2106be9
2 changed files with 12 additions and 11 deletions

View File

@ -8,13 +8,14 @@ namespace TIAM.Models.PageViewModels;
public class DriverManageTransfersPageModel : AcPageViewModelBase public class DriverManageTransfersPageModel : AcPageViewModelBase
{ {
private readonly object _forLock = new(); private readonly object _forLock = new();
private const int AppointmentWaitingHours = 3;
public int UnreadedMessagesCount { get; set; } public int UnreadedMessagesCount { get; set; }
public List<Transfer> Transfers { get; set; } = []; public List<Transfer> Transfers { get; set; } = [];
private readonly List<Transfer> _upcomings = []; private readonly List<Transfer> _upcomings = [];
private readonly List<Transfer> _problems = []; private readonly List<Transfer> _problems = [];
/// <summary> /// <summary>
/// Value set on the client side! /// Value set on the client side!
@ -29,7 +30,9 @@ public class DriverManageTransfersPageModel : AcPageViewModelBase
if (_upcomings.Count > 0) return _upcomings; if (_upcomings.Count > 0) return _upcomings;
var localNow = DateTime.Now; var localNow = DateTime.Now;
_upcomings.AddRange(Transfers.Where(x => x.Appointment >= localNow)); var localNowSubstractWaitingHour = localNow.AddHours(-1 * AppointmentWaitingHours);
_upcomings.AddRange(Transfers.Where(x => x.Appointment >= localNowSubstractWaitingHour));
} }
return _upcomings; return _upcomings;
@ -49,9 +52,9 @@ public class DriverManageTransfersPageModel : AcPageViewModelBase
if (_problems.Count > 0) return _problems; if (_problems.Count > 0) return _problems;
var localNow = DateTime.Now; var localNow = DateTime.Now;
var localNowAddedThreeHour = localNow.AddHours(3); var localNowAddedWaitingHour = localNow.AddHours(AppointmentWaitingHours);
_problems.AddRange(Transfers.Where(x => x.Appointment < localNowAddedThreeHour && x.TransferStatusType != TransferStatusType.Finished)); _problems.AddRange(Transfers.Where(x => x.Appointment < localNowAddedWaitingHour && x.TransferStatusType != TransferStatusType.Finished));
} }
return _problems; return _problems;

View File

@ -387,28 +387,26 @@
{ {
_logger = new LoggerClient<DriverManageTransfers>(LogWriters.ToArray()); _logger = new LoggerClient<DriverManageTransfers>(LogWriters.ToArray());
InitializePage(DriverId); InitializePageAsync(DriverId).Forget();
await base.OnInitializedAsync(); await base.OnInitializedAsync();
} }
private void InitializePage(Guid driverId2) private Task InitializePageAsync(Guid driverId2)
{ {
AdminSignalRClient.GetByIdAsync<DriverManageTransfersPageModel>(SignalRTags.GetDriverManageTransfersPageModelByDriverId, response=> return AdminSignalRClient.GetByIdAsync<DriverManageTransfersPageModel>(SignalRTags.GetDriverManageTransfersPageModelByDriverId, response =>
{ {
if (response.Status == SignalResponseStatus.Error || response.ResponseData == null) if (response.Status == SignalResponseStatus.Error || response.ResponseData == null)
{ {
_logger.Error("response.Status == SignalResponseStatus.Error || response.ResponseData == null"); _logger.Error("response.Status == SignalResponseStatus.Error || response.ResponseData == null");
return Task.CompletedTask;
} }
else PageModel.Initialize(response.ResponseData);
PageModel.Initialize(response.ResponseData);
InitializeAppointments(PageModel.Transfers); InitializeAppointments(PageModel.Transfers);
StateHasChanged(); StateHasChanged();
return Task.CompletedTask; return Task.CompletedTask;
}, driverId2).Forget(); }, driverId2);
} }
private void GroupTransfers(List<Transfer> transferDataList) private void GroupTransfers(List<Transfer> transferDataList)