Browse Source

fix mysql show queries (#1406)

* ignore artwork when sync is disabled

* fix delete playout

* fix some mysql queries
pull/1407/head
Jason Dove 2 years ago committed by GitHub
parent
commit
27504e42bc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      ErsatzTV.Application/Playouts/Commands/DeletePlayoutHandler.cs
  2. 4
      ErsatzTV.Infrastructure/Data/Repositories/EmbyTelevisionRepository.cs
  3. 4
      ErsatzTV.Infrastructure/Data/Repositories/JellyfinTelevisionRepository.cs
  4. 12
      ErsatzTV/Controllers/ArtworkController.cs

1
ErsatzTV.Application/Playouts/Commands/DeletePlayoutHandler.cs

@ -32,7 +32,6 @@ public class DeletePlayoutHandler : IRequestHandler<DeletePlayout, Either<BaseEr @@ -32,7 +32,6 @@ public class DeletePlayoutHandler : IRequestHandler<DeletePlayout, Either<BaseEr
await using TvContext dbContext = await _dbContextFactory.CreateDbContextAsync(cancellationToken);
Option<Playout> maybePlayout = await dbContext.Playouts
.AsNoTracking()
.Include(p => p.Channel)
.SelectOneAsync(p => p.Id, p => p.Id == request.PlayoutId);

4
ErsatzTV.Infrastructure/Data/Repositories/EmbyTelevisionRepository.cs

@ -29,7 +29,7 @@ public class EmbyTelevisionRepository : IEmbyTelevisionRepository @@ -29,7 +29,7 @@ public class EmbyTelevisionRepository : IEmbyTelevisionRepository
await using TvContext dbContext = await _dbContextFactory.CreateDbContextAsync();
return await dbContext.Connection.QueryAsync<EmbyItemEtag>(
@"SELECT ItemId, Etag, MI.State FROM EmbyShow
INNER JOIN Show S on EmbyShow.Id = S.Id
INNER JOIN `Show` S on EmbyShow.Id = S.Id
INNER JOIN MediaItem MI on S.Id = MI.Id
INNER JOIN LibraryPath LP on MI.LibraryPathId = LP.Id
WHERE LP.LibraryId = @LibraryId",
@ -45,7 +45,7 @@ public class EmbyTelevisionRepository : IEmbyTelevisionRepository @@ -45,7 +45,7 @@ public class EmbyTelevisionRepository : IEmbyTelevisionRepository
INNER JOIN Season S on EmbySeason.Id = S.Id
INNER JOIN MediaItem MI on S.Id = MI.Id
INNER JOIN LibraryPath LP on MI.LibraryPathId = LP.Id
INNER JOIN Show S2 on S.ShowId = S2.Id
INNER JOIN `Show` S2 on S.ShowId = S2.Id
INNER JOIN EmbyShow JS on S2.Id = JS.Id
WHERE LP.LibraryId = @LibraryId AND JS.ItemId = @ShowItemId",
new { LibraryId = library.Id, ShowItemId = show.ItemId })

4
ErsatzTV.Infrastructure/Data/Repositories/JellyfinTelevisionRepository.cs

@ -29,7 +29,7 @@ public class JellyfinTelevisionRepository : IJellyfinTelevisionRepository @@ -29,7 +29,7 @@ public class JellyfinTelevisionRepository : IJellyfinTelevisionRepository
await using TvContext dbContext = await _dbContextFactory.CreateDbContextAsync();
return await dbContext.Connection.QueryAsync<JellyfinItemEtag>(
@"SELECT ItemId, Etag, MI.State FROM JellyfinShow
INNER JOIN Show S on JellyfinShow.Id = S.Id
INNER JOIN `Show` S on JellyfinShow.Id = S.Id
INNER JOIN MediaItem MI on S.Id = MI.Id
INNER JOIN LibraryPath LP on MI.LibraryPathId = LP.Id
WHERE LP.LibraryId = @LibraryId",
@ -45,7 +45,7 @@ public class JellyfinTelevisionRepository : IJellyfinTelevisionRepository @@ -45,7 +45,7 @@ public class JellyfinTelevisionRepository : IJellyfinTelevisionRepository
INNER JOIN Season S on JellyfinSeason.Id = S.Id
INNER JOIN MediaItem MI on S.Id = MI.Id
INNER JOIN LibraryPath LP on MI.LibraryPathId = LP.Id
INNER JOIN Show S2 on S.ShowId = S2.Id
INNER JOIN `Show` S2 on S.ShowId = S2.Id
INNER JOIN JellyfinShow JS on S2.Id = JS.Id
WHERE LP.LibraryId = @LibraryId AND JS.ItemId = @ShowItemId",
new { LibraryId = library.Id, ShowItemId = show.ItemId })

12
ErsatzTV/Controllers/ArtworkController.cs

@ -137,6 +137,10 @@ public class ArtworkController : ControllerBase @@ -137,6 +137,10 @@ public class ArtworkController : ControllerBase
string transcodePath,
CancellationToken cancellationToken)
{
#if DEBUG_NO_SYNC
return NotFound();
#endif
Either<BaseError, PlexConnectionParametersViewModel> connectionParameters =
await _mediator.Send(new GetPlexConnectionParameters(plexMediaSourceId), cancellationToken);
@ -165,6 +169,10 @@ public class ArtworkController : ControllerBase @@ -165,6 +169,10 @@ public class ArtworkController : ControllerBase
private async Task<IActionResult> GetJellyfinArtwork(string path, CancellationToken cancellationToken)
{
#if DEBUG_NO_SYNC
return NotFound();
#endif
Either<BaseError, JellyfinConnectionParametersViewModel> connectionParameters =
await _mediator.Send(new GetJellyfinConnectionParameters(), cancellationToken);
@ -192,6 +200,10 @@ public class ArtworkController : ControllerBase @@ -192,6 +200,10 @@ public class ArtworkController : ControllerBase
private async Task<IActionResult> GetEmbyArtwork(string path, CancellationToken cancellationToken)
{
#if DEBUG_NO_SYNC
return NotFound();
#endif
Either<BaseError, EmbyConnectionParametersViewModel> connectionParameters =
await _mediator.Send(new GetEmbyConnectionParameters(), cancellationToken);

Loading…
Cancel
Save