Add 'backend/' from commit '040cfd7a75423d4e6136e58a67b40579af4ee966'
git-subtree-dir: backend git-subtree-mainline:ab911955edgit-subtree-split:040cfd7a75
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
using Hutopy.Web.Features.Contents.Data;
|
||||
using Hutopy.Web.Features.Memberships.Events;
|
||||
|
||||
namespace Hutopy.Web.Features.Contents.EventHandlers;
|
||||
|
||||
[UsedImplicitly]
|
||||
public class StripeAccountConfiguredHandler(
|
||||
ILogger<StripeAccountConfiguredHandler> logger,
|
||||
IServiceScopeFactory scopeFactory)
|
||||
: IEventHandler<StripeAccountConfigured>
|
||||
{
|
||||
public async Task HandleAsync(
|
||||
StripeAccountConfigured eventModel,
|
||||
CancellationToken ct)
|
||||
{
|
||||
using var scope = scopeFactory.CreateScope();
|
||||
await using var dbContext = scope.ServiceProvider.GetRequiredService<ContentDbContext>();
|
||||
|
||||
var creator = await dbContext.FindAsync<Creator>(
|
||||
[eventModel.CreatorId],
|
||||
cancellationToken: ct);
|
||||
|
||||
if (creator is null)
|
||||
{
|
||||
logger.LogError(
|
||||
"Creator with id {CreatorId} was not found.",
|
||||
eventModel.CreatorId);
|
||||
return;
|
||||
}
|
||||
|
||||
creator.AcceptDonation = true;
|
||||
|
||||
var rows = await dbContext.SaveChangesAsync(ct);
|
||||
|
||||
if (rows is 0 or > 1)
|
||||
{
|
||||
logger.LogError(
|
||||
"An error occured while updating Creator with id {CreatorId}: rows:{Rows}",
|
||||
eventModel.CreatorId,
|
||||
rows);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user