From 06390295d22cee26868d575f8474ee1a125f15aa Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 4 Nov 2022 17:34:00 +0100 Subject: [PATCH 1/3] Pulizie minori codice dossier --- MP.SPEC/Components/ListDossiers.razor.cs | 55 ++++++------------------ MP.SPEC/MP.SPEC.csproj | 2 +- MP.SPEC/Resources/ChangeLog.html | 2 +- MP.SPEC/Resources/VersNum.txt | 2 +- MP.SPEC/Resources/manifest.xml | 2 +- 5 files changed, 18 insertions(+), 45 deletions(-) diff --git a/MP.SPEC/Components/ListDossiers.razor.cs b/MP.SPEC/Components/ListDossiers.razor.cs index a7b3c903..fbe1818b 100644 --- a/MP.SPEC/Components/ListDossiers.razor.cs +++ b/MP.SPEC/Components/ListDossiers.razor.cs @@ -1,5 +1,4 @@ using Microsoft.AspNetCore.Components; -using Microsoft.EntityFrameworkCore.Query.Internal; using Microsoft.JSInterop; using MP.Data.DatabaseModels; using MP.Data.DTO; @@ -42,30 +41,7 @@ namespace MP.SPEC.Components } return answ; } - private bool selectFirst(string idxMacchina) - { - //string firstMacchina = ""; - bool answ = false; - if (ListMacchine != null) - { - if (idxMacchina == idxMacchina) - { - answ = true; - } - else - { - answ = false; - } - //var rawData = ListMacchine.Select(x => x.IdxMacchina).FirstOrDefault(); - //firstMacchina = rawData != null ? rawData : ""; - } - //if (firstMacchina == idxMacchina) - //{ - // answ = true; - //} - return answ; - } public string checkSelPar(FluxLogDTO recordSel) { string answ = ""; @@ -89,6 +65,15 @@ namespace MP.SPEC.Components GC.Collect(); } + public async Task flushCache() + { + await Task.Delay(1); + await MDService.FlushRedisCache(); + await Task.Delay(1); + // rimando a pagina corrente + NavManager.NavigateTo(NavManager.Uri, true); + } + #endregion Public Methods #region Protected Properties @@ -187,7 +172,6 @@ namespace MP.SPEC.Components DossierFluxLogDTO? valoreDeserializzato = JsonConvert.DeserializeObject(selRec.Valore); if (valoreDeserializzato != null) { - listaFlux = valoreDeserializzato .ODL .OrderBy(x => x.CodFlux) @@ -212,13 +196,12 @@ namespace MP.SPEC.Components currRecordClone.CodArticolo = selRec.CodArticolo; currRecordClone.KeyRichiesta = selRec.KeyRichiesta; currRecordClone.Valore = newVal; - // METODO PER UPDATE FLUX + // METODO PER INSERT DOSSIER + FLUX await MDService.DossiersInsert(currRecordClone); //await reloadData(true); currRecordClone = null; isEditing = false; await Task.Delay(1); - StateHasChanged(); await flushCache(); } return; @@ -227,8 +210,7 @@ namespace MP.SPEC.Components { currRecordClone = null; await Task.Delay(1); - // TOGLIERE!!!!! - NavManager.NavigateTo("DOSS", true); + NavManager.NavigateTo(NavManager.Uri, true); } } @@ -316,18 +298,16 @@ namespace MP.SPEC.Components private DossierModel? currRecordClone = null; + private List? ListArticoli; private List? ListGruppiFase; + private List? ListMacchine; private List? ListRecords; private List? ListStati; private List? SearchRecords; - private List? ListMacchine; - - private List? ListArticoli; - #endregion Private Fields #region Private Properties @@ -413,14 +393,7 @@ namespace MP.SPEC.Components await RecordSelFlux.InvokeAsync(currFluxLogDto); await Task.Delay(1); } - public async Task flushCache() - { - await Task.Delay(1); - await MDService.FlushRedisCache(); - await Task.Delay(1); - // rimando a pagina corrente - NavManager.NavigateTo(NavManager.Uri, true); - } + private string css() { string answ = ""; diff --git a/MP.SPEC/MP.SPEC.csproj b/MP.SPEC/MP.SPEC.csproj index 25febf97..b8eb71f1 100644 --- a/MP.SPEC/MP.SPEC.csproj +++ b/MP.SPEC/MP.SPEC.csproj @@ -5,7 +5,7 @@ enable enable MP.SPEC - 6.16.2211.416 + 6.16.2211.417 diff --git a/MP.SPEC/Resources/ChangeLog.html b/MP.SPEC/Resources/ChangeLog.html index 3d2a01e5..ef610937 100644 --- a/MP.SPEC/Resources/ChangeLog.html +++ b/MP.SPEC/Resources/ChangeLog.html @@ -1,6 +1,6 @@ Modulo MAPOSPEC -

Versione: 6.16.2211.416

+

Versione: 6.16.2211.417


Note di rilascio:
  • diff --git a/MP.SPEC/Resources/VersNum.txt b/MP.SPEC/Resources/VersNum.txt index bb899846..4816adb5 100644 --- a/MP.SPEC/Resources/VersNum.txt +++ b/MP.SPEC/Resources/VersNum.txt @@ -1 +1 @@ -6.16.2211.416 +6.16.2211.417 diff --git a/MP.SPEC/Resources/manifest.xml b/MP.SPEC/Resources/manifest.xml index f599228c..a78df675 100644 --- a/MP.SPEC/Resources/manifest.xml +++ b/MP.SPEC/Resources/manifest.xml @@ -1,6 +1,6 @@ - 6.16.2211.416 + 6.16.2211.417 https://nexus.steamware.net/repository/SWS/MP-SPEC/stable/LAST/MP.SPEC.zip https://nexus.steamware.net/repository/SWS/MP-SPEC/stable/LAST/ChangeLog.html false From 443a56cc0750d95bc80d2fb64645b70f85462256 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 4 Nov 2022 18:01:59 +0100 Subject: [PATCH 2/3] Update gestione filtro periodo parametri --- MP.Data/Controllers/MpSpecController.cs | 7 ++++--- MP.SPEC/Components/ListPARAMS.razor.cs | 12 +++++++++--- MP.SPEC/Data/MpDataService.cs | 9 +++++---- 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/MP.Data/Controllers/MpSpecController.cs b/MP.Data/Controllers/MpSpecController.cs index 10e5bf5c..8292b9e3 100644 --- a/MP.Data/Controllers/MpSpecController.cs +++ b/MP.Data/Controllers/MpSpecController.cs @@ -502,12 +502,13 @@ namespace MP.Data.Controllers /// /// Elenco ultimi n record flux log dato macchina e flusso (ordinato x data registrazione) /// - /// Data massima (recupera eventi antecedenti) + /// Data massima x eventi + /// Data minima x eventi /// * = tutte, altrimenti solo x una data macchina /// *=tutti, altrimenti solo selezionato /// numero massimo record da restituire /// - public List FluxLogGetLastFilt(DateTime DtMax, string IdxMacchina, string CodFlux, int MaxRec) + public List FluxLogGetLastFilt(DateTime DtMax, DateTime DtMin, string IdxMacchina, string CodFlux, int MaxRec) { List dbResult = new List(); using (var dbCtx = new MoonProContext(_configuration)) @@ -515,7 +516,7 @@ namespace MP.Data.Controllers dbResult = dbCtx .DbSetFluxLog .AsNoTracking() - .Where(x => (x.dtEvento <= DtMax) && (IdxMacchina == "*" || x.IdxMacchina == IdxMacchina) && (CodFlux == "*" || x.CodFlux == CodFlux)) + .Where(x => (x.dtEvento >= DtMin && x.dtEvento <= DtMax) && (IdxMacchina == "*" || x.IdxMacchina == IdxMacchina) && (CodFlux == "*" || x.CodFlux == CodFlux)) .OrderByDescending(x => x.dtEvento) .Take(MaxRec) .ToList(); diff --git a/MP.SPEC/Components/ListPARAMS.razor.cs b/MP.SPEC/Components/ListPARAMS.razor.cs index 67a203e0..60e514d1 100644 --- a/MP.SPEC/Components/ListPARAMS.razor.cs +++ b/MP.SPEC/Components/ListPARAMS.razor.cs @@ -93,12 +93,18 @@ namespace MP.SPEC.Components public async Task reloadData(bool setChanged) { isLoading = true; - DateTime limitData = DateTime.Now; + DateTime dataFrom = DateTime.Today.AddMonths(-1); + DateTime dataTo = DateTime.Now.AddMinutes(5); + if (SelFilter != null && SelFilter.dtMin != null) + { + dataFrom = (DateTime)SelFilter.dtMin; + } if (SelDtMax != null) { - limitData = (DateTime)SelDtMax; + dataTo = (DateTime)SelDtMax; } - SearchRecords = await MDService.FluxLogGetLastFilt(limitData, SelMacchina, SelFlux, MaxRecord); + + SearchRecords = await MDService.FluxLogGetLastFilt(dataTo, dataFrom, SelMacchina, SelFlux, MaxRecord); totalCount = SearchRecords.Count; ListRecords = SearchRecords.Skip(numRecord * (currPage - 1)).Take(numRecord).ToList(); await Task.Delay(1); diff --git a/MP.SPEC/Data/MpDataService.cs b/MP.SPEC/Data/MpDataService.cs index bdcf0c87..cd090911 100644 --- a/MP.SPEC/Data/MpDataService.cs +++ b/MP.SPEC/Data/MpDataService.cs @@ -505,18 +505,19 @@ namespace MP.SPEC.Data /// /// Elenco ultimi n record flux log dato macchina e flusso (ordinato x data registrazione) /// - /// Data massima (recupera eventi antecedenti) + /// Data massima x eventi + /// Data minima x eventi /// * = tutte, altrimenti solo x una data macchina /// *=tutti, altrimenti solo selezionato /// numero massimo record da restituire /// - public async Task> FluxLogGetLastFilt(DateTime DtMax, string IdxMacchina, string CodFlux, int MaxRec) + public async Task> FluxLogGetLastFilt(DateTime DtMax, DateTime DtMin, string IdxMacchina, string CodFlux, int MaxRec) { List? result = new List(); Stopwatch stopWatch = new Stopwatch(); stopWatch.Start(); string readType = "DB"; - string currKey = $"{redisFluxLogFilt}:{IdxMacchina}:{CodFlux}:{MaxRec}:{DtMax:yyyyMMdd}:{DtMax:HHmm}"; + string currKey = $"{redisFluxLogFilt}:{IdxMacchina}:{CodFlux}:{MaxRec}:{DtMax:yyyyMMddHHmm}:{DtMin:yyyyMMddHHmm}"; // cerco in redis dato valore sel macchina... RedisValue rawData = redisDb.StringGet(currKey); if (rawData.HasValue) @@ -526,7 +527,7 @@ namespace MP.SPEC.Data } else { - result = await Task.FromResult(dbController.FluxLogGetLastFilt(DtMax, IdxMacchina, CodFlux, MaxRec)); + result = await Task.FromResult(dbController.FluxLogGetLastFilt(DtMax, DtMin, IdxMacchina, CodFlux, MaxRec)); // serializzo e salvo... rawData = JsonConvert.SerializeObject(result); redisDb.StringSet(currKey, rawData, TimeSpan.FromSeconds(10)); From 7655e340ebd4eccb0445bc4a5dc15f8e193f6776 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 4 Nov 2022 18:07:34 +0100 Subject: [PATCH 3/3] Update gest articoli - se elimina o insert reset cache --- MP.SPEC/Data/MpDataService.cs | 16 ++++++++++++++-- MP.SPEC/Pages/Articoli.razor.cs | 1 - 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/MP.SPEC/Data/MpDataService.cs b/MP.SPEC/Data/MpDataService.cs index cd090911..f421d23a 100644 --- a/MP.SPEC/Data/MpDataService.cs +++ b/MP.SPEC/Data/MpDataService.cs @@ -160,7 +160,9 @@ namespace MP.SPEC.Data /// public async Task ArticoliDeleteRecord(AnagArticoli currRec) { - return await dbController.ArticoliDeleteRecord(currRec); + bool fatto = await dbController.ArticoliDeleteRecord(currRec); + await resetCacheArticoli(); + return fatto; } /// @@ -207,7 +209,9 @@ namespace MP.SPEC.Data /// public async Task ArticoliUpdateRecord(AnagArticoli currRec) { - return await dbController.ArticoliUpdateRecord(currRec); + bool fatto = await dbController.ArticoliUpdateRecord(currRec); + await resetCacheArticoli(); + return fatto; } /// @@ -1099,6 +1103,14 @@ namespace MP.SPEC.Data return answ; } + private async Task resetCacheArticoli() + { + RedisValue pattern = new RedisValue($"{redisArtByDossier}:*"); + await ExecFlushRedisPattern(pattern); + pattern = new RedisValue($"{redisArtList}:*"); + await ExecFlushRedisPattern(pattern); + } + #endregion Private Methods } } \ No newline at end of file diff --git a/MP.SPEC/Pages/Articoli.razor.cs b/MP.SPEC/Pages/Articoli.razor.cs index 0d45f5de..a558357a 100644 --- a/MP.SPEC/Pages/Articoli.razor.cs +++ b/MP.SPEC/Pages/Articoli.razor.cs @@ -28,7 +28,6 @@ namespace MP.SPEC.Pages public void Dispose() { - //MessageService.EA_SearchUpdated -= OnSeachUpdated; currRecord = null; ListTipoArt = null; ListAziende = null;