diff --git a/API/DTOs/SeriesDto.cs b/API/DTOs/SeriesDto.cs index 8359f60b9..bf9fc8a45 100644 --- a/API/DTOs/SeriesDto.cs +++ b/API/DTOs/SeriesDto.cs @@ -21,14 +21,5 @@ /// Review from logged in user. Calculated at API-time. /// public string UserReview { get; set; } - - /// - /// DO NOT Use. Used as a hack for - /// - public int LibraryId { get; set; } - /// - /// DO NOT Use. Used as a hack for - /// - public int AppUserId { get; set; } } } \ No newline at end of file diff --git a/API/Data/SeriesRepository.cs b/API/Data/SeriesRepository.cs index 738e4eb22..5e0b55d29 100644 --- a/API/Data/SeriesRepository.cs +++ b/API/Data/SeriesRepository.cs @@ -67,176 +67,6 @@ namespace API.Data public async Task> GetSeriesDtoForLibraryIdAsync(int libraryId, int userId, UserParams userParams) { var sw = Stopwatch.StartNew(); - - - // - // // var query = QueryableExtensions.LeftJoin(_context.Series - // // .Join(_context.AppUserProgresses, series => series.Id, progress => progress.SeriesId, - // // (series, progress) => - // // new { - // // series.LibraryId, - // // series.Id, - // // series.Created, - // // series.Name, - // // series.Pages, - // // series.Summary, - // // series.CoverImage, - // // series.OriginalName, - // // series.SortName, - // // progress.PagesRead - // // }), _context.AppUserRating, series => series.Id, rating => rating.SeriesId, - // // (series, rating) => - // // new { - // // series.LibraryId, - // // series.Id, - // // series.Created, - // // series.Name, - // // series.Pages, - // // series.Summary, - // // series.CoverImage, - // // series.OriginalName, - // // series.SortName, - // // series.PagesRead, - // // rating.Review, - // // rating.Rating, - // // rating.AppUserId - // // }) - // // .Where(s => s.LibraryId == libraryId && s.AppUserId == userId) - // // .OrderBy(s => s.SortName) - // // .Select(arg => new SeriesDto() - // // { - // // PagesRead = arg.PagesRead, - // // UserRating = arg.Rating, - // // UserReview = arg.Review, - // // Summary = arg.Summary, - // // Name = arg.Name, - // // OriginalName = arg.OriginalName, - // // SortName = arg.SortName, - // // Id = arg.Id, - // // Pages = arg.Pages, - // // CoverImage = arg.CoverImage - // // }) - // // //.ProjectTo(_mapper.ConfigurationProvider) - // // .AsNoTracking(); - // - // - // // var query2 = _context.Series - // // .Join(_context.AppUserProgresses, series => series.Id, progress => progress.SeriesId, - // // (series, progress) => new { series, progress} - // // /*new - // // { - // // series.LibraryId, - // // series.Id, - // // series.Created, - // // series.Name, - // // series.Pages, - // // series.Summary, - // // series.CoverImage, - // // series.OriginalName, - // // series.SortName, - // // progress.PagesRead - // // }*/) - // // .LeftJoin(_context.AppUserRating, series => series.series.Id, rating => rating.SeriesId, - // // (series, rating) => new {series.series, series.progress, rating} - // // /* - // // * new - // // { - // // series.LibraryId, - // // series.Id, - // // series.Name, - // // series.Pages, - // // series.Summary, - // // series.CoverImage, - // // series.OriginalName, - // // series.SortName, - // // series.PagesRead, - // // rating.Review, - // // rating.Rating, - // // rating.AppUserId - // // } - // // */) - // // // .Select(arg => new SeriesDto() - // // // { - // // // // Where is failing because this select changes what we select - // // // PagesRead = arg.PagesRead, - // // // UserRating = arg.Rating, - // // // UserReview = arg.Review, - // // // Summary = arg.Summary, - // // // Name = arg.Name, - // // // OriginalName = arg.OriginalName, - // // // SortName = arg.SortName, - // // // Id = arg.Id, - // // // Pages = arg.Pages, - // // // CoverImage = arg.CoverImage, - // // // }) - // .Select(arg => new SeriesDto() - // { - // // Where is failing because this select changes what we select - // LibraryId = arg.series.LibraryId, - // PagesRead = arg.progress.PagesRead, - // UserRating = arg.rating.Rating, - // UserReview = arg.rating.Review, - // Summary = arg.series.Summary, - // Name = arg.series.Name, - // OriginalName = arg.series.OriginalName, - // SortName = arg.series.SortName, - // Id = arg.series.Id, - // Pages = arg.series.Pages, - // CoverImage = arg.series.CoverImage, - // }) - // // .Where(s => s.LibraryId == libraryId && s.AppUserId == userId) - // // .OrderBy(s => s.SortName) - // // .AsNoTracking(); - // - // var query = _context.Series - // .FromSqlRaw(@"select S.*, Rating AS UserRating, Review AS UserReview from Series AS S - // INNER JOIN AppUserProgresses AS AP ON AP.SeriesId = S.Id AND AP.AppUserId = {0} - // LEFT OUTER JOIN AppUserRating AUR on AUR.SeriesId = S.Id AND AUR.AppUserId = {0} - // WHERE (S.LibraryId = {1}) AND (AP.AppUserId = {0}) - // ORDER BY S.SortName", userId, libraryId) - // .Select(series => new SeriesDto() - // { - // // Where is failing because this select changes what we select - // PagesRead = series.PagesRead, - // UserRating = series.UserRating, - // UserReview = arg.rating.Review, - // Summary = arg.series.Summary, - // Name = arg.series.Name, - // OriginalName = arg.series.OriginalName, - // SortName = arg.series.SortName, - // Id = arg.series.Id, - // Pages = arg.series.Pages, - // CoverImage = arg.series.CoverImage, - // }) - // .AsNoTracking(); - - - - /* - * select S.*, Rating AS UserRating, Review AS UserReview from Series AS S - INNER JOIN AppUserProgresses AS AP ON AP.SeriesId = S.Id AND AP.AppUserId = 1 - LEFT OUTER JOIN AppUserRating AUR on AUR.SeriesId = S.Id AND AUR.AppUserId = 1; - */ - - - //await AddSeriesModifiers(userId, series); - // var userProgress = await _context.AppUserProgresses - // .Where(p => p.AppUserId == userId && series.Select(s => s.Id).Contains(p.SeriesId) ) - // .ToListAsync(); - // - // var userRatings = await _context.AppUserRating - // .Where(r => r.AppUserId == userId && series.Select(s => s.Id).Contains(r.SeriesId)) - // .ToListAsync(); - // - // foreach (var s in series) - // { - // s.PagesRead = userProgress.Where(p => p.SeriesId == s.Id).Sum(p => p.PagesRead); - // var rating = userRatings.SingleOrDefault(r => r.SeriesId == s.Id); - // if (rating == null) continue; - // s.UserRating = rating.Rating; - // s.UserReview = rating.Review; - // } - var query = _context.Series .Where(s => s.LibraryId == libraryId) .OrderBy(s => s.SortName)