Split creators out of identity

This commit is contained in:
Jonathan Bourdon
2024-07-31 23:29:26 -04:00
parent bbcc7a8a33
commit 2b30e1a03c
105 changed files with 1497 additions and 7490 deletions

View File

@@ -50,7 +50,7 @@ public class ConfirmStripeTransactionCommandHandler(
{
public async Task<string> Handle(ConfirmStripeTransactionCommand request, CancellationToken cancellationToken)
{
var lastTransaction = await dbContext.UserTransactions.OrderBy(x => x.Created).LastAsync(cancellationToken);
var lastTransaction = await dbContext.UserTransactions.OrderBy(x => x.CreatedAt).LastAsync(cancellationToken);
var stripeConfirmation = stripeService.ValidateTransaction(request);
if (stripeConfirmation.Succeeded)

View File

@@ -2,30 +2,37 @@
using Hutopy.Domain.Entities;
namespace Hutopy.Application.Stripe.Commands;
public record CreateSessionCheckoutCommand : IRequest<string>
{
public required string CreatorId { get; init; }
public required Guid CreatorId { get; init; }
public required int Amount { get; init; }
public string Currency { get; init; } = "CAD";
public string TipMessage { get; init; } = string.Empty;
}
public class CreateSessionCheckoutCommandHandler(
IApplicationDbContext dbContext,
IApplicationDbContext dbContext,
IStripeService stripeService
)
)
: IRequestHandler<CreateSessionCheckoutCommand, string>
{
public async Task<string> Handle(CreateSessionCheckoutCommand request, CancellationToken cancellationToken)
{
var stripeSecret = await stripeService.CreateCheckoutSession(request.Amount, request.CreatorId, request.Currency);
var stripeSecret = await stripeService.CreateCheckoutSession(
request.Amount,
request.CreatorId.ToString(),
request.Currency);
// ReSharper disable once PossibleLossOfFraction
decimal priceInDollars = (request.Amount / 100);
var userTransaction = new UserTransaction
{
Currency = request.Currency, Amount = priceInDollars, TipMessage = request.TipMessage, ApplicationUserId = request.CreatorId
Currency = request.Currency,
Amount = priceInDollars,
TipMessage = request.TipMessage,
ApplicationUserId = request.CreatorId
};
await dbContext.UserTransactions.AddAsync(userTransaction, cancellationToken);