Merge remote-tracking branch 'origin/Devsights-changes'
This commit is contained in:
@@ -1,16 +1,19 @@
|
||||
using Hutopy.Web.Features.Users.Handlers.Models;
|
||||
using Hutopy.Web.Features.Memberships.Data;
|
||||
using Hutopy.Web.Features.Memberships.Infrastructure;
|
||||
|
||||
namespace Hutopy.Web.Features.Users.Handlers;
|
||||
|
||||
[PublicAPI]
|
||||
public class GetCurrentUserQueryHandler(
|
||||
IdentityService identityService)
|
||||
IdentityService identityService,
|
||||
MembershipDbContext membershipDbContext)
|
||||
: EndpointWithoutRequest<UserDto>
|
||||
{
|
||||
public override void Configure()
|
||||
{
|
||||
Get("/api/users/profile");
|
||||
Options(o => o.WithTags("Users"));
|
||||
Options(o => o.WithTags("Memberships"));
|
||||
}
|
||||
|
||||
public override async Task HandleAsync(
|
||||
@@ -26,6 +29,12 @@ public class GetCurrentUserQueryHandler(
|
||||
|
||||
var roles = await identityService.GetCurrentUserRolesAsync();
|
||||
|
||||
var stripeId = await membershipDbContext
|
||||
.Creators
|
||||
.Where(c => c.Id == userModel.Id)
|
||||
.Select(c => c.StripeAccountId)
|
||||
.FirstOrDefaultAsync(cancellationToken);
|
||||
|
||||
await SendOkAsync(
|
||||
new UserDto
|
||||
{
|
||||
@@ -40,6 +49,7 @@ public class GetCurrentUserQueryHandler(
|
||||
BirthDate = userModel.BirthDate,
|
||||
Address = userModel.Address,
|
||||
UserRoles = roles,
|
||||
StripeId = stripeId ?? string.Empty
|
||||
},
|
||||
cancellationToken);
|
||||
}
|
||||
|
||||
@@ -13,4 +13,5 @@ public class UserDto
|
||||
public string? PhoneNumber { get; init; }
|
||||
public DateTime? BirthDate { get; init; }
|
||||
public string? Address { get; init; }
|
||||
public string? StripeId { get; init; }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user