Files
FrontOffice.BFF/src/FrontOffice.BFF.WebApi/Common/Services/CurrentUserService.cs

21 lines
899 B
C#

using System.Security.Claims;
using FrontOffice.BFF.Application.Common.Interfaces;
using Microsoft.AspNetCore.Http;
namespace FrontOffice.BFF.WebApi.Common.Services;
public class CurrentUserService : ICurrentUserService
{
private readonly IHttpContextAccessor _httpContextAccessor;
public CurrentUserService(IHttpContextAccessor httpContextAccessor)
{
_httpContextAccessor = httpContextAccessor;
}
public long? UserId => long?.Parse(_httpContextAccessor.HttpContext?.User?.FindFirstValue(ClaimTypes.NameIdentifier) ?? throw new InvalidOperationException());
public string? FirstName => _httpContextAccessor.HttpContext?.User?.FindFirstValue("FirstName");
public string? LastName => _httpContextAccessor.HttpContext?.User?.FindFirstValue("LastName");
public string? MobileNumber => _httpContextAccessor.HttpContext?.User?.FindFirstValue("MobileNumber");
}