Fixed: Manual Import Reprocessing

This commit is contained in:
Qstick
2023-01-14 11:45:54 -06:00
parent bc63587428
commit 3825ecd393
20 changed files with 422 additions and 36 deletions
@@ -32,8 +32,8 @@ namespace Readarr.Api.V1.ManualImport
_logger = logger;
}
[HttpPut]
public IActionResult UpdateItems(List<ManualImportResource> resource)
[HttpPost]
public IActionResult UpdateItems(List<ManualImportUpdateResource> resource)
{
return Accepted(UpdateImportItems(resource));
}
@@ -65,7 +65,7 @@ namespace Readarr.Api.V1.ManualImport
return item;
}
private List<ManualImportResource> UpdateImportItems(List<ManualImportResource> resources)
private List<ManualImportResource> UpdateImportItems(List<ManualImportUpdateResource> resources)
{
var items = new List<ManualImportItem>();
foreach (var resource in resources)
@@ -75,11 +75,11 @@ namespace Readarr.Api.V1.ManualImport
Id = resource.Id,
Path = resource.Path,
Name = resource.Name,
Size = resource.Size,
Author = resource.Author == null ? null : _authorService.GetAuthor(resource.Author.Id),
Book = resource.Book == null ? null : _bookService.GetBook(resource.Book.Id),
Author = resource.AuthorId.HasValue ? _authorService.GetAuthor(resource.AuthorId.Value) : null,
Book = resource.BookId.HasValue ? _bookService.GetBook(resource.BookId.Value) : null,
Edition = resource.ForeignEditionId == null ? null : _editionService.GetEditionByForeignEditionId(resource.ForeignEditionId),
Quality = resource.Quality,
ReleaseGroup = resource.ReleaseGroup,
DownloadId = resource.DownloadId,
AdditionalFile = resource.AdditionalFile,
ReplaceExistingFiles = resource.ReplaceExistingFiles,
@@ -19,6 +19,7 @@ namespace Readarr.Api.V1.ManualImport
public BookResource Book { get; set; }
public string ForeignEditionId { get; set; }
public QualityModel Quality { get; set; }
public string ReleaseGroup { get; set; }
public int QualityWeight { get; set; }
public string DownloadId { get; set; }
public IEnumerable<Rejection> Rejections { get; set; }
@@ -47,6 +48,7 @@ namespace Readarr.Api.V1.ManualImport
Book = model.Book.ToResource(),
ForeignEditionId = model.Edition?.ForeignEditionId ?? model.Book?.Editions.Value.Single(x => x.Monitored).ForeignEditionId,
Quality = model.Quality,
ReleaseGroup = model.ReleaseGroup,
//QualityWeight
DownloadId = model.DownloadId,
@@ -0,0 +1,24 @@
using System.Collections.Generic;
using NzbDrone.Core.DecisionEngine;
using NzbDrone.Core.Qualities;
using Readarr.Http.REST;
namespace Readarr.Api.V1.ManualImport
{
public class ManualImportUpdateResource : RestResource
{
public string Path { get; set; }
public string Name { get; set; }
public int? AuthorId { get; set; }
public int? BookId { get; set; }
public string ForeignEditionId { get; set; }
public QualityModel Quality { get; set; }
public string ReleaseGroup { get; set; }
public string DownloadId { get; set; }
public bool AdditionalFile { get; set; }
public bool ReplaceExistingFiles { get; set; }
public bool DisableReleaseSwitching { get; set; }
public IEnumerable<Rejection> Rejections { get; set; }
}
}