using FastEndpoints; using Microsoft.EntityFrameworkCore; using PyroFetes.DTO.Staff.Response; namespace PyroFetes.Endpoints.Staff; public class GetAllStaffsEndpoint(PyroFetesDbContext pyroFetesDbContext) : EndpointWithoutRequest> { public override void Configure() { Get("/staffs"); AllowAnonymous(); } public override async Task HandleAsync(CancellationToken ct) { List staff = await pyroFetesDbContext.Staffs .Include(x => x.ExperienceLevel) .Select(x => new GetStaffDto() { Id = x.Id, FirstName = x.FirstName, LastName = x.LastName, Profession = x.Profession, Email = x.Email, F4T2NumberApproval = x.F4T2NumberApproval, F4T2ExpirationDate = x.F4T2ExpirationDate, ExperienceLevel = x.ExperienceLevel.Label }).ToListAsync(ct); await Send.OkAsync(staff, ct); } }