From bc64228f917b3800c489f400fe1c062959278c65 Mon Sep 17 00:00:00 2001 From: Cian Hannafin <1442396+CianH@users.noreply.github.com> Date: Mon, 2 Oct 2023 06:53:06 -0500 Subject: [PATCH] Fix Tags and People Filtering for NotContains (#2297) --- API/Extensions/QueryExtensions/Filtering/SeriesFilter.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/API/Extensions/QueryExtensions/Filtering/SeriesFilter.cs b/API/Extensions/QueryExtensions/Filtering/SeriesFilter.cs index 6b1472d6f..cca19a161 100644 --- a/API/Extensions/QueryExtensions/Filtering/SeriesFilter.cs +++ b/API/Extensions/QueryExtensions/Filtering/SeriesFilter.cs @@ -358,7 +358,7 @@ public static class SeriesFilter return queryable.Where(s => s.Metadata.Tags.Any(t => tags.Contains(t.Id))); case FilterComparison.NotEqual: case FilterComparison.NotContains: - return queryable.Where(s => s.Metadata.Tags.Any(t => !tags.Contains(t.Id))); + return queryable.Where(s => s.Metadata.Tags.All(t => !tags.Contains(t.Id))); case FilterComparison.MustContains: // Deconstruct and do a Union of a bunch of where statements since this doesn't translate var queries = new List>() @@ -397,7 +397,7 @@ public static class SeriesFilter return queryable.Where(s => s.Metadata.People.Any(p => people.Contains(p.Id))); case FilterComparison.NotEqual: case FilterComparison.NotContains: - return queryable.Where(s => s.Metadata.People.Any(t => !people.Contains(t.Id))); + return queryable.Where(s => s.Metadata.People.All(t => !people.Contains(t.Id))); case FilterComparison.MustContains: // Deconstruct and do a Union of a bunch of where statements since this doesn't translate var queries = new List>()