Fix Image loading (#14842)

This commit is contained in:
JPVenson
2025-09-23 16:02:30 +03:00
committed by GitHub
parent 27047c35a4
commit 7bb68d8610

View File

@@ -381,26 +381,31 @@ public sealed class BaseItemRepository
{
var tempQuery = dbQuery.GroupBy(e => new { e.PresentationUniqueKey, e.SeriesPresentationUniqueKey }).Select(e => e.FirstOrDefault()).Select(e => e!.Id);
dbQuery = context.BaseItems.Where(e => tempQuery.Contains(e.Id));
dbQuery = ApplyOrder(dbQuery, filter);
}
else if (enableGroupByPresentationUniqueKey)
{
var tempQuery = dbQuery.GroupBy(e => e.PresentationUniqueKey).Select(e => e.FirstOrDefault()).Select(e => e!.Id);
dbQuery = context.BaseItems.Where(e => tempQuery.Contains(e.Id));
dbQuery = ApplyOrder(dbQuery, filter);
}
else if (filter.GroupBySeriesPresentationUniqueKey)
{
var tempQuery = dbQuery.GroupBy(e => e.SeriesPresentationUniqueKey).Select(e => e.FirstOrDefault()).Select(e => e!.Id);
dbQuery = context.BaseItems.Where(e => tempQuery.Contains(e.Id));
dbQuery = ApplyOrder(dbQuery, filter);
}
else
{
dbQuery = dbQuery.Distinct();
dbQuery = ApplyOrder(dbQuery, filter);
}
dbQuery = ApplyOrder(dbQuery, filter);
dbQuery = ApplyNavigations(dbQuery, filter);
return dbQuery;
}
private static IQueryable<BaseItemEntity> ApplyNavigations(IQueryable<BaseItemEntity> dbQuery, InternalItemsQuery filter)
{
dbQuery = dbQuery.Include(e => e.TrailerTypes)
.Include(e => e.Provider)
.Include(e => e.LockedFields)
@@ -411,9 +416,6 @@ public sealed class BaseItemRepository
dbQuery = dbQuery.Include(e => e.Images);
}
// dbQuery = dbQuery.Distinct();
// dbQuery = ApplyOrder(dbQuery, filter);
return dbQuery;
}
@@ -440,7 +442,6 @@ public sealed class BaseItemRepository
private IQueryable<BaseItemEntity> ApplyQueryFilter(IQueryable<BaseItemEntity> dbQuery, JellyfinDbContext context, InternalItemsQuery filter)
{
dbQuery = TranslateQuery(dbQuery, context, filter);
// dbQuery = ApplyOrder(dbQuery, filter);
dbQuery = ApplyGroupingFilter(context, dbQuery, filter);
dbQuery = ApplyQueryPaging(dbQuery, filter);
return dbQuery;
@@ -1322,7 +1323,13 @@ public sealed class BaseItemRepository
result.Items =
[
.. query
.Select(e => e.First())
.Select(e => e.AsQueryable()
.Include(e => e.TrailerTypes)
.Include(e => e.Provider)
.Include(e => e.LockedFields)
.Include(e => e.Images)
.AsSingleQuery()
.First())
.AsEnumerable()
.Where(e => e is not null)
.Select<BaseItemEntity, (BaseItemDto, ItemCounts?)>(e =>