* update trash layout * cleanup block and yaml playout editors * spacing cleanup * rework multi-collection editor * rework deco template editor * rework template editor
28 lines
901 B
C#
28 lines
901 B
C#
using ErsatzTV.Core;
|
|
using ErsatzTV.Infrastructure.Data;
|
|
using Microsoft.EntityFrameworkCore;
|
|
|
|
namespace ErsatzTV.Application.Scheduling;
|
|
|
|
public class UpdateDefaultDecoHandler(IDbContextFactory<TvContext> dbContextFactory)
|
|
: IRequestHandler<UpdateDefaultDeco, Option<BaseError>>
|
|
{
|
|
public async Task<Option<BaseError>> Handle(UpdateDefaultDeco request, CancellationToken cancellationToken)
|
|
{
|
|
try
|
|
{
|
|
await using TvContext dbContext = await dbContextFactory.CreateDbContextAsync(cancellationToken);
|
|
|
|
await dbContext.Playouts
|
|
.Where(p => p.Id == request.PlayoutId)
|
|
.ExecuteUpdateAsync(u => u.SetProperty(p => p.DecoId, p => request.DecoId), cancellationToken);
|
|
|
|
return Option<BaseError>.None;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return BaseError.New(ex.ToString());
|
|
}
|
|
}
|
|
}
|