ソースを参照

Replace UserId with User in NextUpQuery

Bond_009 1 年間 前
コミット
a90316b4d9

+ 3 - 15
Emby.Server.Implementations/TV/TVSeriesManager.cs

@@ -19,14 +19,12 @@ namespace Emby.Server.Implementations.TV
 {
 {
     public class TVSeriesManager : ITVSeriesManager
     public class TVSeriesManager : ITVSeriesManager
     {
     {
-        private readonly IUserManager _userManager;
         private readonly IUserDataManager _userDataManager;
         private readonly IUserDataManager _userDataManager;
         private readonly ILibraryManager _libraryManager;
         private readonly ILibraryManager _libraryManager;
         private readonly IServerConfigurationManager _configurationManager;
         private readonly IServerConfigurationManager _configurationManager;
 
 
-        public TVSeriesManager(IUserManager userManager, IUserDataManager userDataManager, ILibraryManager libraryManager, IServerConfigurationManager configurationManager)
+        public TVSeriesManager(IUserDataManager userDataManager, ILibraryManager libraryManager, IServerConfigurationManager configurationManager)
         {
         {
-            _userManager = userManager;
             _userDataManager = userDataManager;
             _userDataManager = userDataManager;
             _libraryManager = libraryManager;
             _libraryManager = libraryManager;
             _configurationManager = configurationManager;
             _configurationManager = configurationManager;
@@ -34,12 +32,7 @@ namespace Emby.Server.Implementations.TV
 
 
         public QueryResult<BaseItem> GetNextUp(NextUpQuery query, DtoOptions options)
         public QueryResult<BaseItem> GetNextUp(NextUpQuery query, DtoOptions options)
         {
         {
-            var user = _userManager.GetUserById(query.UserId);
-
-            if (user is null)
-            {
-                throw new ArgumentException("User not found");
-            }
+            var user = query.User;
 
 
             string? presentationUniqueKey = null;
             string? presentationUniqueKey = null;
             if (!query.SeriesId.IsNullOrEmpty())
             if (!query.SeriesId.IsNullOrEmpty())
@@ -83,12 +76,7 @@ namespace Emby.Server.Implementations.TV
 
 
         public QueryResult<BaseItem> GetNextUp(NextUpQuery request, BaseItem[] parentsFolders, DtoOptions options)
         public QueryResult<BaseItem> GetNextUp(NextUpQuery request, BaseItem[] parentsFolders, DtoOptions options)
         {
         {
-            var user = _userManager.GetUserById(request.UserId);
-
-            if (user is null)
-            {
-                throw new ArgumentException("User not found");
-            }
+            var user = request.User;
 
 
             string? presentationUniqueKey = null;
             string? presentationUniqueKey = null;
             int? limit = request.Limit;
             int? limit = request.Limit;

+ 7 - 6
Jellyfin.Api/Controllers/TvShowsController.cs

@@ -90,7 +90,12 @@ public class TvShowsController : BaseJellyfinApiController
         [FromQuery] bool enableResumable = true,
         [FromQuery] bool enableResumable = true,
         [FromQuery] bool enableRewatching = false)
         [FromQuery] bool enableRewatching = false)
     {
     {
-        userId = RequestHelpers.GetUserId(User, userId);
+        var user = _userManager.GetUserById(RequestHelpers.GetUserId(User, userId));
+        if (user is null)
+        {
+            return NotFound();
+        }
+
         var options = new DtoOptions { Fields = fields }
         var options = new DtoOptions { Fields = fields }
             .AddClientFields(User)
             .AddClientFields(User)
             .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes);
             .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes);
@@ -102,7 +107,7 @@ public class TvShowsController : BaseJellyfinApiController
                 ParentId = parentId,
                 ParentId = parentId,
                 SeriesId = seriesId,
                 SeriesId = seriesId,
                 StartIndex = startIndex,
                 StartIndex = startIndex,
-                UserId = userId.Value,
+                User = user,
                 EnableTotalRecordCount = enableTotalRecordCount,
                 EnableTotalRecordCount = enableTotalRecordCount,
                 DisableFirstEpisode = disableFirstEpisode,
                 DisableFirstEpisode = disableFirstEpisode,
                 NextUpDateCutoff = nextUpDateCutoff ?? DateTime.MinValue,
                 NextUpDateCutoff = nextUpDateCutoff ?? DateTime.MinValue,
@@ -111,10 +116,6 @@ public class TvShowsController : BaseJellyfinApiController
             },
             },
             options);
             options);
 
 
-        var user = userId.IsNullOrEmpty()
-            ? null
-            : _userManager.GetUserById(userId.Value);
-
         var returnItems = _dtoService.GetBaseItemDtos(result.Items, options, user);
         var returnItems = _dtoService.GetBaseItemDtos(result.Items, options, user);
 
 
         return new QueryResult<BaseItemDto>(
         return new QueryResult<BaseItemDto>(

+ 1 - 1
MediaBrowser.Controller/Entities/UserViewBuilder.cs

@@ -337,7 +337,7 @@ namespace MediaBrowser.Controller.Entities
                 {
                 {
                     Limit = query.Limit,
                     Limit = query.Limit,
                     StartIndex = query.StartIndex,
                     StartIndex = query.StartIndex,
-                    UserId = query.User.Id
+                    User = query.User
                 },
                 },
                 parentFolders,
                 parentFolders,
                 query.DtoOptions);
                 query.DtoOptions);

+ 4 - 3
MediaBrowser.Model/Querying/NextUpQuery.cs

@@ -2,6 +2,7 @@
 #pragma warning disable CS1591
 #pragma warning disable CS1591
 
 
 using System;
 using System;
+using Jellyfin.Data.Entities;
 using MediaBrowser.Model.Entities;
 using MediaBrowser.Model.Entities;
 
 
 namespace MediaBrowser.Model.Querying
 namespace MediaBrowser.Model.Querying
@@ -19,10 +20,10 @@ namespace MediaBrowser.Model.Querying
         }
         }
 
 
         /// <summary>
         /// <summary>
-        /// Gets or sets the user id.
+        /// Gets or sets the user.
         /// </summary>
         /// </summary>
-        /// <value>The user id.</value>
-        public Guid UserId { get; set; }
+        /// <value>The user.</value>
+        public User User { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// Gets or sets the parent identifier.
         /// Gets or sets the parent identifier.