1
0
mirror of https://github.com/Radarr/Radarr.git synced 2026-04-25 22:37:27 -04:00

Fixed: Use movie file from state for status label in add search results

This commit is contained in:
Bogdan
2024-01-14 03:36:02 +02:00
parent cc7104a814
commit 806b89abbe
6 changed files with 58 additions and 27 deletions
@@ -58,34 +58,26 @@ namespace Radarr.Api.V3.MovieFiles
[HttpGet]
[Produces("application/json")]
public List<MovieFileResource> GetMovieFiles(int? movieId, [FromQuery] List<int> movieFileIds)
public List<MovieFileResource> GetMovieFiles([FromQuery(Name = "movieId")] List<int> movieIds, [FromQuery] List<int> movieFileIds)
{
if (!movieId.HasValue && !movieFileIds.Any())
if (!movieIds.Any() && !movieFileIds.Any())
{
throw new BadRequestException("movieId or movieFileIds must be provided");
}
if (movieId.HasValue)
var movieFiles = movieIds.Any()
? _mediaFileService.GetFilesByMovies(movieIds)
: _mediaFileService.GetMovies(movieFileIds);
if (movieFiles == null)
{
var movie = _movieService.GetMovie(movieId.Value);
var file = _mediaFileService.GetFilesByMovie(movieId.Value).FirstOrDefault();
if (file == null)
{
return new List<MovieFileResource>();
}
return new List<MovieFileResource> { file.ToResource(movie, _qualityUpgradableSpecification, _formatCalculator) };
return new List<MovieFileResource>();
}
else
{
var movieFiles = _mediaFileService.GetMovies(movieFileIds);
return movieFiles.GroupBy(e => e.MovieId)
.SelectMany(f => f.ToList()
.ConvertAll(e => e.ToResource(_movieService.GetMovie(f.Key), _qualityUpgradableSpecification, _formatCalculator)))
.ToList();
}
return movieFiles.GroupBy(e => e.MovieId)
.SelectMany(f => f.ToList()
.ConvertAll(e => e.ToResource(_movieService.GetMovie(f.Key), _qualityUpgradableSpecification, _formatCalculator)))
.ToList();
}
[RestPutById]