Fix get ispezioni

This commit is contained in:
2026-04-23 10:57:10 +02:00
parent f9e4957ae3
commit c2da0e150d
2 changed files with 22 additions and 10 deletions

View File

@@ -20,13 +20,13 @@ public class IspezioniService(AppDbContext db) : IIspezioniService
public Task<List<Ispezione>> GetAllIspezioni(string rilevatore) => public Task<List<Ispezione>> GetAllIspezioni(string rilevatore) =>
db.Ispezioni db.Ispezioni
.Where(x => x.Rilevatore.Equals(rilevatore, StringComparison.InvariantCultureIgnoreCase)) .Where(x => x.Rilevatore.ToLower() == rilevatore.ToLower())
.AsNoTracking() .AsNoTracking()
.ToListAsync(); .ToListAsync();
public Task<List<Ispezione>> GetAllIspezioniWithSchedeAsync(string rilevatore) => public Task<List<Ispezione>> GetAllIspezioniWithSchedeAsync(string rilevatore) =>
db.Ispezioni db.Ispezioni
.Where(x => x.Rilevatore.Equals(rilevatore, StringComparison.InvariantCultureIgnoreCase)) .Where(x => x.Rilevatore.ToLower() == rilevatore.ToLower())
.Include(x => x.Schede) .Include(x => x.Schede)
.ThenInclude(s => s.Articoli) .ThenInclude(s => s.Articoli)
.AsNoTracking() .AsNoTracking()

View File

@@ -3,6 +3,7 @@ using IntegryApiClient.Core.Domain.Abstraction.Contracts.Device;
using SteUp.Shared.Core.Data.Contracts; using SteUp.Shared.Core.Data.Contracts;
using SteUp.Shared.Core.Dto; using SteUp.Shared.Core.Dto;
using SteUp.Shared.Core.Dto.PageState; using SteUp.Shared.Core.Dto.PageState;
using SteUp.Shared.Core.Entities;
using SteUp.Shared.Core.Enum; using SteUp.Shared.Core.Enum;
using SteUp.Shared.Core.Helpers; using SteUp.Shared.Core.Helpers;
using SteUp.Shared.Core.Interface.IntegryApi; using SteUp.Shared.Core.Interface.IntegryApi;
@@ -24,8 +25,15 @@ public class SteupDataService(
{ {
await dbInitializer.InitializeAsync(); await dbInitializer.InitializeAsync();
await LoadDataAsync(); await LoadDataAsync();
await CheckAndUpdateStatus();
await CleanOldClosedInspection(); var ispezioni = await ispezioniService.GetAllIspezioniWithSchedeAsync(userSession.User.Username);
if (!ispezioni.IsNullOrEmpty())
{
await CheckAndUpdateStatus(ispezioni);
await CleanOldClosedInspection(ispezioni);
}
RegisterAppVersion(); RegisterAppVersion();
} }
@@ -36,13 +44,12 @@ public class SteupDataService(
); );
} }
private async Task CleanOldClosedInspection() private async Task CleanOldClosedInspection(List<Ispezione> ispezioni)
{ {
var ispezioni = (await ispezioniService.GetAllIspezioniWithSchedeAsync(userSession.User.Username)) ispezioni = ispezioni.Where(x =>
.Where(x => x.Stato == StatusEnum.Completata &&
x.Stato == StatusEnum.Completata && x.Data < DateTime.Now.AddDays(-60)
x.Data < DateTime.Now.AddDays(-60) ).ToList();
).ToList();
foreach (var ispezione in ispezioni) foreach (var ispezione in ispezioni)
{ {
@@ -54,6 +61,11 @@ public class SteupDataService(
public async Task CheckAndUpdateStatus() public async Task CheckAndUpdateStatus()
{ {
var ispezioni = await ispezioniService.GetAllIspezioniWithSchedeAsync(userSession.User.Username); var ispezioni = await ispezioniService.GetAllIspezioniWithSchedeAsync(userSession.User.Username);
await CheckAndUpdateStatus(ispezioni);
}
private async Task CheckAndUpdateStatus(List<Ispezione> ispezioni)
{
var listActivityId = ispezioni var listActivityId = ispezioni
.Where(x => x.ActivityId != null) .Where(x => x.ActivityId != null)
.Select(x => x.ActivityId!) .Select(x => x.ActivityId!)