using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Purrse.Core.DTOs; using Purrse.Core.Interfaces.Services; using System.Security.Claims; namespace Purrse.Api.Controllers; [Authorize] [ApiController] [Route("api/[controller]")] public class DashboardController : ControllerBase { private readonly IDashboardService _dashboardService; private Guid UserId => Guid.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!); public DashboardController(IDashboardService dashboardService) => _dashboardService = dashboardService; [HttpGet] public async Task> Get() => Ok(await _dashboardService.GetDashboardAsync(UserId)); }