using API.DTO.Movement.Request; using API.DTO.Movement.Response; using FastEndpoints; namespace PyroFetes.Endpoints.Movement; public class UpdateMovementEndpoint(PyroFetesDbContext pyrofetesdbcontext) : Endpoint { public override void Configure() //Configuration de l'endpoint { Put("/api/movements"); //Création d'un endpoint qui modifie le mouvement grâce à son id AllowAnonymous(); //Ignorer les requêtes non authentifiées } public override async Task HandleAsync(UpdateMovementDto req, CancellationToken ct) { Models.Movement movement = new() { Date = req.Date, Start = req.Start, Arrival = req.Arrival, Quantity = req.Quantity }; pyrofetesdbcontext.Add(movement); //Modification du mouvement await pyrofetesdbcontext.SaveChangesAsync(ct); //Sauvegarde les changements effectués dans la bdd GetMovementDto response = new() //Constuire l'objet de réponse pour retourner les informations du mouvement { Id = req.Id, Date = req.Date, Start = req.Start, Arrival = req.Arrival, Quantity = req.Quantity }; await Send.OkAsync(response, ct); //Envoie de la réponse réussite 200 au client } }