mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-12-22 08:45:23 +03:00
Fix Image loading (#14842)
This commit is contained in:
@@ -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);
|
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 = context.BaseItems.Where(e => tempQuery.Contains(e.Id));
|
||||||
dbQuery = ApplyOrder(dbQuery, filter);
|
|
||||||
}
|
}
|
||||||
else if (enableGroupByPresentationUniqueKey)
|
else if (enableGroupByPresentationUniqueKey)
|
||||||
{
|
{
|
||||||
var tempQuery = dbQuery.GroupBy(e => e.PresentationUniqueKey).Select(e => e.FirstOrDefault()).Select(e => e!.Id);
|
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 = context.BaseItems.Where(e => tempQuery.Contains(e.Id));
|
||||||
dbQuery = ApplyOrder(dbQuery, filter);
|
|
||||||
}
|
}
|
||||||
else if (filter.GroupBySeriesPresentationUniqueKey)
|
else if (filter.GroupBySeriesPresentationUniqueKey)
|
||||||
{
|
{
|
||||||
var tempQuery = dbQuery.GroupBy(e => e.SeriesPresentationUniqueKey).Select(e => e.FirstOrDefault()).Select(e => e!.Id);
|
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 = context.BaseItems.Where(e => tempQuery.Contains(e.Id));
|
||||||
dbQuery = ApplyOrder(dbQuery, filter);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
dbQuery = dbQuery.Distinct();
|
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)
|
dbQuery = dbQuery.Include(e => e.TrailerTypes)
|
||||||
.Include(e => e.Provider)
|
.Include(e => e.Provider)
|
||||||
.Include(e => e.LockedFields)
|
.Include(e => e.LockedFields)
|
||||||
@@ -411,9 +416,6 @@ public sealed class BaseItemRepository
|
|||||||
dbQuery = dbQuery.Include(e => e.Images);
|
dbQuery = dbQuery.Include(e => e.Images);
|
||||||
}
|
}
|
||||||
|
|
||||||
// dbQuery = dbQuery.Distinct();
|
|
||||||
// dbQuery = ApplyOrder(dbQuery, filter);
|
|
||||||
|
|
||||||
return dbQuery;
|
return dbQuery;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -440,7 +442,6 @@ public sealed class BaseItemRepository
|
|||||||
private IQueryable<BaseItemEntity> ApplyQueryFilter(IQueryable<BaseItemEntity> dbQuery, JellyfinDbContext context, InternalItemsQuery filter)
|
private IQueryable<BaseItemEntity> ApplyQueryFilter(IQueryable<BaseItemEntity> dbQuery, JellyfinDbContext context, InternalItemsQuery filter)
|
||||||
{
|
{
|
||||||
dbQuery = TranslateQuery(dbQuery, context, filter);
|
dbQuery = TranslateQuery(dbQuery, context, filter);
|
||||||
// dbQuery = ApplyOrder(dbQuery, filter);
|
|
||||||
dbQuery = ApplyGroupingFilter(context, dbQuery, filter);
|
dbQuery = ApplyGroupingFilter(context, dbQuery, filter);
|
||||||
dbQuery = ApplyQueryPaging(dbQuery, filter);
|
dbQuery = ApplyQueryPaging(dbQuery, filter);
|
||||||
return dbQuery;
|
return dbQuery;
|
||||||
@@ -1322,7 +1323,13 @@ public sealed class BaseItemRepository
|
|||||||
result.Items =
|
result.Items =
|
||||||
[
|
[
|
||||||
.. query
|
.. 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()
|
.AsEnumerable()
|
||||||
.Where(e => e is not null)
|
.Where(e => e is not null)
|
||||||
.Select<BaseItemEntity, (BaseItemDto, ItemCounts?)>(e =>
|
.Select<BaseItemEntity, (BaseItemDto, ItemCounts?)>(e =>
|
||||||
|
|||||||
Reference in New Issue
Block a user