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/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/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..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;
}
///
@@ -505,18 +509,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 +531,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));
@@ -1098,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/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/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;
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