Ancora updaate caching e gestione oggetti

This commit is contained in:
Samuele Locatelli
2026-05-28 18:49:10 +02:00
parent e0d0f7b493
commit 6b49cb29fe
18 changed files with 281 additions and 268 deletions
+36 -26
View File
@@ -2124,22 +2124,18 @@ namespace MP.Data.Controllers
/// </summary>
/// <param name="IdxMacchina"></param>
/// <returns></returns>
public List<string> ParametriGetFilt(string IdxMacchina)
public async Task<List<string>> ParametriGetFiltAsync(string IdxMacchina)
{
List<string> dbResult = new List<string>();
using (var dbCtx = new MoonPro_FluxContext(_configuration))
{
dbResult = dbCtx
.DbSetFluxLog
.AsNoTracking()
.Where(x => (IdxMacchina == "*" || x.IdxMacchina == IdxMacchina))
.Take(1000)
.Select(i => i.CodFlux)
.Distinct()
.OrderBy(x => x)
.ToList();
}
return dbResult;
using var dbCtx = new MoonPro_FluxContext(_configuration);
return await dbCtx
.DbSetFluxLog
.AsNoTracking()
.Where(x => (IdxMacchina == "*" || x.IdxMacchina == IdxMacchina))
.Take(1000)
.Select(i => i.CodFlux)
.Distinct()
.OrderBy(x => x)
.ToListAsync();
}
/// <summary>
@@ -2205,6 +2201,24 @@ namespace MP.Data.Controllers
.FirstOrDefaultAsync() ?? new();
}
/// <summary>
/// Dizionario associazione ODL/PODL
/// </summary>
/// <param name="missingIds"></param>
/// <returns></returns>
public async Task<Dictionary<int, int>> PODL_getDictOdlPodl(List<int> missingIds)
{
if (missingIds == null || !missingIds.Any())
return new Dictionary<int, int>();
using var dbCtx = new MoonProContext(options);
return await dbCtx
.DbSetPODL
.AsNoTracking()
.Where(x => missingIds.Contains(x.IdxOdl))
.ToDictionaryAsync(x => x.IdxOdl, x => x.IdxPromessa);
}
/// <summary>
/// Avvio setup ODL da PODL
/// </summary>
@@ -2451,18 +2465,14 @@ namespace MP.Data.Controllers
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public StatoMacchineModel StatoMacchina(string idxMacchina)
public async Task<StatoMacchineModel> StatoMacchinaAsync(string idxMacchina)
{
StatoMacchineModel dbResult = new StatoMacchineModel();
using (var dbCtx = new MoonProContext(options))
{
dbResult = dbCtx
.DbSetStatoMacc
.Where(x => x.IdxMacchina == idxMacchina)
.AsNoTracking()
.FirstOrDefault();
}
return dbResult;
using var dbCtx = new MoonProContext(options);
return await dbCtx
.DbSetStatoMacc
.Where(x => x.IdxMacchina == idxMacchina)
.AsNoTracking()
.FirstOrDefaultAsync();
}
/// <summary>