feat: retornar WorkshopResponseDTO no GetById e GetAllAsync

This commit is contained in:
Sheila
2025-09-10 13:24:26 -03:00
parent e780f5c99c
commit d8b67fc281

View File

@@ -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<IActionResult> 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
);
}
}