mirror of
https://github.com/lidarr/lidarr.git
synced 2025-07-16 10:03:51 -07:00
Calendar and Missing join series in API
This commit is contained in:
parent
2e3863895c
commit
047e53179d
5 changed files with 64 additions and 6 deletions
|
@ -1,7 +1,9 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using NzbDrone.Api.Episodes;
|
||||
using NzbDrone.Api.Mapping;
|
||||
using NzbDrone.Common;
|
||||
using NzbDrone.Core.Tv;
|
||||
|
||||
namespace NzbDrone.Api.Calendar
|
||||
|
@ -9,11 +11,13 @@ namespace NzbDrone.Api.Calendar
|
|||
public class CalendarModule : NzbDroneRestModule<EpisodeResource>
|
||||
{
|
||||
private readonly IEpisodeService _episodeService;
|
||||
private readonly SeriesService _seriesService;
|
||||
|
||||
public CalendarModule(IEpisodeService episodeService)
|
||||
public CalendarModule(IEpisodeService episodeService, SeriesService seriesService)
|
||||
: base("/calendar")
|
||||
{
|
||||
_episodeService = episodeService;
|
||||
_seriesService = seriesService;
|
||||
|
||||
GetResourceAll = GetPaged;
|
||||
}
|
||||
|
@ -27,12 +31,15 @@ namespace NzbDrone.Api.Calendar
|
|||
var queryEnd = Request.Query.End;
|
||||
|
||||
if (queryStart.HasValue) start = DateTime.Parse(queryStart.Value);
|
||||
|
||||
if (queryEnd.HasValue) end = DateTime.Parse(queryEnd.Value);
|
||||
|
||||
var episodes = _episodeService.EpisodesBetweenDates(start, end);
|
||||
var episodeResources = ToListResource(() => episodes);
|
||||
|
||||
return ToListResource(() => episodes);
|
||||
var series = _seriesService.GetSeriesInList(episodeResources.SelectDistinct(e => e.SeriesId));
|
||||
episodeResources.Join(series, episode => episode.SeriesId, s => s.Id, episode => episode.Series);
|
||||
|
||||
return episodeResources;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue