diff --git a/MP.Mon/Components/CmpFooter.razor.cs b/MP.Mon/Components/CmpFooter.razor.cs index cd49cc68..73e92bc2 100644 --- a/MP.Mon/Components/CmpFooter.razor.cs +++ b/MP.Mon/Components/CmpFooter.razor.cs @@ -18,10 +18,10 @@ namespace MP.Mon.Components var pUpd = Task.Run(async () => { await Task.Delay(1); - await InvokeAsync(StateHasChanged); + await InvokeAsync(() => StateHasChanged()); }); pUpd.Wait(); - Log.Trace($"Elapsed Timer Footer"); + //Log.Trace($"Elapsed Timer Footer"); } public void StartTimer() diff --git a/MP.Mon/Components/DetailMSE.razor.cs b/MP.Mon/Components/DetailMSE.razor.cs index 628920ea..39157140 100644 --- a/MP.Mon/Components/DetailMSE.razor.cs +++ b/MP.Mon/Components/DetailMSE.razor.cs @@ -74,7 +74,7 @@ namespace MP.Mon.Components { Log.Trace($"Elapsed Timer {CurrRecord?.CodMacchina}"); } - await InvokeAsync(StateHasChanged); + await InvokeAsync(() => StateHasChanged()); } OldRecord = CurrRecord; }); diff --git a/MP.Mon/Data/MpDataService.cs b/MP.Mon/Data/MpDataService.cs index cda398cd..327f4b53 100644 --- a/MP.Mon/Data/MpDataService.cs +++ b/MP.Mon/Data/MpDataService.cs @@ -108,19 +108,44 @@ namespace MP.Mon.Data return outVal; } + private string redisMseKey = "MP:MON:Cache:MSE"; + public Task> MacchineGetAll() { - return Task.FromResult(dbController.MacchineGetAll().ToList()); + return Task.FromResult(dbController.MacchineGetAll()); } - public Task> MseGetAll() + public async Task> MseGetAll() { +#if false var dbResult = dbController.MseGetAll(); if (dbResult == null) { dbResult = new List(); } - return Task.FromResult(dbResult); + return Task.FromResult(dbResult); +#endif + List result = new List(); + // cerco in redis... + var rawData = await redisDb.StringGetAsync(redisMseKey); + if (!string.IsNullOrEmpty(rawData)) + { + Log.Trace("Read from REDIS"); + result = JsonConvert.DeserializeObject>(rawData); + } + else + { + Log.Trace("Read from DB"); + result = await Task.FromResult(dbController.MseGetAll()); + // serializzp e salvo... + rawData = JsonConvert.SerializeObject(result); + await redisDb.StringSetAsync(redisMseKey, rawData, TimeSpan.FromSeconds(2)); + } + if (result == null) + { + result = new List(); + } + return result; } #endregion Public Methods diff --git a/MP.Mon/MP.Mon.csproj b/MP.Mon/MP.Mon.csproj index 0db5c7b8..94287724 100644 --- a/MP.Mon/MP.Mon.csproj +++ b/MP.Mon/MP.Mon.csproj @@ -4,7 +4,7 @@ net6.0 enable enable - 6.15.2207.818 + 6.15.2207.819 diff --git a/MP.Mon/Pages/Index.razor.cs b/MP.Mon/Pages/Index.razor.cs index e504cf38..9d4cae75 100644 --- a/MP.Mon/Pages/Index.razor.cs +++ b/MP.Mon/Pages/Index.razor.cs @@ -8,47 +8,6 @@ namespace MP.Mon.Pages { public partial class Index : IDisposable { - #region Protected Fields - - protected bool doAnimate = true; - protected int fastRefreshSec = 10; - protected int keepAliveMin = 1; - protected List? ListMSE = null; - protected int maxCol = 4; - protected string showArt = ""; - protected int slowRefreshSec = 300; - - #endregion Protected Fields - - #region Private Fields - - private static System.Timers.Timer fastTimer = new System.Timers.Timer(4000); - private static NLog.Logger Log = LogManager.GetCurrentClassLogger(); - private static System.Timers.Timer slowTimer = new System.Timers.Timer(300000); - private List? CurrConfig = null; - - #endregion Private Fields - - #region Protected Properties - - protected int fastRefreshMs - { - get => 1000 * fastRefreshSec; - } - - [Inject] - protected MpDataService MMDataService { get; set; } = null!; - - [Inject] - protected NavigationManager NavManager { get; set; } = null!; - - protected int slowRefreshMs - { - get => 1000 * slowRefreshSec; - } - - #endregion Protected Properties - #region Public Methods public void Dispose() @@ -97,6 +56,38 @@ namespace MP.Mon.Pages #endregion Public Methods + #region Protected Fields + + protected bool doAnimate = true; + protected int fastRefreshSec = 10; + protected int keepAliveMin = 1; + protected List? ListMSE = null; + protected int maxCol = 4; + protected string showArt = ""; + protected int slowRefreshSec = 300; + + #endregion Protected Fields + + #region Protected Properties + + protected int fastRefreshMs + { + get => 1000 * fastRefreshSec; + } + + [Inject] + protected MpDataService MMDataService { get; set; } = null!; + + [Inject] + protected NavigationManager NavManager { get; set; } = null!; + + protected int slowRefreshMs + { + get => 1000 * slowRefreshSec; + } + + #endregion Protected Properties + #region Protected Methods /// @@ -162,7 +153,8 @@ namespace MP.Mon.Pages } /// - /// Recupera da redis (in una chiamata soltanto) tutti i valori richiesti e compone un dizionario x ottimizzare visualizzazione + /// Recupera da redis (in una chiamata soltanto) tutti i valori richiesti e compone un + /// dizionario x ottimizzare visualizzazione /// /// /// @@ -188,6 +180,15 @@ namespace MP.Mon.Pages #endregion Protected Methods + #region Private Fields + + private static System.Timers.Timer fastTimer = new System.Timers.Timer(4000); + private static NLog.Logger Log = LogManager.GetCurrentClassLogger(); + private static System.Timers.Timer slowTimer = new System.Timers.Timer(300000); + private List? CurrConfig = null; + + #endregion Private Fields + #region Private Methods private async Task ReloadData() @@ -203,7 +204,6 @@ namespace MP.Mon.Pages #else ListMSE = await MMDataService.MseGetAll(); #endif - } private async Task setupConf() diff --git a/MP.Mon/Resources/ChangeLog.html b/MP.Mon/Resources/ChangeLog.html index d5198590..5c4ba563 100644 --- a/MP.Mon/Resources/ChangeLog.html +++ b/MP.Mon/Resources/ChangeLog.html @@ -1,6 +1,6 @@ Modulo MON MAPO -

