using API.DTO.Movement.Response; using FastEndpoints; using Microsoft.EntityFrameworkCore; namespace PyroFetes.Endpoints.Movement; public class GetAllMovementsEndpoint(PyroFetesDbContext pyrofetesdbcontext) : EndpointWithoutRequest> { public override void Configure() //Configuration de l'endpoint { Get("/api/movements"); //Création d'un endpoint pour récupérer tous les mouvements grâce à la liste AllowAnonymous(); //Ignorer les requêtes non authentifiées } public override async Task HandleAsync(CancellationToken ct) { List responseDto = await pyrofetesdbcontext.Movements //Création d'une liste qui récupère tous les mouvements de la bdd .Select(a => new GetMovementDto //Sélectionne dans la liste chaque mouvement { Id = a.Id, //Récupère l'id Date = a.Date, //Récupère la date Start = a.Start, //Récupère start Arrival = a.Arrival, //Récupère arrival Quantity = a.Quantity //Récupère quantity } ).ToListAsync(ct); //Retourne la liste de mouvement await Send.OkAsync(responseDto, ct); //Envoie de la réponse réussite 200 au client } }