diff --git a/MP.Data/Controllers/MpSpecController.cs b/MP.Data/Controllers/MpSpecController.cs
index d536a4ee..2bc53fc1 100644
--- a/MP.Data/Controllers/MpSpecController.cs
+++ b/MP.Data/Controllers/MpSpecController.cs
@@ -391,6 +391,7 @@ namespace MP.Data.Controllers
.CountAsync();
return result;
}
+
///
/// Conteggio articoli data condizione ricerca
///
@@ -429,6 +430,7 @@ namespace MP.Data.Controllers
.OrderBy(x => x.CodArticolo)
.CountAsync();
}
+
///
/// Elenco tabella Articoli IMPIEGATI (da stored stp_ART_getUsed) Async
///
@@ -1827,7 +1829,7 @@ namespace MP.Data.Controllers
}
}
return dbResult;
- }
+ }
#endif
///
@@ -1880,7 +1882,6 @@ namespace MP.Data.Controllers
var IdxODL = new SqlParameter("@IdxODL", idxOdl);
var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
-
// se richiesto confermo produzione
if (confPezzi)
{
@@ -1971,7 +1972,7 @@ namespace MP.Data.Controllers
}
}
return dbResult;
- }
+ }
#endif
///
@@ -2315,7 +2316,6 @@ namespace MP.Data.Controllers
.AddAsync(editRec);
}
return await dbCtx.SaveChangesAsync() > 0;
-
}
///
@@ -2477,6 +2477,20 @@ namespace MP.Data.Controllers
return dbResult;
}
+ ///
+ /// Elenco Vocabolario (completo) async
+ ///
+ ///
+ public async Task> VocabolarioGetAllAsync()
+ {
+ using var dbCtx = new MoonProContext(options);
+ return await dbCtx
+ .DbSetVocabolario
+ .AsNoTracking()
+ .OrderBy(x => x.Lemma)
+ .ToListAsync() ?? new();
+ }
+
///
/// Elenco Vocabolario di una lingua
///
@@ -2497,17 +2511,31 @@ namespace MP.Data.Controllers
}
///
- /// Elenco Vocabolario (completo) async
+ /// Upsert record Vocabolario
///
+ ///
///
- public async Task> VocabolarioGetAllAsync()
+ public async Task VocabolarioUpsertAsync(VocabolarioModel upsRec)
{
using var dbCtx = new MoonProContext(options);
- return await dbCtx
- .DbSetVocabolario
- .AsNoTracking()
- .OrderBy(x => x.Lemma)
- .ToListAsync() ?? new();
+ var actRec = await dbCtx
+ .DbSetVocabolario
+ .Where(x => x.Lingua == upsRec.Lingua && x.Lemma == upsRec.Lemma)
+ .FirstOrDefaultAsync();
+
+ // se ci fosse aggiorno...
+ if (actRec == null)
+ {
+ dbCtx
+ .DbSetVocabolario
+ .Add(upsRec);
+ }
+ else
+ {
+ actRec.Traduzione = upsRec.Traduzione;
+ dbCtx.Entry(actRec).State = EntityState.Modified;
+ }
+ return await dbCtx.SaveChangesAsync() > 0;
}
///
diff --git a/MP.SPEC/Components/CmpTop.razor.cs b/MP.SPEC/Components/CmpTop.razor.cs
index 593b6a6a..8b2ee9b2 100644
--- a/MP.SPEC/Components/CmpTop.razor.cs
+++ b/MP.SPEC/Components/CmpTop.razor.cs
@@ -52,8 +52,8 @@ namespace MP.SPEC.Components
protected async Task FlushCache()
{
- await MDService.FlushRedisCache();
- await MDService.FlushCacheAsync();
+ await MDService.ForceFlushRedisCache();
+ await MDService.ForceFlushFusionCacheAsync();
await ForceReload();
// rimando a pagina corrente
NavManager.NavigateTo(NavManager.Uri, true);
diff --git a/MP.SPEC/Components/ListDossiers.razor.cs b/MP.SPEC/Components/ListDossiers.razor.cs
index d2ea0aa0..63514f91 100644
--- a/MP.SPEC/Components/ListDossiers.razor.cs
+++ b/MP.SPEC/Components/ListDossiers.razor.cs
@@ -67,9 +67,8 @@ namespace MP.SPEC.Components
public async Task flushCache()
{
- await Task.Delay(1);
- await MDService.FlushRedisCache();
- await Task.Delay(1);
+ await MDService.ForceFlushRedisCache();
+ await MDService.ForceFlushFusionCacheAsync();
// rimando a pagina corrente
NavManager.NavigateTo(NavManager.Uri, true);
}
diff --git a/MP.SPEC/Components/ListPODL.razor.cs b/MP.SPEC/Components/ListPODL.razor.cs
index fbcb863b..0dca5e88 100644
--- a/MP.SPEC/Components/ListPODL.razor.cs
+++ b/MP.SPEC/Components/ListPODL.razor.cs
@@ -361,18 +361,20 @@ namespace MP.SPEC.Components
string odlPad = newOdl.IdxOdl.ToString(padCodXdl);
await callTask2Exe(selRec.IdxMacchina, "setComm", $"ODL{odlPad}");
await callTask2Exe(selRec.IdxMacchina, "setPzComm", $"{newOdl.NumPezzi}");
+ await Task.Delay(1);
// chiamo task x IOB
await callForceUpdate(selRec.IdxMacchina);
- await Task.Delay(1);
- await callForceUpdate(selRec.IdxMacchina);
+ //await Task.Delay(1);
+ //await callForceUpdate(selRec.IdxMacchina);
await Task.Delay(1);
await callSyncDb(selRec.IdxMacchina);
- await Task.Delay(1);
// svuoto memorie pagina...
- await MDService.FlushRedisCache();
+ await MDService.ForceFlushRedisCache();
// svuoto cache MpIoNsCache
- await MDService.FlushMpIoOdlCache();
+ await MDService.FlushRedisCacheMpIoOdl();
+ // svuoto altra cache
+ await MDService.ForceFlushFusionCacheAsync();
// ricarico pagina!
NavManager.NavigateTo(NavManager.Uri, true);
diff --git a/MP.SPEC/Data/MpDataService.cs b/MP.SPEC/Data/MpDataService.cs
index 1aa19dcd..71a644f0 100644
--- a/MP.SPEC/Data/MpDataService.cs
+++ b/MP.SPEC/Data/MpDataService.cs
@@ -193,7 +193,7 @@ namespace MP.SPEC.Data
string source = "DB";
result = dbController.AnagGruppiDelete(updRec);
// elimino cache redis...
- await FlushCacheAsync(Utils.redisAnagGruppi);
+ await FlushFusionCacheAsync(Utils.redisAnagGruppi);
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"AnagGruppiDeleteAsync | CodGruppo {updRec.CodGruppo} | {source}{activity?.Duration.TotalMilliseconds}ms");
@@ -212,7 +212,7 @@ namespace MP.SPEC.Data
string source = "DB";
result = dbController.AnagGruppiUpsert(UpdRec);
// elimino cache redis...
- await FlushCacheAsync(Utils.redisAnagGruppi);
+ await FlushFusionCacheAsync(Utils.redisAnagGruppi);
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"AnagGruppiUpsertAsync | CodGruppo {UpdRec.CodGruppo} | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -556,7 +556,7 @@ namespace MP.SPEC.Data
bool result = false;
result = await dbController.DossiersDeleteRecordAsync(selRecord);
// elimino cache...
- await FlushCacheAsync(Utils.redisDossByMac);
+ await FlushFusionCacheAsync(Utils.redisDossByMac);
activity?.SetTag("data.source", "DB");
activity?.Stop();
LogTrace($"DossiersDeleteRecordAsync | IdxMacchina {selRecord.IdxMacchina} | DtRif {selRecord.DtRif} | IdxODL {selRecord.IdxODL} | {activity?.Duration.TotalMilliseconds}ms");
@@ -595,7 +595,7 @@ namespace MP.SPEC.Data
string source = "DB";
// aggiorno record sul DB
bool answ = await dbController.DossiersInsertAsync(currDoss);
- answ = await FlushCacheAsync(Utils.redisDossByMac);
+ answ = await FlushFusionCacheAsync(Utils.redisDossByMac);
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"DossiersInsertAsync | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -618,7 +618,7 @@ namespace MP.SPEC.Data
// chiamo stored x salvare parametri
await dbController.DossiersTakeParamsSnapshotLastAsync(IdxMacchina, dtMin, dtMax);
// elimino cache...
- answ = await FlushCacheAsync(Utils.redisDossByMac);
+ answ = await FlushFusionCacheAsync(Utils.redisDossByMac);
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"DossiersTakeParamsSnapshotLastAsync | Svuotata cache dossier | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -636,7 +636,7 @@ namespace MP.SPEC.Data
string source = "DB";
// aggiorno record sul DB
bool answ = await dbController.DossiersUpdateValoreAsync(currDoss);
- answ = await FlushCacheAsync(Utils.redisDossByMac);
+ answ = await FlushFusionCacheAsync(Utils.redisDossByMac);
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"DossiersUpdateValoreAsync | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -805,57 +805,13 @@ namespace MP.SPEC.Data
return answ;
}
- ///
- /// Cancellazione FusionCache (totale)
- ///
- ///
- public async Task FlushCacheAsync()
- {
- await _cache.ClearAsync(allowFailSafe: false);
- _configData.Clear();
- _artCacheExpiry = DateTime.Now.AddHours(-1);
- return true;
- }
-
- ///
- /// Cancellazione FusionCache dato singolo tag
- ///
- ///
- public async Task FlushCacheAsync(string tag)
- {
- if (string.IsNullOrWhiteSpace(tag)) return false;
-
- await _cache.RemoveByTagAsync(tag);
- _configData.Clear();
- return true;
- }
-
- ///
- /// Cancellazione FusionCache dato elenco tags
- ///
- ///
- public async Task FlushCacheAsync(List listTags)
- {
- if (listTags == null || listTags.Count == 0) return false;
-
- // Generiamo i Task di rimozione ed eseguiamoli in parallelo su Redis/L1
- var tasks = listTags
- .Where(tag => !string.IsNullOrWhiteSpace(tag))
- .Select(tag => _cache.RemoveByTagAsync(tag).AsTask());
-
- await Task.WhenAll(tasks);
-
- _configData.Clear();
- return true;
- }
-
///
/// Flush cache relativa a MP-IO x dati ODL
///
///
- public async Task FlushMpIoOdlCache()
+ public async Task FlushRedisCacheMpIoOdl()
{
- using var activity = ActivitySource.StartActivity("FlushMpIoOdlCache");
+ using var activity = ActivitySource.StartActivity("FlushRedisCacheMpIoOdl");
string source = "REDIS";
// svuoto dalla cache REDIS del server IO...
bool ok01 = await ResetIoCache("CurrODL");
@@ -864,24 +820,10 @@ namespace MP.SPEC.Data
bool ok04 = await ResetIoCache("DtMac");
activity?.SetTag("data.source", "REDIS");
activity?.Stop();
- LogTrace($"FlushMpIoOdlCache | Read from {source}: {activity?.Duration.TotalMilliseconds}ms");
+ LogTrace($"FlushRedisCacheMpIoOdl | Read from {source}: {activity?.Duration.TotalMilliseconds}ms");
return ok01 && ok02 && ok03 && ok04;
}
- public async Task FlushRedisCache()
- {
- using var activity = ActivitySource.StartActivity("FlushRedisCache");
- string source = "FUSION";
- // valutare se tenere
- RedisValue pattern = Utils.RedValue("*");
- await ExecFlushRedisPatternAsync(pattern);
- // pulisco fusionlog cache...
- bool answ = await FlushCacheAsync();
- activity?.Stop();
- LogTrace($"FlushCache | {source} | {activity?.Duration.TotalMilliseconds}ms");
- return answ;
- }
-
///
/// Funzione di Data Reduction x FluxLog
///
@@ -996,6 +938,29 @@ namespace MP.SPEC.Data
await RecDbMaintStatAsync(activity?.Duration ?? TimeSpan.FromSeconds(1));
}
+ ///
+ /// Cancellazione FusionCache (totale) - wrapper public
+ ///
+ ///
+ public Task ForceFlushFusionCacheAsync()
+ {
+ return FlushFusionCacheAsync();
+ }
+
+ public async Task ForceFlushRedisCache()
+ {
+ using var activity = ActivitySource.StartActivity("ForceFlushRedisCache");
+ string source = "FUSION";
+ // valutare se tenere
+ RedisValue pattern = Utils.RedValue("*");
+ await ExecFlushRedisPatternAsync(pattern);
+ // pulisco fusionlog cache...
+ bool answ = await FlushFusionCacheAsync();
+ activity?.Stop();
+ LogTrace($"FlushCache | {source} | {activity?.Duration.TotalMilliseconds}ms");
+ return answ;
+ }
+
///
/// Eliminazione di un record macchina dal gruppo
///
@@ -1419,7 +1384,7 @@ namespace MP.SPEC.Data
// chiamo metodo conferma!
fatto = await dbController.ODLCloseAsync(idxOdl, idxMacchina, matrOpr, confPezzi, confRett, modoConfProd);
- await FlushCacheAsync(Utils.redisOdlByKey);
+ await FlushFusionCacheAsync(Utils.redisOdlByKey);
activity?.SetTag("data.source", source);
activity?.Stop();
@@ -1450,6 +1415,23 @@ namespace MP.SPEC.Data
);
}
+ ///
+ /// Statistiche ODL calcolate (da stored stp_STAT_ODL)
+ ///
+ ///
+ public async Task> OdlStatsAsync(int IdxOdl)
+ {
+ string currKey = $"{Utils.redisOdlStats}:{IdxOdl}";
+
+ return await GetOrFetchAsync(
+ operationName: "OdlStatsAsync",
+ cacheKey: currKey,
+ expiration: getRandTOut(redisShortTimeCache),
+ fetchFunc: async () => await dbController.OdlGetStatAsync(IdxOdl) ?? new(),
+ tagList: [Utils.redisOdlStats]
+ );
+ }
+
///
/// Elenco operatori filtrati x gruppo
///
@@ -1606,46 +1588,6 @@ namespace MP.SPEC.Data
fetchFunc: async () => await dbController.PODL_getByKeyAsync(idxPODL) ?? new(),
tagList: [Utils.redisPOdlByPOdl]
);
-#if false
- PODLModel result = new PODLModel();
- if (idxPODL != 0)
- {
- using var activity = ActivitySource.StartActivity("POdlGetByKey");
- string source = "DB";
- string currKey = $"{Utils.redisPOdlByPOdl}:{idxPODL}";
- // cerco in redis dato valore sel idxMaccSel...
- RedisValue rawData = redisDb.StringGet(currKey);
- if (rawData.HasValue)
- {
- var rawResult = JsonConvert.DeserializeObject($"{rawData}");
- if (rawResult != null)
- {
- result = rawResult;
- source = "REDIS";
- }
- }
- else
- {
- result = await dbController.PODL_getByKey(idxPODL);
- // serializzo e salvo...
- rawData = JsonConvert.SerializeObject(result);
- redisDb.StringSet(currKey, rawData, getRandTOut(redisLongTimeCache));
- }
- if (result == null)
- {
- result = new PODLModel();
- }
- activity?.SetTag("data.source", source);
- activity?.SetTag("result.count", 1);
- activity?.Stop();
- Log.Trace($"POdlGetByKey | Read from {source}: {activity?.Duration.TotalMilliseconds}ms");
- }
- else
- {
- Log.Debug("Errore IdxPODL = 0");
- }
- return result;
-#endif
}
///
@@ -1931,33 +1873,6 @@ namespace MP.SPEC.Data
return answ;
}
- ///
- /// Statistiche ODL calcolate (da stored stp_STAT_ODL)
- ///
- ///
- public async Task> OdlStatsAsync(int IdxOdl)
- {
- string currKey = $"{Utils.redisOdlStats}:{IdxOdl}";
-
- return await GetOrFetchAsync(
- operationName: "OdlStatsAsync",
- cacheKey: currKey,
- expiration: getRandTOut(redisShortTimeCache),
- fetchFunc: async () => await dbController.OdlGetStatAsync(IdxOdl) ?? new(),
- tagList: [Utils.redisOdlStats]
- );
-
-#if false
- using var activity = ActivitySource.StartActivity("OdlStatsAsync");
- string source = "DB";
- var result = await dbController.OdlGetStatAsync(IdxOdl);
- activity?.SetTag("data.source", source);
- activity?.Stop();
- LogTrace($"OdlStatsAsync | {source} | {activity?.Duration.TotalMilliseconds}ms");
- return result;
-#endif
- }
-
///
/// Stato macchina
///
@@ -1987,7 +1902,7 @@ namespace MP.SPEC.Data
bool fatto = false;
// salvo
fatto = await dbController.TemplateKitDeleteAsync(currRecord);
- await FlushCacheAsync(Utils.redisKitTempl);
+ await FlushFusionCacheAsync(Utils.redisKitTempl);
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"TemplateKitDeleteAsync | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -2025,7 +1940,7 @@ namespace MP.SPEC.Data
bool fatto = false;
// salvo
fatto = dbController.TemplateKitUpsert(currRecord, codAzienda);
- await FlushCacheAsync(Utils.redisKitTempl);
+ await FlushFusionCacheAsync(Utils.redisKitTempl);
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"TemplateKitUpsertAsync | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -2108,7 +2023,7 @@ namespace MP.SPEC.Data
// salvo
fatto = await dbController.WipKitDeleteAsync(currRecord);
// svuoto cache
- await FlushCacheAsync(Utils.redisKitWip);
+ await FlushFusionCacheAsync(Utils.redisKitWip);
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"WipKitDeleteAsync Read from {source}: {activity?.Duration.TotalMilliseconds}ms");
@@ -2127,7 +2042,7 @@ namespace MP.SPEC.Data
// salvo
fatto = await dbController.WipKitDeleteOlderAsync(DateLimit);
// svuoto cache KitWip
- await FlushCacheAsync(Utils.redisKitWip);
+ await FlushFusionCacheAsync(Utils.redisKitWip);
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"WipKitDeleteOlderAsync Read from {source}: {activity?.Duration.TotalMilliseconds}ms");
@@ -2163,7 +2078,7 @@ namespace MP.SPEC.Data
// salvo
fatto = await dbController.WipKitUpsertAsync(currRecord);
// svuoto cache KitWip
- await FlushCacheAsync(Utils.redisKitWip);
+ await FlushFusionCacheAsync(Utils.redisKitWip);
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"WipKitUpsertAsync | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -2178,7 +2093,7 @@ namespace MP.SPEC.Data
{
using var activity = ActivitySource.StartActivity("FlushCacheArticoli");
string source = "FUSION";
- bool answ = await FlushCacheAsync(new List() { Utils.redisArtList, Utils.redisArtByDossier });
+ bool answ = await FlushFusionCacheAsync(new List() { Utils.redisArtList, Utils.redisArtByDossier });
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"FlushCacheArticoli | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -2189,7 +2104,7 @@ namespace MP.SPEC.Data
{
using var activity = ActivitySource.StartActivity("FlushCacheConfig");
string source = "FUSION";
- bool answ = await FlushCacheAsync(new List() { Utils.redisConfKey });
+ bool answ = await FlushFusionCacheAsync(new List() { Utils.redisConfKey });
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"FlushCacheConfig | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -2203,7 +2118,7 @@ namespace MP.SPEC.Data
{
using var activity = ActivitySource.StartActivity("FlushCacheMacGrp");
string source = "FUSION";
- bool answ = await FlushCacheAsync(new List { Utils.redisAnagGruppi, Utils.redisMacList });
+ bool answ = await FlushFusionCacheAsync(new List { Utils.redisAnagGruppi, Utils.redisMacList });
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"FlushCacheMacGrp | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -2217,7 +2132,7 @@ namespace MP.SPEC.Data
{
using var activity = ActivitySource.StartActivity("FlushCacheOprGrp");
string source = "FUSION";
- bool answ = await FlushCacheAsync(new List { Utils.redisAnagGruppi, Utils.redisOprList });
+ bool answ = await FlushFusionCacheAsync(new List { Utils.redisAnagGruppi, Utils.redisOprList });
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"FlushCacheOprGrp | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -2226,35 +2141,64 @@ namespace MP.SPEC.Data
protected async Task FlushCachePOdl()
{
-#if false
- using var activity = ActivitySource.StartActivity("POdlFlushCache");
- bool answ = false;
- RedisValue pattern = new RedisValue($"{Utils.redisXdlData}:*");
- answ = await ExecFlushRedisPatternAsync(pattern);
- pattern = new RedisValue($"{Utils.redisPOdlByOdl}:*");
- answ = await ExecFlushRedisPatternAsync(pattern);
- pattern = new RedisValue($"{Utils.redisPOdlByPOdl}:*");
- answ = await ExecFlushRedisPatternAsync(pattern);
- pattern = new RedisValue($"{Utils.redisPOdlList}:*");
- answ = await ExecFlushRedisPatternAsync(pattern);
- activity?.SetTag("data.source", "REDIS");
- return answ;
-#endif
-
using var activity = ActivitySource.StartActivity("FlushCachePOdl");
string source = "FUSION";
- bool answ = await FlushCacheAsync(new List() { Utils.redisXdlData, Utils.redisPOdlByOdl, Utils.redisPOdlByPOdl, Utils.redisPOdlList });
+ bool answ = await FlushFusionCacheAsync(new List() { Utils.redisXdlData, Utils.redisPOdlByOdl, Utils.redisPOdlByPOdl, Utils.redisPOdlList });
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"FlushCachePOdl | {source} | {activity?.Duration.TotalMilliseconds}ms");
return answ;
}
+ ///
+ /// Cancellazione FusionCache (totale)
+ ///
+ ///
+ protected async Task FlushFusionCacheAsync()
+ {
+ await _cache.ClearAsync(allowFailSafe: false);
+ _configData.Clear();
+ _artCacheExpiry = DateTime.Now.AddHours(-1);
+ return true;
+ }
+
+ ///
+ /// Cancellazione FusionCache dato singolo tag
+ ///
+ ///
+ protected async Task FlushFusionCacheAsync(string tag)
+ {
+ if (string.IsNullOrWhiteSpace(tag)) return false;
+
+ await _cache.RemoveByTagAsync(tag);
+ _configData.Clear();
+ return true;
+ }
+
+ ///
+ /// Cancellazione FusionCache dato elenco tags
+ ///
+ ///
+ protected async Task FlushFusionCacheAsync(List listTags)
+ {
+ if (listTags == null || listTags.Count == 0) return false;
+
+ // Generiamo i Task di rimozione ed eseguiamoli in parallelo su Redis/L1
+ var tasks = listTags
+ .Where(tag => !string.IsNullOrWhiteSpace(tag))
+ .Select(tag => _cache.RemoveByTagAsync(tag).AsTask());
+
+ await Task.WhenAll(tasks);
+
+ _configData.Clear();
+ return true;
+ }
+
protected async Task FlushKitCache()
{
using var activity = ActivitySource.StartActivity("FlushKitCache");
string source = "FUSION";
- bool answ = await FlushCacheAsync(new List() { Utils.redisPOdlList, Utils.redisKitInst, Utils.redisKitWip, Utils.redisKitScore, Utils.redisPOdlByCodArt });
+ bool answ = await FlushFusionCacheAsync(new List() { Utils.redisPOdlList, Utils.redisKitInst, Utils.redisKitWip, Utils.redisKitScore, Utils.redisPOdlByCodArt });
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"FlushKitCache | {source} | {activity?.Duration.TotalMilliseconds}ms");
@@ -2387,7 +2331,7 @@ namespace MP.SPEC.Data
{
using var activity = ActivitySource.StartActivity("FlushCacheFluxLog");
string source = "FUSION";
- bool answ = await FlushCacheAsync(new List() { Utils.redisFluxLogFilt, Utils.redisParetoFLKey });
+ bool answ = await FlushFusionCacheAsync(new List() { Utils.redisFluxLogFilt, Utils.redisParetoFLKey });
activity?.SetTag("data.source", source);
activity?.Stop();
LogTrace($"FlushCacheFluxLog | {source} | {activity?.Duration.TotalMilliseconds}ms");
diff --git a/MP.SPEC/MP.SPEC.csproj b/MP.SPEC/MP.SPEC.csproj
index 0ab5e00b..d9966714 100644
--- a/MP.SPEC/MP.SPEC.csproj
+++ b/MP.SPEC/MP.SPEC.csproj
@@ -5,7 +5,7 @@
enable
enable
MP.SPEC
- 8.16.2605.3012
+ 8.16.2606.107
1800a78a-6ff1-40f9-b490-87fb8bfc1394
en
diff --git a/MP.SPEC/Pages/PARAMS.razor.cs b/MP.SPEC/Pages/PARAMS.razor.cs
index 73204309..3d8b689a 100644
--- a/MP.SPEC/Pages/PARAMS.razor.cs
+++ b/MP.SPEC/Pages/PARAMS.razor.cs
@@ -110,9 +110,9 @@ namespace MP.SPEC.Pages
protected async Task forceReloadCache()
{
Log.Debug("----- forceReloadCache on PARAMS.cs -----");
+ await MDService.ForceFlushRedisCache();
await Task.Delay(1);
- await MDService.FlushRedisCache();
- await Task.Delay(1);
+ await MDService.ForceFlushFusionCacheAsync();
// rimando a pagina corrente
NavManager.NavigateTo(NavManager.Uri, true, true);
}
diff --git a/MP.SPEC/Pages/Utils.razor.cs b/MP.SPEC/Pages/Utils.razor.cs
index f26cdad2..5020e3eb 100644
--- a/MP.SPEC/Pages/Utils.razor.cs
+++ b/MP.SPEC/Pages/Utils.razor.cs
@@ -9,8 +9,8 @@ namespace MP.SPEC.Pages
public async Task flushCache()
{
- await Task.Delay(1);
- await MDService.FlushRedisCache();
+ await MDService.ForceFlushRedisCache();
+ await MDService.ForceFlushFusionCacheAsync();
// rimando a home
NavManager.NavigateTo("", true);
}
diff --git a/MP.SPEC/Resources/ChangeLog.html b/MP.SPEC/Resources/ChangeLog.html
index 6f505a94..2f37a84c 100644
--- a/MP.SPEC/Resources/ChangeLog.html
+++ b/MP.SPEC/Resources/ChangeLog.html
@@ -1,6 +1,6 @@
Modulo MAPOSPEC
- Versione: 8.16.2605.3012
+ Versione: 8.16.2606.107
Note di rilascio:
-
diff --git a/MP.SPEC/Resources/VersNum.txt b/MP.SPEC/Resources/VersNum.txt
index 3cbdcdc0..23c4c2a2 100644
--- a/MP.SPEC/Resources/VersNum.txt
+++ b/MP.SPEC/Resources/VersNum.txt
@@ -1 +1 @@
-8.16.2605.3012
+8.16.2606.107
diff --git a/MP.SPEC/Resources/manifest.xml b/MP.SPEC/Resources/manifest.xml
index cad23318..1934059c 100644
--- a/MP.SPEC/Resources/manifest.xml
+++ b/MP.SPEC/Resources/manifest.xml
@@ -1,6 +1,6 @@
-
- 8.16.2605.3012
+ 8.16.2606.107
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