Files
mapo-core/MP.INVE/Components/CmpTop.razor.cs
T
2022-11-28 12:21:37 +01:00

97 lines
2.6 KiB
C#

using Blazored.SessionStorage;
using Blazored.LocalStorage;
using Microsoft.AspNetCore.Components;
using Microsoft.JSInterop;
using MP.Data.DTO;
using MP.INVE.Data;
namespace MP.INVE.Components
{
public partial class CmpTop
{
#region Public Methods
public async Task flushCache()
{
await Task.Delay(1);
await Task.Delay(1);
await MIDataService.FlushRedisCache();
// rimando a pagina corrente
NavManager.NavigateTo(NavManager.Uri, true);
}
public async Task LogOut()
{
await localStorage.ClearAsync();
// rimando a pagina login
NavManager.NavigateTo("OperatoreLogin", true);
}
#endregion Public Methods
#region Protected Properties
[Inject]
protected IJSRuntime JSRuntime { get; set; } = null!;
[Inject]
protected MiDataService MIDataService { get; set; } = null!;
#endregion Protected Properties
#region Protected Methods
protected async Task getId()
{
OperatoreDTO answ = new OperatoreDTO();
answ = await localStorage.GetItemAsync<OperatoreDTO>("MatrOpr");
if (!NavManager.Uri.Contains("Jumper?"))
{
if (answ != null)
{
userName = $"{answ.Cognome} {answ.Nome} ({answ.MatrOpr})";
if (NavManager.Uri.Contains("OperatoreLogin"))
{
NavManager.NavigateTo("Starter", true);
}
}
else
{
userName = "0";
if (!NavManager.Uri.Contains("OperatoreLogin"))
{
NavManager.NavigateTo("OperatoreLogin", true);
}
}
}
}
protected override async Task OnInitializedAsync()
{
await getId();
}
protected override async Task OnAfterRenderAsync(bool firstRender)
{
await getId();
}
#endregion Protected Methods
#region Private Fields
private string userName = "";
#endregion Private Fields
#region Private Properties
[Inject]
private NavigationManager NavManager { get; set; } = null!;
[Inject]
private ISessionStorageService sessionStorage { get; set; } = null!;
[Inject]
private ILocalStorageService localStorage { get; set; } = null!;
#endregion Private Properties
}
}