using MessageService.WebApi.Application.Conversation; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using System.Security.Claims; namespace MessageService.WebApi.Controllers.Conversation { [Route("api/[controller]/[action]")] [Authorize] [ApiController] public class ConversationController : ControllerBase { private readonly ConversationService service; public ConversationController(ConversationService service) { this.service = service; } [HttpGet] public async Task List() { var userId = User.FindFirstValue(ClaimTypes.NameIdentifier); return Ok(await service.GetByOwnerIdAsync(Guid.Parse(userId))); } [HttpGet] public async Task Get([FromQuery]Guid id) { var userId = User.FindFirstValue(ClaimTypes.NameIdentifier); return Ok(await service.GetByIdAsync(id, Guid.Parse(userId))); } } }