mirror of
https://github.com/Sonarr/Sonarr
synced 2025-03-11 14:47:44 +00:00
Skip duplicate import list exclusions
This commit is contained in:
parent
d4bd7865f6
commit
9af2f137f4
2 changed files with 12 additions and 3 deletions
|
@ -21,7 +21,10 @@ namespace Sonarr.Api.V3.ImportLists
|
|||
{
|
||||
_importListExclusionService = importListExclusionService;
|
||||
|
||||
SharedValidator.RuleFor(c => c.TvdbId).NotEmpty().SetValidator(importListExclusionExistsValidator);
|
||||
SharedValidator.RuleFor(c => c.TvdbId).Cascade(CascadeMode.Stop)
|
||||
.NotEmpty()
|
||||
.SetValidator(importListExclusionExistsValidator);
|
||||
|
||||
SharedValidator.RuleFor(c => c.Title).NotEmpty();
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
using FluentValidation.Validators;
|
||||
using NzbDrone.Core.ImportLists.Exclusions;
|
||||
|
||||
namespace NzbDrone.Core.ImportLists.Exclusions
|
||||
namespace Sonarr.Api.V3.ImportLists
|
||||
{
|
||||
public class ImportListExclusionExistsValidator : PropertyValidator
|
||||
{
|
||||
|
@ -20,7 +21,12 @@ namespace NzbDrone.Core.ImportLists.Exclusions
|
|||
return true;
|
||||
}
|
||||
|
||||
return !_importListExclusionService.All().Exists(s => s.TvdbId == (int)context.PropertyValue);
|
||||
if (context.InstanceToValidate is not ImportListExclusionResource listExclusionResource)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return !_importListExclusionService.All().Exists(v => v.TvdbId == (int)context.PropertyValue && v.Id != listExclusionResource.Id);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue