using API.DTO.Material.Response; using FastEndpoints; using Microsoft.EntityFrameworkCore; namespace PyroFetes.Endpoints.Material; public class GetAllMaterialsEndpoint(PyroFetesDbContext pyrofetesdbcontext) : EndpointWithoutRequest> { public override void Configure() //Configuration de l'endpoint { Get("Api/materials"); //Création d'un endpoint pour récupérer tous les matériaux grâce à la liste AllowAnonymous(); //Ignorer les requêtes non authentifiées } public override async Task HandleAsync(CancellationToken ct) { List responseDto = await pyrofetesdbcontext.Materials //Création d'une liste qui récupère tous les matériaux de la bdd .Select(a => new GetMaterialDto //Sélectionne dans la liste chaque matériel { Id = a.Id, //Récupère l'id Label = a.Name, //Récupère le label Quantity = a.Quantity, //Récupère la quantité WarehouseId = a.WarehouseId, //Récupère l'id de l'entrepot } ).ToListAsync(ct); //Retourne la liste du matériel await Send.OkAsync(responseDto, ct); //Envoie de la réponse réussite 200 au client } }