56 lines
1.4 KiB
C#
56 lines
1.4 KiB
C#
using AyCode.Blazor.Models.ViewModels;
|
|
using TIAM.Entities.Emails;
|
|
using TIAM.Models.PageViewModels;
|
|
using EmailMessage = TIAM.Entities.Emails.EmailMessage;
|
|
|
|
namespace TIAM.Models;
|
|
|
|
public class SiteViewModel : AcSiteViewModel
|
|
{
|
|
private readonly object _forLock = new();
|
|
|
|
public int UnreadMessagesCount => UnreadMessages.Count;
|
|
public List<EmailMessage> UnreadMessages { get; } = [];
|
|
|
|
public DriverManageTransfersPageModel DriverManageTransfersPageModel { get; } = new();
|
|
|
|
public SiteViewModel()
|
|
{}
|
|
|
|
public SiteViewModel(IEnumerable<EmailMessage> unreadMessages)
|
|
{
|
|
Initialize(unreadMessages);
|
|
}
|
|
|
|
public void Initialize(SiteViewModel siteViewModel)
|
|
{
|
|
lock (_forLock)
|
|
{
|
|
//A PageViewModel-eket itt nem Initialize-oljuk, azok majd lefutnak miokor használjuk őket! - J.
|
|
|
|
Initialize(siteViewModel.UnreadMessages);
|
|
}
|
|
}
|
|
|
|
public void Initialize(IEnumerable<EmailMessage> unreadMessages)
|
|
{
|
|
lock (_forLock)
|
|
{
|
|
UnreadMessages.Clear();
|
|
UnreadMessages.AddRange(unreadMessages);
|
|
|
|
//UnreadMessagesCount = UnreadMessages.Count;
|
|
}
|
|
}
|
|
|
|
public void ClearAll()
|
|
{
|
|
lock (_forLock)
|
|
{
|
|
//UnreadMessagesCount = 0;
|
|
|
|
UnreadMessages.Clear();
|
|
DriverManageTransfersPageModel.ClearAll();
|
|
}
|
|
}
|
|
} |