diff --git a/AsbCloudInfrastructure/Background/WorkToDeleteOldReports.cs b/AsbCloudInfrastructure/Background/WorkToDeleteOldReports.cs index 683a7ee6..fb49caab 100644 --- a/AsbCloudInfrastructure/Background/WorkToDeleteOldReports.cs +++ b/AsbCloudInfrastructure/Background/WorkToDeleteOldReports.cs @@ -28,7 +28,7 @@ namespace AsbCloudInfrastructure.Background protected override async Task Action(string id, IServiceProvider services, Action onProgressCallback, CancellationToken token) { var reportService = services.GetRequiredService(); - await reportService.DeleteAllOldReportsAsync(new TimeSpan(30, 0, 0, 0), token); + await reportService.DeleteAllOldReportsAsync(TimeSpan.FromDays(30), token); } } } diff --git a/AsbCloudInfrastructure/Services/ReportService.cs b/AsbCloudInfrastructure/Services/ReportService.cs index 0b9da1a1..a4f659f8 100644 --- a/AsbCloudInfrastructure/Services/ReportService.cs +++ b/AsbCloudInfrastructure/Services/ReportService.cs @@ -192,17 +192,13 @@ namespace AsbCloudInfrastructure.Services public async Task DeleteAllOldReportsAsync(TimeSpan lifetime, CancellationToken token) { - var lifeTimeStartDate = DateTime.UtcNow.Date.Add(-lifetime); - var fileIds = db.ReportProperties + var lifeTimeStartDate = DateTime.UtcNow.Date - lifetime; + var fileIds = await db.ReportProperties .Where(r => r.File.UploadDate.Date < lifeTimeStartDate) - .Select(r => r.IdFile); + .Select(r => r.IdFile) + .ToArrayAsync(token); - if (fileIds.Any()) - { - return await fileService.DeleteAsync(fileIds, token); - } - return 0; + return await fileService.DeleteAsync(fileIds, token); } } - }