From d8b67fc2817a401a9470ea9e10fa8ee88570d40d Mon Sep 17 00:00:00 2001 From: Sheila Date: Wed, 10 Sep 2025 13:24:26 -0300 Subject: [PATCH] feat: retornar WorkshopResponseDTO no GetById e GetAllAsync --- Controllers/WorkshopsController.cs | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/Controllers/WorkshopsController.cs b/Controllers/WorkshopsController.cs index ef4b995..ef12789 100644 --- a/Controllers/WorkshopsController.cs +++ b/Controllers/WorkshopsController.cs @@ -21,19 +21,20 @@ public class WorkshopsController : ControllerBase var workshops = await _repo.GetAllAsync(from, to, q, ct); if (!workshops.Any()) return NoContent(); - - return Ok(workshops); + + var workshopDTOs = workshops.Select(w => ConvertToWorkshopResponseDTO(w)).ToList(); + return Ok(workshopDTOs); } [HttpGet("{id:guid}")] public async Task GetById(Guid id, CancellationToken ct) { - var result = await _repo.GetByIdAsync(id, ct); + var workshop = await _repo.GetByIdAsync(id, ct); - if (result == null) + if (workshop == null) return NoContent(); - return Ok(result); + return Ok(ConvertToWorkshopResponseDTO(workshop)); } [HttpPost] @@ -75,4 +76,18 @@ public class WorkshopsController : ControllerBase return NotFound(); } + + private WorkshopResponseDTO ConvertToWorkshopResponseDTO(Workshop workshop) + { + return new WorkshopResponseDTO( + workshop.Id, + workshop.Title, + workshop.Description, + workshop.StartAt, + workshop.EndAt, + workshop.Location, + workshop.Capacity, + workshop.IsOnline + ); + } }