mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-06-03 21:54:26 -04:00
Merge branch 'feature/EFUserData' of https://github.com/JPVenson/jellyfin into feature/EFUserData
This commit is contained in:
parent
4747edd635
commit
5fb4d6a169
@ -24,8 +24,5 @@
|
|||||||
"hostRequirements": {
|
"hostRequirements": {
|
||||||
"memory": "8gb",
|
"memory": "8gb",
|
||||||
"cpus": 4
|
"cpus": 4
|
||||||
},
|
}
|
||||||
"mounts": [
|
|
||||||
"source=/opt/docker/data/jellyfin/config10.9.11/metadata/,target=/workspaces/jellyfin/TestData/metadata,type=bind,consistency=cached"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -20,8 +20,6 @@ local.properties
|
|||||||
.settings/
|
.settings/
|
||||||
.loadpath
|
.loadpath
|
||||||
|
|
||||||
TestData
|
|
||||||
|
|
||||||
# External tool builders
|
# External tool builders
|
||||||
.externalToolBuilders/
|
.externalToolBuilders/
|
||||||
|
|
||||||
|
2
.vscode/launch.json
vendored
2
.vscode/launch.json
vendored
@ -35,7 +35,7 @@
|
|||||||
"request": "launch",
|
"request": "launch",
|
||||||
"preLaunchTask": "build",
|
"preLaunchTask": "build",
|
||||||
"program": "${workspaceFolder}/Jellyfin.Server/bin/Debug/net8.0/jellyfin.dll",
|
"program": "${workspaceFolder}/Jellyfin.Server/bin/Debug/net8.0/jellyfin.dll",
|
||||||
"args": ["--nowebclient", "--ffmpeg", "/usr/lib/jellyfin-ffmpeg/ffmpeg", "--datadir", "/workspaces/jellyfin/TestData"],
|
"args": ["--nowebclient", "--ffmpeg", "/usr/lib/jellyfin-ffmpeg/ffmpeg"],
|
||||||
"cwd": "${workspaceFolder}/Jellyfin.Server",
|
"cwd": "${workspaceFolder}/Jellyfin.Server",
|
||||||
"console": "internalConsole",
|
"console": "internalConsole",
|
||||||
"stopAtEntry": false,
|
"stopAtEntry": false,
|
||||||
|
@ -32,7 +32,6 @@ using Microsoft.Extensions.Logging;
|
|||||||
using BaseItemDto = MediaBrowser.Controller.Entities.BaseItem;
|
using BaseItemDto = MediaBrowser.Controller.Entities.BaseItem;
|
||||||
using BaseItemEntity = Jellyfin.Data.Entities.BaseItemEntity;
|
using BaseItemEntity = Jellyfin.Data.Entities.BaseItemEntity;
|
||||||
#pragma warning disable RS0030 // Do not use banned APIs
|
#pragma warning disable RS0030 // Do not use banned APIs
|
||||||
#pragma warning disable CA1307 // Specify StringComparison for clarity
|
|
||||||
|
|
||||||
namespace Jellyfin.Server.Implementations.Item;
|
namespace Jellyfin.Server.Implementations.Item;
|
||||||
|
|
||||||
@ -299,6 +298,26 @@ public sealed class BaseItemRepository(
|
|||||||
dbQuery = dbQuery.Include(e => e.Images);
|
dbQuery = dbQuery.Include(e => e.Images);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (filter.DtoOptions.ContainsField(ItemFields.MediaStreams))
|
||||||
|
{
|
||||||
|
dbQuery = dbQuery.Include(e => e.MediaStreams);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (filter.DtoOptions.ContainsField(ItemFields.Chapters))
|
||||||
|
{
|
||||||
|
dbQuery = dbQuery.Include(e => e.Chapters);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (filter.DtoOptions.ContainsField(ItemFields.People))
|
||||||
|
{
|
||||||
|
dbQuery = dbQuery.Include(e => e.Peoples);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (filter.DtoOptions.ContainsField(ItemFields.SeasonUserData))
|
||||||
|
{
|
||||||
|
dbQuery = dbQuery.Include(e => e.UserData);
|
||||||
|
}
|
||||||
|
|
||||||
return dbQuery;
|
return dbQuery;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -315,6 +334,7 @@ public sealed class BaseItemRepository(
|
|||||||
return dbQuery.Count();
|
return dbQuery.Count();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#pragma warning disable CA1307 // Specify StringComparison for clarity
|
||||||
private IQueryable<BaseItemEntity> TranslateQuery(
|
private IQueryable<BaseItemEntity> TranslateQuery(
|
||||||
IQueryable<BaseItemEntity> baseQuery,
|
IQueryable<BaseItemEntity> baseQuery,
|
||||||
JellyfinDbContext context,
|
JellyfinDbContext context,
|
||||||
@ -1343,9 +1363,7 @@ public sealed class BaseItemRepository(
|
|||||||
.Include(e => e.TrailerTypes)
|
.Include(e => e.TrailerTypes)
|
||||||
.Include(e => e.Provider)
|
.Include(e => e.Provider)
|
||||||
.Include(e => e.Images)
|
.Include(e => e.Images)
|
||||||
.Include(e => e.LockedFields)
|
.Include(e => e.LockedFields).AsNoTracking().AsSingleQuery().FirstOrDefault(e => e.Id == id);
|
||||||
.AsNoTracking().AsSingleQuery().FirstOrDefault(e => e.Id == id);
|
|
||||||
|
|
||||||
if (item is null)
|
if (item is null)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user