Versione: 6.15.2207.818

+

Versione: 6.15.2207.819


Note di rilascio:
  • diff --git a/MP.Mon/Resources/VersNum.txt b/MP.Mon/Resources/VersNum.txt index 9da6e7d2..6ac420a2 100644 --- a/MP.Mon/Resources/VersNum.txt +++ b/MP.Mon/Resources/VersNum.txt @@ -1 +1 @@ -6.15.2207.818 +6.15.2207.819 diff --git a/MP.Mon/Resources/manifest.xml b/MP.Mon/Resources/manifest.xml index 51dbe52a..6ecd8b05 100644 --- a/MP.Mon/Resources/manifest.xml +++ b/MP.Mon/Resources/manifest.xml @@ -1,6 +1,6 @@ - 6.15.2207.818 + 6.15.2207.819 https://nexus.steamware.net/repository/SWS/MP-MON/stable/LAST/MP.Mon.zip https://nexus.steamware.net/repository/SWS/MP-MON/stable/LAST/ChangeLog.html false diff --git a/MP.Mon/Shared/NavMenu.razor b/MP.Mon/Shared/NavMenu.razor deleted file mode 100644 index f5b92aba..00000000 --- a/MP.Mon/Shared/NavMenu.razor +++ /dev/null @@ -1,39 +0,0 @@ - - -
    - -
    - -@code { - private bool collapseNavMenu = true; - - private string? NavMenuCssClass => collapseNavMenu ? "collapse" : null; - - private void ToggleNavMenu() - { - collapseNavMenu = !collapseNavMenu; - } -} diff --git a/MP.Mon/Shared/NavMenu.razor.css b/MP.Mon/Shared/NavMenu.razor.css deleted file mode 100644 index acc5f9f8..00000000 --- a/MP.Mon/Shared/NavMenu.razor.css +++ /dev/null @@ -1,62 +0,0 @@ -.navbar-toggler { - background-color: rgba(255, 255, 255, 0.1); -} - -.top-row { - height: 3.5rem; - background-color: rgba(0,0,0,0.4); -} - -.navbar-brand { - font-size: 1.1rem; -} - -.oi { - width: 2rem; - font-size: 1.1rem; - vertical-align: text-top; - top: -2px; -} - -.nav-item { - font-size: 0.9rem; - padding-bottom: 0.5rem; -} - - .nav-item:first-of-type { - padding-top: 1rem; - } - - .nav-item:last-of-type { - padding-bottom: 1rem; - } - - .nav-item ::deep a { - color: #d7d7d7; - border-radius: 4px; - height: 3rem; - display: flex; - align-items: center; - line-height: 3rem; - } - -.nav-item ::deep a.active { - background-color: rgba(255,255,255,0.25); - color: white; -} - -.nav-item ::deep a:hover { - background-color: rgba(255,255,255,0.1); - color: white; -} - -@media (min-width: 641px) { - .navbar-toggler { - display: none; - } - - .collapse { - /* Never collapse the sidebar for wide screens */ - display: block; - } -} diff --git a/MP.Mon/Shared/SurveyPrompt.razor b/MP.Mon/Shared/SurveyPrompt.razor deleted file mode 100644 index e3e6429c..00000000 --- a/MP.Mon/Shared/SurveyPrompt.razor +++ /dev/null @@ -1,16 +0,0 @@ -
    - - @Title - - - Please take our - brief survey - - and tell us what you think. -
    - -@code { - // Demonstrates how a parent component can supply parameters - [Parameter] - public string? Title { get; set; } -}