A lot more lidarr work, i'm done for the day wow... !wip #2313

This commit is contained in:
Jamie 2018-08-24 23:02:40 +01:00
parent 207c60b7f8
commit 3750243f11
19 changed files with 174 additions and 94 deletions

View file

@ -11,13 +11,15 @@ namespace Ombi.Core.Rule.Rules.Search
{
public class ExistingRule : BaseSearchRule, IRules<SearchViewModel>
{
public ExistingRule(IMovieRequestRepository movie, ITvRequestRepository tv)
public ExistingRule(IMovieRequestRepository movie, ITvRequestRepository tv, IMusicRequestRepository music)
{
Movie = movie;
Tv = tv;
Music = music;
}
private IMovieRequestRepository Movie { get; }
private IMusicRequestRepository Music { get; }
private ITvRequestRepository Tv { get; }
public async Task<RuleResult> Execute(SearchViewModel obj)
@ -37,7 +39,7 @@ namespace Ombi.Core.Rule.Rules.Search
}
return Success();
}
else if (obj.Type == RequestType.Album)
if (obj.Type == RequestType.TvShow)
{
//var tvRequests = Tv.GetRequest(obj.Id);
//if (tvRequests != null) // Do we already have a request for this?
@ -50,7 +52,7 @@ namespace Ombi.Core.Rule.Rules.Search
// return Task.FromResult(Success());
//}
var request = (SearchTvShowViewModel) obj;
var request = (SearchTvShowViewModel)obj;
var tvRequests = Tv.GetRequest(obj.Id);
if (tvRequests != null) // Do we already have a request for this?
{
@ -96,6 +98,21 @@ namespace Ombi.Core.Rule.Rules.Search
return Success();
}
if (obj.Type == RequestType.Album)
{
var album = (SearchAlbumViewModel) obj;
var albumRequest = await Music.GetRequestAsync(album.ForeignAlbumId);
if (albumRequest != null) // Do we already have a request for this?
{
obj.Requested = true;
obj.RequestId = albumRequest.Id;
obj.Approved = albumRequest.Approved;
obj.Available = albumRequest.Available;
return Success();
}
return Success();
}
return Success();
}
}