public async Task <TacheReadDto> Ajouter(int locataire, int tache) { LiaisonCreateDto liaison = new LiaisonCreateDto() { LocataireId = locataire, TacheId = tache }; return(await Ajouter(liaison)); }
public async Task <TacheReadDto> Ajouter(LiaisonCreateDto liaison) { try { return(await ApiController.Post <LiaisonCreateDto, TacheReadDto>(liaison)); } catch (Exception ex) { throw new Exception("Impossible d'ajouter la liason : \n" + ex.Message); } }
public ActionResult <LiaisonReadDto> Create(LiaisonCreateDto liaisonCreateDto) { LiaisonTacheLocataire liaison = _mapper.Map <LiaisonTacheLocataire>(liaisonCreateDto); // trouve le model à utiliser _repository.Create(liaison); // crée la command en ram _repository.SaveChanges(); // sauvegarde les changements dans la bdd LiaisonReadDto liaisonReadDto = _mapper.Map <LiaisonReadDto>(liaison); liaisonReadDto.Locataire = new LocataireRepo(_repository.Context).GetById(liaisonReadDto.LocataireId); liaisonReadDto.Tache = new TacheRepo(_repository.Context).GetById(liaisonReadDto.TacheId); //return CreatedAtRoute(nameof(GetById), new { Id = commandReadDto.Id }, commandReadDto); return(Ok(liaisonReadDto)); }
/** * <summary>Effectue les actions pour modifier la tâche dans la bdd</summary> * <returns>Retourne une string expliquant ce qu'il s'est passé</returns> */ public async Task <string> OnSendClicked() { Tache.Tache.LocataireId = Tache.SelectedLocataire.Locataire.Id; // validation des données var result = await new TacheValidator().ValidateAsync(Tache.Tache); if (!result.IsValid) { return($"{result.Errors[0].ErrorMessage}"); } // converti le dto de lecture en update var tacheUpdate = Mapping.Map(Tache.Tache, new TacheUpdateDto()); // modifie la tâche await _taches.UpdateAsync(tacheUpdate); // modifie les liaisons await _liaisons.DeleteLiaisonsFromTacheAsync(tacheUpdate.Id); foreach (var orderedLocataire in _reoderedLocataires) { if (!Tache.Locataires[orderedLocataire].Inclu) { continue; } var liaison = new LiaisonCreateDto { LocataireId = Tache.Locataires[orderedLocataire].Locataire.Id, TacheId = tacheUpdate.Id }; await _liaisons.PostAsync(liaison); } return($"La tâche {Tache.Tache.Nom} a bien été modifiée"); }
public async Task <LiaisonReadDto> PostAsync(LiaisonCreateDto liaison) { return(await _liaisonsApi.Post <LiaisonCreateDto, LiaisonReadDto>(liaison)); }