Skip to content

Commit

Permalink
fix(auto-delete): 🐛 We now also auto delete music requests, this was …
Browse files Browse the repository at this point in the history
…previously missing
  • Loading branch information
tidusjar committed Dec 22, 2021
1 parent 03352d4 commit 9fe1f8e
Showing 1 changed file with 18 additions and 1 deletion.
19 changes: 18 additions & 1 deletion src/Ombi.Schedule/Jobs/Ombi/AutoDeleteRequests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,16 @@ public class AutoDeleteRequests : IAutoDeleteRequests
private readonly ISettingsService<OmbiSettings> _ombiSettings;
private readonly IMovieRequestRepository _movieRequests;
private readonly ITvRequestRepository _tvRequestRepository;
private readonly IMusicRequestRepository _musicRequestRepository;
private readonly ILogger<AutoDeleteRequests> _logger;

public AutoDeleteRequests(ISettingsService<OmbiSettings> ombiSettings, IMovieRequestRepository movieRequest,
ILogger<AutoDeleteRequests> logger, ITvRequestRepository tvRequestRepository)
ILogger<AutoDeleteRequests> logger, ITvRequestRepository tvRequestRepository, IMusicRequestRepository musicRequestRepository)
{
_ombiSettings = ombiSettings;
_movieRequests = movieRequest;
_tvRequestRepository = tvRequestRepository;
_musicRequestRepository = _musicRequestRepository;
_logger = logger;
}

Expand All @@ -37,6 +39,7 @@ public async Task Execute(IJobExecutionContext job)
var date = DateTime.UtcNow.AddDays(-settings.AutoDeleteAfterDays).Date;
await ProcessMovieRequests(date);
await ProcessTvRequests(date);
await ProcessMusicRequests(date);
}

private async Task ProcessMovieRequests(DateTime date)
Expand Down Expand Up @@ -66,6 +69,20 @@ private async Task ProcessTvRequests(DateTime date)
await _tvRequestRepository.DeleteRange(parentRequests);
}

private async Task ProcessMusicRequests(DateTime date)
{
var requestsToDelete = await _musicRequestRepository.GetAll().Where(x => x.Available && x.MarkedAsAvailable.HasValue && x.MarkedAsAvailable.Value < date).ToListAsync();

_logger.LogInformation($"Deleting {requestsToDelete.Count} music requests that have now been scheduled for deletion, All available requests before {date::MM/dd/yyyy} will be deleted");
foreach (var r in requestsToDelete)
{
_logger.LogInformation($"Deleting music title {r.Title} as it was approved on {r.MarkedAsApproved:MM/dd/yyyy hh:mm tt}");
}

await _musicRequestRepository.DeleteRange(requestsToDelete);

}

private bool _disposed;

protected virtual void Dispose(bool disposing)
Expand Down

0 comments on commit 9fe1f8e

Please # to comment.