From f676be07448d3286cb9326c84ad230e2927d73d8 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 27 Oct 2023 11:36:09 +0200 Subject: [PATCH] Fix primo refresh mappa stato --- MP-TAB-SERV/Pages/StatusMap.razor.cs | 3 ++- MP.Data/Controllers/MpTabController.cs | 7 ++++--- MP.Data/Services/MessageService.cs | 10 +++++----- MP.Data/Services/TabDataService.cs | 8 +++++--- 4 files changed, 16 insertions(+), 12 deletions(-) diff --git a/MP-TAB-SERV/Pages/StatusMap.razor.cs b/MP-TAB-SERV/Pages/StatusMap.razor.cs index 981c0791..ec53794d 100644 --- a/MP-TAB-SERV/Pages/StatusMap.razor.cs +++ b/MP-TAB-SERV/Pages/StatusMap.razor.cs @@ -93,10 +93,11 @@ namespace MP_TAB_SERV.Pages } } - protected override void OnInitialized() + protected override async Task OnInitializedAsync() { ListMSE = null; SetupConf(); + ListMSE = await MDataService.MseGetAll(); } protected async Task RefreshData(List newList) diff --git a/MP.Data/Controllers/MpTabController.cs b/MP.Data/Controllers/MpTabController.cs index 2b62f242..05d26412 100644 --- a/MP.Data/Controllers/MpTabController.cs +++ b/MP.Data/Controllers/MpTabController.cs @@ -264,19 +264,20 @@ namespace MP.Data.Controllers /// Idx macchina, "*" = tutte /// Num massimo di record da recuperare /// - public List CommentiGetLastByMacc(string idxMacchina, int maxRec) + public List CommentiGetLastByMacc(string idxMacchina, int numDays, int maxRec) { List dbResult = new List(); using (var dbCtx = new MoonProContext(_configuration)) { var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina); + var NumDays = new SqlParameter("@NumDays", numDays); var MaxRec = new SqlParameter("@MaxRec", maxRec); dbResult = dbCtx .DbSetCommenti - .FromSqlRaw("exec dbo.stp_Comm_getLastByMacchina @IdxMacchina, @MaxRec", IdxMacchina, MaxRec) + .FromSqlRaw("exec dbo.stp_Comm_getLastByMacchinaDays @IdxMacchina, @numDays, @MaxRec", IdxMacchina, NumDays, MaxRec) .AsNoTracking() - .AsEnumerable() + //.AsEnumerable() .ToList(); } return dbResult; diff --git a/MP.Data/Services/MessageService.cs b/MP.Data/Services/MessageService.cs index 62301baa..37019f99 100644 --- a/MP.Data/Services/MessageService.cs +++ b/MP.Data/Services/MessageService.cs @@ -261,13 +261,13 @@ namespace MP.Data.Services /// /// /// - public async Task GetMachineMse(string idxMacchina) + public async Task GetMachineMse(string idxMacchina) { - MappaStatoExpl answ = new MappaStatoExpl(); - string tryString = await localStorage.GetItemAsync(machineMse(idxMacchina)); - if (tryString != "") + MappaStatoExpl answ = null;// new MappaStatoExpl(); + string rawData = await localStorage.GetItemAsync(machineMse(idxMacchina)); + if (rawData != "") { - answ = JsonConvert.DeserializeObject(tryString); + answ = JsonConvert.DeserializeObject(rawData); } return answ; } diff --git a/MP.Data/Services/TabDataService.cs b/MP.Data/Services/TabDataService.cs index 4637ee45..ffa4a9a9 100644 --- a/MP.Data/Services/TabDataService.cs +++ b/MP.Data/Services/TabDataService.cs @@ -350,17 +350,19 @@ namespace MP.Data.Services /// Recupera elenco ultimi commenti /// /// Idx macchina, "*" = tutte + /// Num di giorni da recuperare da adesso /// Num massimo di record da recuperare /// - public async Task> CommentiGetLastByMacc(string idxMacchina, int maxRec) + public async Task> CommentiGetLastByMacc(string idxMacchina, int numDays, int maxRec) { // setup parametri costanti string source = "DB"; Stopwatch sw = new Stopwatch(); sw.Start(); List result = new List(); + DateTime adesso = DateTime.Now; // cerco in redis... - string currKey = $"{redisBaseKey}:Commenti:{idxMacchina}:{maxRec}"; + string currKey = $"{redisBaseKey}:Commenti:{idxMacchina}:{adesso:yyMMdd-HHmm}:{numDays}:{maxRec}"; RedisValue rawData = await redisDb.StringGetAsync(currKey); //if (!string.IsNullOrEmpty($"{rawData}")) if (rawData.HasValue) @@ -370,7 +372,7 @@ namespace MP.Data.Services } else { - result = dbTabController.CommentiGetLastByMacc(idxMacchina, maxRec); + result = dbTabController.CommentiGetLastByMacc(idxMacchina, numDays, maxRec); // serializzp e salvo... rawData = JsonConvert.SerializeObject(result); await redisDb.StringSetAsync(currKey, rawData, FastCache);