forked from sanchezvem/PyroFetes
28 lines
1.3 KiB
C#
28 lines
1.3 KiB
C#
using API.DTO.Material.Response;
|
|
using FastEndpoints;
|
|
using Microsoft.EntityFrameworkCore;
|
|
|
|
namespace PyroFetes.Endpoints.Material;
|
|
|
|
public class GetAllMaterialsEndpoint(PyroFetesDbContext pyrofetesdbcontext) : EndpointWithoutRequest<List<GetMaterialDto>>
|
|
{
|
|
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<GetMaterialDto> 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
|
|
}
|
|
} |