Misc bunch of changes (#2815)
This commit is contained in:
parent
18792b7b56
commit
63c9bff32e
81 changed files with 4567 additions and 339 deletions
|
|
@ -9,6 +9,7 @@ using API.Entities;
|
|||
using API.Entities.Enums;
|
||||
using API.Extensions;
|
||||
using API.Extensions.QueryExtensions;
|
||||
using API.Services.Plus;
|
||||
using API.Services.Tasks.Scanner.Parser;
|
||||
using AutoMapper;
|
||||
using AutoMapper.QueryableExtensions;
|
||||
|
|
@ -33,6 +34,7 @@ public interface IStatisticService
|
|||
IEnumerable<StatCount<int>> GetWordsReadCountByYear(int userId = 0);
|
||||
Task UpdateServerStatistics();
|
||||
Task<long> TimeSpentReadingForUsersAsync(IList<int> userIds, IList<int> libraryIds);
|
||||
Task<KavitaPlusMetadataBreakdownDto> GetKavitaPlusMetadataBreakdown();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
@ -531,6 +533,29 @@ public class StatisticService : IStatisticService
|
|||
p.chapter.AvgHoursToRead * (p.progress.PagesRead / (1.0f * p.chapter.Pages))));
|
||||
}
|
||||
|
||||
public async Task<KavitaPlusMetadataBreakdownDto> GetKavitaPlusMetadataBreakdown()
|
||||
{
|
||||
// We need to count number of Series that have an external series record
|
||||
// Then count how many series are blacklisted
|
||||
// Then get total count of series that are Kavita+ eligible
|
||||
var plusLibraries = await _context.Library
|
||||
.Where(l => !ExternalMetadataService.NonEligibleLibraryTypes.Contains(l.Type))
|
||||
.Select(l => l.Id)
|
||||
.ToListAsync();
|
||||
|
||||
var countOfBlacklisted = await _context.SeriesBlacklist.CountAsync();
|
||||
var totalSeries = await _context.Series.Where(s => plusLibraries.Contains(s.LibraryId)).CountAsync();
|
||||
var seriesWithMetadata = await _context.ExternalSeriesMetadata.CountAsync();
|
||||
|
||||
return new KavitaPlusMetadataBreakdownDto()
|
||||
{
|
||||
TotalSeries = totalSeries,
|
||||
ErroredSeries = countOfBlacklisted,
|
||||
SeriesCompleted = seriesWithMetadata
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
public async Task<IEnumerable<TopReadDto>> GetTopUsers(int days)
|
||||
{
|
||||
var libraries = (await _unitOfWork.LibraryRepository.GetLibrariesAsync()).ToList();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue